On 22.07.2013 19:01, Johannes Weiner wrote: > Hi Zlatko, > > On Mon, Jul 22, 2013 at 06:48:52PM +0200, Zlatko Calusic wrote: >> On 19.07.2013 22:55, Johannes Weiner wrote: >>> The way the page allocator interacts with kswapd creates aging >>> imbalances, where the amount of time a userspace page gets in memory >>> under reclaim pressure is dependent on which zone, which node the >>> allocator took the page frame from. >>> >>> #1 fixes missed kswapd wakeups on NUMA systems, which lead to some >>> nodes falling behind for a full reclaim cycle relative to the other >>> nodes in the system >>> >>> #3 fixes an interaction where kswapd and a continuous stream of page >>> allocations keep the preferred zone of a task between the high and >>> low watermark (allocations succeed + kswapd does not go to sleep) >>> indefinitely, completely underutilizing the lower zones and >>> thrashing on the preferred zone >>> >>> These patches are the aging fairness part of the thrash-detection >>> based file LRU balancing. Andrea recommended to submit them >>> separately as they are bugfixes in their own right. >>> >> >> I have the patch applied and under testing. So far, so good. It >> looks like it could finally fix the bug that I was chasing few >> months ago (nicely described in your bullet #3). But, few more days >> of testing will be needed before I can reach a quality verdict. > > I should have remembered that you talked about this problem... Thanks > a lot for testing! > > May I ask for the zone layout of your test machine(s)? I.e. how many > nodes if NUMA, how big Normal and DMA32 (on Node 0) are. > I have been reading about NUMA hw for at least a decade, but I guess another one will pass before I actually see one. ;) Find /proc/zoneinfo attached. If your patchset fails my case, then nr_{in,}active_file in Normal zone will drop close to zero in a matter of days. If it fixes this particular imbalance, and I have faith it will, then those two counters will stay in relative balance with nr_{in,}active_anon in the same zone. I also applied Konstantin's excellent lru-milestones-timestamps-and-ages, and graphing of interesting numbers on top of that, which is why I already have faith in your patchset. I can see much better balance between zones already. But, let's give it some more time... -- Zlatko