Re: [LSF/MM/BPF TOPIC] Unifying sources of page temperature information - what info is actually wanted?

From: Matthew Wilcox
Date: Fri Feb 07 2025 - 04:51:26 EST


On Wed, Feb 05, 2025 at 11:54:05AM +0530, Bharata B Rao wrote:
> Here is a compilation of available temperature sources and how the
> hot/access data is consumed by different subsystems:
>
> PA-Physical address available
> VA-Virtual address available
> AA-Access time available
> NA-accessing Node info available
>
> I have left the slot blank for those which I am not sure about.
> ==================================================
> Temperature PA VA AA NA
> source
> ==================================================
> PROT_NONE faults Y Y Y Y
> --------------------------------------------------
> folio_mark_accessed() Y Y Y
> --------------------------------------------------
> PTE A bit Y Y N N
> --------------------------------------------------
> Platform hints Y Y Y Y
> (AMD IBS)
> --------------------------------------------------
> Device hints Y
> (CXL HMU)
> ==================================================
>
> And here is an attempt to compile how different subsystems
> use the above data:
> ==============================================================
> Source Subsystem Consumption
> ==============================================================
> PROT_NONE faults NUMAB NUMAB=1 locality based
> via process pgtable balancing
> walk NUMAB=2 hot page
> promotion
> ==============================================================
> folio_mark_accessed() FS/filemap/GUP LRU list activation
> ==============================================================
> PTE A bit via Reclaim:LRU LRU list activation,
> rmap walk deactivation/demotion
> ==============================================================
> PTE A bit via Reclaim:MGLRU LRU list activation,
> rmap walk and process deactivation/demotion
> pgtable walk
> ==============================================================
> PTE A bit via DAMON LRU activation,
> rmap walk hot page promotion,
> demotion etc
> ==============================================================
> Platform hints NUMAB NUMAB=1 Locality based
> (AMD IBS) balancing and
> NUMAB=2 hot page
> promotion
> ==============================================================
> Device hints NUMAB NUMAB=2 hot page
> promotion
> ==============================================================
> The last two are listed as possibilities.
>
> Feel free to correct/clarify and add more.

There's PG_young / PG_idle as well.