Re: Gigantic memory leak in linux-2.6.[789]!
From: Bill Davidsen
Date: Sun Oct 24 2004 - 09:06:35 EST
David Lang wrote:
This puts the cost of zeroing out and freeing memory on new programs
that are allocating memory, which tends to scatter the work over time
rather then having a large burst of work kick in when a program exits
(it seems odd to think that if a large computer exits the machine would
be pegged for a little while while it frees up and zeros the memory, not
exactly what you would expect when you killed a program :-)
Any this partially explains why response is bad every morning when
starting daily operation. Instead of using the totally unproductive time
in the idle loop to zero and free those pages when it would not hurt
response, the kernel saves that work for the next time the memory is
needed lest it do work which might not be needed before the system is
shutdown.
With all the work Nick, Ingo,Con and others are putting into latency and
responsiveness, I don't understand why anyone thinks this is desirable
behavior. The idle loop is the perfect place to perform things like
this, to convert non-productive cycles into performing tasks which will
directly improve response and performance when the task MUST be done.
Things like zeroing these pages, perhaps defragmenting memory, anything
which can be done in small parts.
It would seem that doing things like this in small inefficient steps in
idle moments is still better than doing them efficiently while a process
is waiting for the resources being freed.
--
bill davidsen <davidsen@xxxxxxx>
CTO TMR Associates, Inc
Doing interesting things with small computers since 1979
-
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/