[RFC PATCH 0/5] mm/damon: support multiple goal-based quota tuning algorithms
From: SeongJae Park <sj@kernel.org>
Date: 2026-02-12 06:23:27
Also in:
damon, linux-mm, lkml
Aim-oriented DAMOS quota atuo-tuning uses a single tuning algorithm. The algorithm is designed to find a non-zero quota that should be consistently kept for achieving the aimed goal for long term. In other words, the algorithm assumes the goal will be under-achieved once the DAMOS scheme is completely deactivated. Memory pressure level is one good example of such an assumed goal metric. It is particularly useful for long term automated kernel-only operations on dynamic environments. As always, however, no single algorithm fits all. When the environment has static characteristics and the goal metric has no factor to move without additional intervention, the algorithm is difficult to control and accurately achieve the goal. Systems running by not only the kernel but with some user space controls can be examples. Actually there were reports [1,2] of such cases. Extend DAMOS quotas goal core API and sysfs ABI to support multiple quota tuning algorithms that the API callers and/or ABI users can select. Keep the current algorithm as the default one, to keep the default behavior unchanged. Also give it a name, "consist", as it is designed to "consistently" apply the DAMOS action. And introduce a new tuning algorithm, namely "temporal". It is designed to apply the DAMOS action only temporally until the goal is achieved, in a deterministic way. In more detail, as long as the goal is under-achieved, it uses the maximum quota available. Once the goal is over-achieved, it sets the quota zero. [1] https://lore.kernel.org/CALa+Y17__d=ZsM1yX+MXx0ozVdsXnFqF4p0g+kATEitrWyZFfg@mail.gmail.com (local) [2] https://lore.kernel.org/20260204022537.814-1-yunjeong.mun@sk.com (local) SeongJae Park (5): mm/damon/core: introduce damos_quota_goal_tuner mm/damon/core: introduce DAMOS_QUOTA_GOAL_TUNER_TEMPORAL mm/damon/sysfs-schemes: implement quotas->goal_tuner file Docs/mm/damon/design: document the goal-based quota tuner selections Docs/admin-guide/mm/damon/usage: document goal_tuner sysfs file Documentation/admin-guide/mm/damon/usage.rst | 16 ++++-- Documentation/mm/damon/design.rst | 12 ++++ include/linux/damon.h | 11 ++++ mm/damon/core.c | 33 +++++++++-- mm/damon/sysfs-schemes.c | 58 ++++++++++++++++++++ 5 files changed, 120 insertions(+), 10 deletions(-) base-commit: 3c44a1294328e58fcf8708f8d1c2ddcb03178966 -- 2.47.3