1ee65728eSMike Rapoport.. SPDX-License-Identifier: GPL-2.0 2ee65728eSMike Rapoport 3ee65728eSMike Rapoport========================== 4ee65728eSMike RapoportDAMON: Data Access MONitor 5ee65728eSMike Rapoport========================== 6ee65728eSMike Rapoport 786834644SSeongJae ParkDAMON is a Linux kernel subsystem that provides a framework for data access 886834644SSeongJae Parkmonitoring and the monitoring results based system operations. The core 986834644SSeongJae Parkmonitoring mechanisms of DAMON (refer to :doc:`design` for the detail) make it 10ee65728eSMike Rapoport 11ee65728eSMike Rapoport - *accurate* (the monitoring output is useful enough for DRAM level memory 12ee65728eSMike Rapoport management; It might not appropriate for CPU Cache levels, though), 13ee65728eSMike Rapoport - *light-weight* (the monitoring overhead is low enough to be applied online), 14ee65728eSMike Rapoport and 15ee65728eSMike Rapoport - *scalable* (the upper-bound of the overhead is in constant range regardless 16ee65728eSMike Rapoport of the size of target workloads). 17ee65728eSMike Rapoport 1886834644SSeongJae ParkUsing this framework, therefore, the kernel can operate system in an 1986834644SSeongJae Parkaccess-aware fashion. Because the features are also exposed to the user space, 2086834644SSeongJae Parkusers who have special information about their workloads can write personalized 2186834644SSeongJae Parkapplications for better understanding and optimizations of their workloads and 2286834644SSeongJae Parksystems. 2386834644SSeongJae Park 2486834644SSeongJae ParkFor easier development of such systems, DAMON provides a feature called DAMOS 2586834644SSeongJae Park(DAMon-based Operation Schemes) in addition to the monitoring. Using the 2686834644SSeongJae Parkfeature, DAMON users in both kernel and user spaces can do access-aware system 2786834644SSeongJae Parkoperations with no code but simple configurations. 28ee65728eSMike Rapoport 29ee65728eSMike Rapoport.. toctree:: 30ee65728eSMike Rapoport :maxdepth: 2 31ee65728eSMike Rapoport 32ee65728eSMike Rapoport faq 33ee65728eSMike Rapoport design 34ee65728eSMike Rapoport api 35*e7366f3aSSeongJae Park maintainer-profile 36