Commit | Line | Data |
---|---|---|
c4ba6014 SP |
1 | .. SPDX-License-Identifier: GPL-2.0 |
2 | ||
3 | ========================== | |
4 | DAMON: Data Access MONitor | |
5 | ========================== | |
6 | ||
86834644 SP |
7 | DAMON is a Linux kernel subsystem that provides a framework for data access |
8 | monitoring and the monitoring results based system operations. The core | |
5fb9f044 | 9 | monitoring :ref:`mechanisms <damon_design_monitoring>` of DAMON make it |
c4ba6014 SP |
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 | ||
86834644 | 18 | Using this framework, therefore, the kernel can operate system in an |
f6a6de24 SP |
19 | access-aware fashion. Because the features are also exposed to the :doc:`user |
20 | space </admin-guide/mm/damon/index>`, users who have special information about | |
21 | their workloads can write personalized applications for better understanding | |
22 | and optimizations of their workloads and systems. | |
86834644 | 23 | |
5fb9f044 SP |
24 | For easier development of such systems, DAMON provides a feature called |
25 | :ref:`DAMOS <damon_design_damos>` (DAMon-based Operation Schemes) in addition | |
f6a6de24 SP |
26 | to the monitoring. Using the feature, DAMON users in both kernel and :doc:`user |
27 | spaces </admin-guide/mm/damon/index>` can do access-aware system operations | |
28 | with no code but simple configurations. | |
c4ba6014 SP |
29 | |
30 | .. toctree:: | |
31 | :maxdepth: 2 | |
32 | ||
33 | faq | |
34 | design | |
35 | api | |
e7366f3a | 36 | maintainer-profile |
f6a6de24 SP |
37 | |
38 | To utilize and control DAMON from the user-space, please refer to the | |
39 | administration :doc:`guide </admin-guide/mm/damon/index>`. |