On Mon, Jun 13, 2016 at 12:26:13PM -0500, Christoph Lameter wrote: > On Thu, 9 Jun 2016, Mel Gorman wrote: > > > VM statistic counters for reclaim decisions are zone-based. If the kernel > > is to reclaim on a per-node basis then we need to track per-node statistics > > but there is no infrastructure for that. The most notable change is that > > There is node_page_state() so the value of any counter per node is already > available. Note that some of the counters (NUMA_xx) for example do not > make much sense as per zone counters and are effectively used as per node > counters. > > So the main effect you are looking for is to have the counters stored in > the per node structure as opposed to the per zone struct in order to > avoid the summing?
Yes. > Doing so duplicates a large amount of code it seems. > Also yes. I considered macro magic to cover it but it turned into a major mess. They could always be summed so it would be a minor performance dent and a heavier cache footprint. > If you do this then also move over certain counters that have more of a > per node use from per zone to per node. Like the NUMA_xxx counters. > As the NUMA counters are consumed by userspace, I worried that it would break some tools. If the rest of the series gets solidified then I will do it as a single patch on top so it can be reverted if necessary relatively easily. -- Mel Gorman SUSE Labs