Skip to main content.
home | support | download

Back to List Archive

Re: more out of memory fun

From: Brad Miele <bmiele(at)not-real.ipnstock.com>
Date: Fri Oct 20 2006 - 20:43:09 GMT
:(

switching off -e in my incremental build leaves me with the same results 
as when it is on, namely, indexing just hangs forever at the sorting 
property phase. I am assuming that it hangs forever, i will leave it there 
over night and see if it ever does finish. i am also going to try all of 
this with 2.4.3 mow that i have the memory issue out of the way.

so i am left with somewhere between 200K and 700K files, things get wonky. 
I don't really know where to go from here with regards to incremental. I 
am willing to try anything though, so any and all ideas will be seriously 
entertained, even if they involve santaria or voodoo or whatever.

Brad
---------------------
Brad Miele
VP Technology
IPNStock.com
866 476 7862 x902
bmiele@ipnstock.com

On Fri, 20 Oct 2006, Brad Miele wrote:

>
> it's a 32bit machine :\
>
> and the little c scripty returns Max malloc 5 * 100 MB, so that would fit
> with the kernel definede 512 limit that Dave alluded to. Since this
> machine is not in production yet, i can fiddle with it, and so i may try
> adjusting MAXDSIZ via loader.conf and see what that does for me.
>
> thanks,
>
> Brad
> ---------------------
> Brad Miele
> VP Technology
> IPNStock.com
> 866 476 7862 x902
> bmiele@ipnstock.com
>
> On Fri, 20 Oct 2006, Peter Karman wrote:
>
>>
>>
>> David L Norris scribbled on 10/19/06 9:44 PM:
>>
>>> But if your OS and CPU are not both 64-bit (and swish-e also isn't
>>> 64-bit) there's probably a hard limit of 2 GB per process.
>>>
>>
>> Brad, Mr Intrepid Hero, is this box a 64-bit machine? Is that version of FreeBSD
>> a 64-bit OS? I suspect Dave might be on to something here. I see this issue (2g
>> ram limit) frequently right now with one of our db servers, where it's stuck on
>> a 32bit machine and runs out of memory even though there's plenty of ram available.
>>
>> Here's a little C program you can use to test the mem limit on your machine:
>>
>> ---------------- snip here ------8<------------------------
>> #include <stdio.h>
>> #include <stdlib.h>
>>
>> int main ( void )
>> {
>>     size_t siz = 100 * 1024 * 1024 ;
>>     size_t idx = 1 ;
>>     void *ptr ;
>>
>>     for (;;)
>>     {
>>         ptr = malloc ( siz * idx );
>>         if ( ! ptr )
>>             break ;
>>         free ( ptr );
>>         idx ++ ;
>>     }
>>     printf ( "Max malloc %d * 100 MB \n", idx - 1 );
>>     return ( 0 );
>> }
>> ---------------- snip here ------8<------------------------
>>
>> just compile it like:
>>
>>  cc -i checkmem.c -o checkmem
>>
>> and run:
>>
>>  ./checkmem
>>
>> that'll tell you how much memory a single process can allocate on your machine.
>>
>> --
>> Peter Karman  .  http://peknet.com/  .  peter(at)not-real.peknet.com
>>
>>
>
>
Received on Fri Oct 20 13:43:10 2006