mirror of
git://git.yoctoproject.org/linux-yocto.git
synced 2025-10-22 15:03:53 +02:00

Implement a sample DAMON module that shows how self-tuned DAMON-based memory tiering can be written. It is a sample since the purpose is to give an idea about how it can be implemented and perform, rather than be used on general production setups. Especially, it supports only two tiers memory setup having only one CPU-attached NUMA node. [sj@kernel.org: fix wrong DAMON attrs setting] Link: https://lkml.kernel.org/r/20250510220932.47722-1-sj@kernel.org [sj@kernel.org: trigger build even if only mtier is enabled] Link: https://lkml.kernel.org/r/20250426184054.11437-1-sj@kernel.org Link: https://lkml.kernel.org/r/20250420194030.75838-8-sj@kernel.org Signed-off-by: SeongJae Park <sj@kernel.org> Cc: Jonathan Corbet <corbet@lwn.net> Cc: Yunjeong Mun <yunjeong.mun@sk.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
1.3 KiB
1.3 KiB
SPDX-License-Identifier: GPL-2.0
menu "DAMON Samples"
config SAMPLE_DAMON_WSSE bool "DAMON sample module for working set size estimation" depends on DAMON && DAMON_VADDR help This builds DAMON sample module for working set size estimation.
The module receives a pid, monitor access to the virtual address
space of the process, estimate working set size of the process, and
repeatedly prints the size on the kernel log.
If unsure, say N.
config SAMPLE_DAMON_PRCL bool "DAMON sample module for access-aware proactive reclamation" depends on DAMON && DAMON_VADDR help This builds DAMON sample module for access-aware proactive reclamation.
The module receives a pid, monitor access to the virtual address
space of the process, find memory regions that not accessed, and
proactively reclaim the regions.
If unsure, say N.
config SAMPLE_DAMON_MTIER bool "DAMON sample module for memory tiering" depends on DAMON && DAMON_PADDR help Thps builds DAMON sample module for memory tierign.
The module assumes the system is constructed with two NUMA nodes,
which seems as local and remote nodes to all CPUs. For example,
node0 is for DDR5 DRAMs connected via DIMM, while node1 is for DDR4
DRAMs connected via CXL.
If unsure, say N.
endmenu