[$] NUMA rebalancing on tiered-memory systems

Post Syndicated from original https://lwn.net/Articles/893024/

The classic NUMA architecture is built around nodes, each of which contains
a set of CPUs and some local memory; all nodes are more-or-less equal.
Recently, though, “tiered-memory” NUMA systems have begun to appear; these
include CPU-less nodes that contain persistent memory rather than (faster,
but more expensive) DRAM. One possible use for that
memory is to hold less-frequently-used pages rather than forcing them out
to a backing-store device. There is an interesting problem that emerges
from this use case, though: how does the kernel manage the movement of
pages between faster and slower memory? Several recent patch sets have
taken differing approaches to the problem of rebalancing memory on these
systems.