Request For Comments and Upstream Plan ====================================== This patch series is for getting comments, and hence having [RFC] tag. We're looking for comments about topics including but not limited to - misunderstood backgrounds, - confusing explanations, - better evaluation setup suggestion, - request of details such as evaluation reproduction steps, and - whether this makes sense at all. Hopefully we will share this patch series as WIP future plan at DAMON updates and plans session at LSFMMBPF next week and get more comments. Unless serious concerns are found, we will upstream the new DAMOS quota goal metrics part of this patch series first. That's because the changes are small but can be useful user-space driven memory tiering and even other NUMA-based DAMOS schemes. Upstreaming of the memory tiering module part of this RFC patch series will be done more later. The part is for showing how the module can be implemented, and far from its complete form. Especially, it is assuming only two tiers and asking users to set the address range of the nodes. Those should be automated in the final version for upstreaming. Patch Sequence ============== The first patch (patch 1) implements the two new quota goal metrics on core layer and expose it to DAMON core kernel API. The second and third ones (patches 2 and 3) further link it to DAMON sysfs interface. The final and fourth one (patch 4) implements a specific self-tuned DAMON-based memory tiering solution in an incomplete but easy to understand form as a kernel module under samples/damon/ directory. References ========== [1] https://lore.kernel.org/20231112195602.61525-1-sj@xxxxxxxxxx/ [2] https://lore.kernel.org/20250303221726.484227-1-sj@xxxxxxxxxx SeongJae Park (4): mm/damon/core: introduce two damos quota goal metrics for NUMA memory utilization and free space ratios mm/damon/sysfs-schemes: implement file for quota goal nid parameter mm/damon/sysfs-schemes: connect damos_quota_goal nid with core layer samples/damon: implement a DAMON module for memory tiering include/linux/damon.h | 6 ++ mm/damon/core.c | 27 +++++++ mm/damon/sysfs-schemes.c | 40 +++++++++- samples/damon/Kconfig | 13 +++ samples/damon/Makefile | 1 + samples/damon/mtier.c | 167 +++++++++++++++++++++++++++++++++++++++ 6 files changed, 253 insertions(+), 1 deletion(-) create mode 100644 samples/damon/mtier.c base-commit: a95a9039462356c73ba28bcd2a1622311dafdab8 -- 2.39.5