David Hildenbrand <david@xxxxxxxxxx> writes:
On 13.11.23 11:45, Baolin Wang wrote:
Currently, the file pages already support large folio, and supporting for
anonymous pages is also under discussion[1]. Moreover, the numa balancing
code are converted to use a folio by previous thread[2], and the migrate_pages
function also already supports the large folio migration.
So now I did not see any reason to continue restricting NUMA
balancing for
large folio.
I recall John wanted to look into that. CCing him.
I'll note that the "head page mapcount" heuristic to detect sharers will
now strike on the PTE path and make us believe that a large folios is
exclusive, although it isn't.
Even 4k folio may be shared by multiple processes/threads. So, numa
balancing uses a multi-stage node selection algorithm (mostly
implemented in should_numa_migrate_memory()) to identify shared folios.
I think that the algorithm needs to be adjusted for PTE mapped large
folio for shared folios.
And, as a performance improvement patch, some performance data needs to
be provided. And, the effect of shared folio detection needs to be
tested too