des at linpro
Jul 30, 2007, 1:16 AM
Post #3 of 8
rad_kam at tlen.pl writes:
Create worker thread failed 12 Cannot allocate memory
[In reply to]
> i686 GNU/Linux....
The i386 has a 4 GB address space, 1 GB of which is normally reserved
for the kernel, leaving 3 GB for applications (or even less depending on
the data segment size limit, 'ulimit -d'). A big chunk of that goes to
the program text (including libraries) and bss, and the stacks (one for
each thread). The cache file can be up to 2 GB (Varnish will refuse to
use more than that on a 32-bit system), and malloc gets whatever is
left, which probably isn't enough if you use a large cache file.
> i have also set the ulimit value as 500000...
*which* ulimit value?
> and worker proces 2048 but still the same error
Increasing the number of worker threads will only make things worse.
You should decrease it to the expected number of concurrent clients.
Senior Software Developer
Linpro AS - www.linpro.no