Re: [RFC PATCH v5 00/10] mm: Hot page tracking and promotion infrastructure
From: Gregory Price
Date: Mon Feb 23 2026 - 10:06:24 EST
On Mon, Feb 23, 2026 at 07:57:39PM +0530, Bharata B Rao wrote:
>
> Time in seconds - Lower is better
> Mop/s total - Higher is better
> =====================================================================================
> Base Base pghot-default
> pghot-precise
> NUMAB0 NUMAB2 NUMAB2 NUMAB2
> =====================================================================================
> Time in seconds 7349.86 4422.50 6219.71 4113.56
> Mop/s total 53247.66 88493.630 62923.030 95139.810
>
> pgpromote_success 0 42181834 248503390 41955718
> pgpromote_candidate 0 0 577086192 0
> pgpromote_candidate_nrl 0 42181834 29410329 41956171
> pgdemote_kswapd 0 0 216489010 0
> numa_pte_updates 0 42252749 607470975 42037882
> numa_hint_faults 0 42183772 606540729 41968150
> =====================================================================================
>
> - In the base case, the benchmark numbers improve significantly due to hot page
> promotion.
> - Though the benchmark runs for hundreds of minutes, the pages get promoted
> within the first few mins.
> - pghot-precise is able to match the base case numbers.
> - The benchmark suffers in pghot-default case due to promotion being limited
> to the default NID (0) only. This leads to excessive PTE updates, hint faults,
> demotion and promotion churn.
Wow, this really seems to justify the extra memory usage.
Is it possible for you to change pghot-default to move the page to a
random (or round-robin) node on the top tier instead of NID(0) by default?
At least then pghot-default would be correct 1/N % of the time (in theory).
I'd be curious to see how close it gets to NUMAB2 with that.
~Gregory