gabriel rosenkoetter on 24 Nov 2003 10:31:03 -0500 |
On Mon, Nov 24, 2003 at 10:24:48AM -0500, Tobias DiPasquale wrote: > have the highest score (as far as the OOM killer is concerned). It has > little to do with the amount of virtual memory on the system, and more > to do with whether or not certain parts of the kernel can allocate > memory when it needs it. So, uh, why would the kernel be allocating memory at all? Why doesn't it wire memory at boot that it's going to probably going to need, as most other Unix-like OSes do? Sure, it may need to go wire some more... but if Walt's seeing a repeatable situation where the kernel wants more memory right when he wants all the memory to go to his process, it would seem that there's probably a way to make the kernel preallocate a bit more. Walt, I haven't looked at the Linux VM code since maybe 2.2 something, but I've got a feeling that your request for more memory is precisely what's causing the kernel to go allocate more. It's probably seeing that it's about to hit the edge of the addressable memory for which it's got active data structures and is likely trying to *double* the number of data structures available to track memory. There should be a way in the process of kernel configuration to tell Linux to go ahead and horf a few hundred megabytes for VM data structures off the bat (that is, to make sure it's going to be able to address all of your VM, including all of your swap, without reallocating anything). -- gabriel rosenkoetter gr@eclipsed.net Attachment:
pgpWFkLyhvXMk.pgp
|
|