less aggressive contigmalloc ?

Warner Losh imp at bsdimp.com
Thu Aug 23 21:54:24 UTC 2012


On Aug 23, 2012, at 11:45 AM, Luigi Rizzo wrote:

> On Thu, Aug 23, 2012 at 12:08:40PM -0500, Alan Cox wrote:
> ...
>>> yes i do see that.
>>> 
>>> Maybe less aggressive with M_NOWAIT but still kills processes.
>> 
>> Are you compiling world with MALLOC_PRODUCTION?  The latest version of 
> 
> whatever the default is. But:

The default is OFF, so jemalloc uses oodles and oodles more memory than before.  On any system less than 256MB that I've tried to boot on lately I've had to define MALLOC_PRODUCTION (which, btw, should be named WITH_MALLOC_DEBUG instead to conform to our naming scheme for options, but I digress).  With MALLOC_PRODUCTION defined, I boot on 32MB systems with about 8MB of RAM to spare when I get to the login prompt.

Warner

>> jemalloc uses significantly more memory when debugging options are 
>> enabled.  This first came up in a thread titled "10-CURRENT and swap 
>> usage" back in June.
>> 
>> Even at its most aggressive, M_WAITOK, contigmalloc() does not directly 
>> kill processes.  If process death coincides with the use of 
>> contigmalloc(), then it is simply the result of earlier, successful 
>> contigmalloc() calls, or for that matter any other physical memory 
>> allocation calls, having depleted the pool of free pages to the point 
>> that the page daemon runs and invokes vm_pageout_oom().
> 
> does it mean that those previous allocations relied on memory overbooking ?
> Is there a way to avoid that, then ?
> 
> cheers
> luigi
> _______________________________________________
> freebsd-current at freebsd.org mailing list
> http://lists.freebsd.org/mailman/listinfo/freebsd-current
> To unsubscribe, send any mail to "freebsd-current-unsubscribe at freebsd.org"



More information about the freebsd-current mailing list