Re: [RFC PATCH v5 00/10] mm: Hot page tracking and promotion infrastructure

From: Bharata B Rao

Date: Tue Feb 24 2026 - 06:55:42 EST


On 23-Feb-26 8:32 PM, Gregory Price wrote:
> 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.

For pghot-default, with target_nid alternating between the available
toptier nodes 0 and 1, the numbers catch up with pghot-precise and base
NUMAB2 case as seen below:
================================
Time in seconds 4337.98
Mop/s total 90217.86

pgpromote_success 42170085
pgpromote_candidate 0
pgpromote_candidate_nrl 42171963
pgdemote_kswapd 0
numa_pte_updates 42338538
numa_hint_faults 42185662
================================

Regards,
Bharata.