linux-c-programming.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Markus Rechberger <mrechberger@gmail.com>
Cc: Lawrence Bowie <thesource@ldb-jab.org>,
	linux-c-programming@vger.kernel.org
Subject: Re: Problem with Native POSIX Thread Library
Date: Sun, 16 Oct 2005 21:07:57 +0200	[thread overview]
Message-ID: <d9def9db0510161207m5b5b4535ycdfd06a7ae4cabd@mail.gmail.com> (raw)
In-Reply-To: <20051016175326.70266.qmail@web53704.mail.yahoo.com>

Hi,

check your ulimits

$ ulimit -a
core file size        (blocks, -c) 0
data seg size         (kbytes, -d) unlimited
file size             (blocks, -f) unlimited
max locked memory     (kbytes, -l) unlimited
max memory size       (kbytes, -m) unlimited
open files                    (-n) 1024
pipe size          (512 bytes, -p) 8
stack size            (kbytes, -s) 8192
cpu time             (seconds, -t) unlimited
max user processes            (-u) unlimited
virtual memory        (kbytes, -v) unlimited

lower the stack size and try again (read on more about it if you set
it to low globally you could get into trouble with your system)

Markus

On 10/16/05, Mikado <mikado4vn@yahoo.com> wrote:
> Thank Lawrence, I've got this error message:
>
> Error creating thread 382: Cannot allocate memory
> Error creating thread 383: Cannot allocate memory
> Error creating thread 384: Cannot allocate memory
> Error creating thread 385: Cannot allocate memory
> Error creating thread 386: Cannot allocate memory
> Error creating thread 387: Cannot allocate memory
> ................
>
> It always begins at thread 382. My RAM is 256+128 MB, isn't it enough???? hm... still in trouble
> now.
>
>
> --- Lawrence Bowie <thesource@ldb-jab.org> wrote:
>
> > These modifications below might shed some light on your issue.
> >
> > LDB
> >
> > ------------------- CODE ---------------------------
> > #include <stdio.h>
> > #include <unistd.h>
> > #include <pthread.h>
> > #include <errno.h>
> > #include <string.h>
> >
> > #define MAX 10000
> >
> > void print_msg(void * msg);
> > int main(void);
> >
> > void print_msg(void * arg)
> > {
> >     pthread_detach(pthread_self());
> >     sleep(10);
> >     pthread_exit(NULL);
> > }
> >
> > int main(void)
> > {
> >     pthread_t thread_id[MAX];
> >     int i, ret, err;
> >
> >     for (i = 0; i < MAX; i++)
> >     {
> >           ret = pthread_create(&thread_id[i], NULL, (void *)&print_msg,
> > (void *)0);
> >
> >           if (ret) {
> >               err = errno;
> >               printf("Error creating thread %d: %s\n", i,strerror(err));
> >           }
> >      }
> >
> >     pthread_exit(NULL);
> > }
> > ----------------------- CODE -------------------------------
> >
> > Mikado wrote:
> > > Hi all,
> > >
> > > I'm using 2.6 kernel with NPTL support in kernel and libc but I cannot create more than 400
> > > threads with NPTL. In the past, I used 2.4 kernel and I can create about 1500 threads. I dont
> > want
> > > to use traditional LinuxThread because I dont like the way it pthread_detach() (it "clone"s
> > too
> > > many processes). Reading some documents about NPTL, I thought it can creates many threads but
> > it's
> > > not true in my case. I need somebody's help. Thanks in adv.
> > >
> > > System info:
> > > - Kernel: 2.6.13.4
> > > - RAM: 256 + 128
> > > - CPU: PentiumIII 937.939MHz
> > >
> > > My code is below:
> > >
> > > ===== CODE =====
> > > #include <stdio.h>
> > > #include <unistd.h>
> > > #include <pthread.h>
> > >
> > > #define MAX 10000
> > >
> > > void print_msg(void * msg);
> > > int main(void);
> > >
> > > void print_msg(void * arg)
> > > {
> > >         pthread_detach(pthread_self());
> > >         sleep(10);
> > >         pthread_exit(NULL);
> > > }
> > >
> > > int main(void)
> > > {
> > >         pthread_t thread_id[MAX];
> > >         int i, ret;
> > >
> > >         for (i = 0; i < MAX; i++)
> > >         {
> > >                 ret = pthread_create(&thread_id[i], NULL, (void *)&print_msg, (void *)0);
> > >                 if (ret)
> > >                         printf("Error creating thread %d\n", i);
> > >         }
> > >
> > >         pthread_exit(NULL);
> > > }
> > > ===== CODE =====
> > >
> > >
> > >
> > >
> > > __________________________________
> > > Start your day with Yahoo! - Make it your home page!
> > > http://www.yahoo.com/r/hs
> > > -
> > > To unsubscribe from this list: send the line "unsubscribe linux-c-programming" in
> > > the body of a message to majordomo@vger.kernel.org
> > > More majordomo info at  http://vger.kernel.org/majordomo-info.html
> > >
> > -
> > To unsubscribe from this list: send the line "unsubscribe linux-c-programming" in
> > the body of a message to majordomo@vger.kernel.org
> > More majordomo info at  http://vger.kernel.org/majordomo-info.html
> >
>
>
>
>
> __________________________________
> Yahoo! Music Unlimited
> Access over 1 million songs. Try it free.
> http://music.yahoo.com/unlimited/
> -
> To unsubscribe from this list: send the line "unsubscribe linux-c-programming" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html
>


--
Markus Rechberger

  reply	other threads:[~2005-10-16 19:07 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2005-10-16 10:58 Problem with Native POSIX Thread Library Mikado
2005-10-16 13:43 ` Lawrence Bowie
2005-10-16 17:53   ` Mikado
2005-10-16 19:07     ` Markus Rechberger [this message]
2005-10-17  4:09       ` Mikado
2005-10-17  8:19         ` Markus Rechberger
2005-10-16 13:49 ` Lawrence Bowie

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=d9def9db0510161207m5b5b4535ycdfd06a7ae4cabd@mail.gmail.com \
    --to=mrechberger@gmail.com \
    --cc=linux-c-programming@vger.kernel.org \
    --cc=thesource@ldb-jab.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).