[Techtalk] memory management and OOM killer

mandi mandi at linuxchick.org
Thu May 15 13:35:46 UTC 2008


So, my understanding of the oom-killer is that the kernel has a pocket of
memory in the low address space that it uses for its own internal indexes and
tables, and oom-killer is sensitive to how much space is left in that
allocation as well as overall system memory.

It's likely that you'll never get good resource utilization on a 16GB system
with 32bit linux; upgrading to 64bit will increase the addressing space
available to the kernel for its use and most likely you'll never hear from
oom-killer again.  You can also try a hugemem kernel; these are built with a
different allocation scheme so that the kernel memory can be larger.  It may
not be large enough to prevent oom-killer from being a jerk though; i've seen
it go both ways.

there's a pretty good summary of a couple additional options here if upgrading
or using a hugemem isn't an option:
http://linux.derkeiler.com/Mailing-Lists/RedHat/2007-08/msg00062.html

hope that helps, 
--mandi

On Thu, 15 May 2008 08:00:00 -0500, Kay Nettle wrote
> Does anyone know a good reference that would explain how memory
> management is done in 2.6 kernel or am I doomed to have to read the
> kernel code?  We got 10 quad core boxes with 16 Gigs of memory, to
> let out students remotely login to.  It's running a 32 bit OS and
> the OOM killer keeps wacking processes when there is still free
> memory and lots of swap left.  I've set vm.overcommit_memory to 2,
> but the OOM killer still kills processes, not as aggressively as
> before, but I don't want it killing anything.  I'd rather the machine
> trash.
> 
> Kay
> _______________________________________________
> Techtalk mailing list
> Techtalk at linuxchix.org
> http://mailman.linuxchix.org/mailman/listinfo/techtalk



More information about the Techtalk mailing list