xref: /openbmc/linux/Documentation/mm/damon/index.rst (revision 2f164822)
1.. SPDX-License-Identifier: GPL-2.0
2
3==========================
4DAMON: Data Access MONitor
5==========================
6
7DAMON is a Linux kernel subsystem that provides a framework for data access
8monitoring and the monitoring results based system operations.  The core
9monitoring mechanisms of DAMON (refer to :doc:`design` for the detail) make it
10
11 - *accurate* (the monitoring output is useful enough for DRAM level memory
12   management; It might not appropriate for CPU Cache levels, though),
13 - *light-weight* (the monitoring overhead is low enough to be applied online),
14   and
15 - *scalable* (the upper-bound of the overhead is in constant range regardless
16   of the size of target workloads).
17
18Using this framework, therefore, the kernel can operate system in an
19access-aware fashion.  Because the features are also exposed to the user space,
20users who have special information about their workloads can write personalized
21applications for better understanding and optimizations of their workloads and
22systems.
23
24For easier development of such systems, DAMON provides a feature called DAMOS
25(DAMon-based Operation Schemes) in addition to the monitoring.  Using the
26feature, DAMON users in both kernel and user spaces can do access-aware system
27operations with no code but simple configurations.
28
29.. toctree::
30   :maxdepth: 2
31
32   faq
33   design
34   api
35   maintainer-profile
36