Re: [PATCH] Separate global/perzone inactive/free shortage
From: Marcelo Tosatti <hidden>
Date: 2001-07-17 01:33:39
Also in:
lkml
On Mon, 16 Jul 2001, Kanoj Sarcar wrote:
quoted hunk ↗ jump to hunk
--- Marcelo Tosatti <marcelo@conectiva.com.br> wrote:quoted
Hi, As well known, the VM does not make a distiction between global and per-zone shortages when trying to free memory. That means if only a given memory zone is under shortage, the kernel will scan pages from all zones. The following patch (against 2.4.6-ac2), changes the kernel behaviour to avoid freeing pages from zones which do not have an inactive and/or free shortage. Now I'm able to run memory hogs allocating 4GB of memory (on 4GB machine) without getting real long hangs on my ssh session. (which used to happen on stock -ac2 due to exhaustion of DMA pages for networking). Comments ? Dirk, Can you please try the patch and tell us if it fixes your problem ?Just a quick note. A per-zone page reclamation method like this was what I had advocated and sent patches to Linus for in the 2.3.43 time frame or so. I think later performance work ripped out that work. I guess the problem is that a lot of the different page reclamation schemes first of all do not know how to reclaim pages for a specific zone, and secondly have to go thru a lot of work before they discover the page they are trying to reclaim does not belong to the shortage zone, hence wasting a lot of work/cputime. try_to_swap_out is a good example, which can be solved by rmaps.
Oh sure, rmaps would fix the performance problem caused by this. But I we dont have rmaps right now, and I doubt we want rmaps for 2.4. Besides, the performance degradation of doing the perzone aging/deactivation this way is nothing compared to _not_ doing the thing on a perzone basis at all, IMHO. -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@kvack.org. For more info on Linux MM, see: http://www.linux-mm.org/