RE: Kernel doesn't free Cached Memory

From: Al Boldi
Date: Tue Jul 26 2005 - 00:28:59 EST


Bill Davidsen wrote: {
Al Boldi wrote:
> Dick Johnson wrote: {
>
>>On Fri, 2005-07-22 at 08:27 -0300, Vinicius wrote:
>>[...]
>>
>>> I have a server with 2 Pentium 4 HT processors and 32 GB of RAM,
>>>this server runs lots of applications that consume lots of memory to.
>>>When I stop this applications, the kernel doesn't free memory (the
>>>memory still in use) and the server cache lots of memory (~27GB).
>>>When I start this applications, the kernel sends "Out of Memory"
>>>messages and kill some random applications.
>
>
> ...you might even need to turn memory over-commit off:
> echo "0" > /proc/sys/vm/overcommit_memory
> }
>
> That's in 2.4. In 2.6 it's:
> echo "2" > /proc/sys/vm/overcommit_memory

RHEL3 *is* a 2.4 kernel.
>
> But the kernel doesn't honor no-overcommit in either version, i.e. it
still
> overcommits/pages-out loaded/running procs, thus invoking OOM!
>
> Is there a way to make the kernel strictly honor the no-overcommit
request?
>

Don't have swap?
}

Turn off swap and things get worse!

Paolo Ornati wrote:{
Bill Davidsen <davidsen@xxxxxxx> wrote:
> And IMHO Linux is *way* too willing to evicy clean pages of my
> programs to use as disk buffer, so that when system memory is full I
> pay the overhead of TWO disk i/o's, one to finally write the data to
> the disk and one to read my program back in. If free software is
> about choice, I wish there was more in the area of how memory is
> used.

isn't this tuned enough by "/proc/sys/vm/swappiness" ?
}

Swappiness tunes but does not inhibit overcommit!

So the question remains:
Why Is there no way to make the kernel _strictly_ honor the
no-overcommit request?

--
Al

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/