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/