forked from Minki/linux
c4ba6014ae
This commit adds documents for DAMON under `Documentation/admin-guide/mm/damon/` and `Documentation/vm/damon/`. Link: https://lkml.kernel.org/r/20210716081449.22187-11-sj38.park@gmail.com Signed-off-by: SeongJae Park <sjpark@amazon.de> Reviewed-by: Fernand Sieber <sieberf@amazon.com> Reviewed-by: Markus Boehme <markubo@amazon.de> Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com> Cc: Amit Shah <amit@kernel.org> Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org> Cc: Brendan Higgins <brendanhiggins@google.com> Cc: David Hildenbrand <david@redhat.com> Cc: David Rientjes <rientjes@google.com> Cc: David Woodhouse <dwmw@amazon.com> Cc: Fan Du <fan.du@intel.com> Cc: Greg Kroah-Hartman <greg@kroah.com> Cc: Greg Thelen <gthelen@google.com> Cc: Ingo Molnar <mingo@redhat.com> Cc: Joe Perches <joe@perches.com> Cc: Jonathan Cameron <Jonathan.Cameron@huawei.com> Cc: Jonathan Corbet <corbet@lwn.net> Cc: Leonard Foerster <foersleo@amazon.de> Cc: Marco Elver <elver@google.com> Cc: Maximilian Heyne <mheyne@amazon.de> Cc: Mel Gorman <mgorman@suse.de> Cc: Minchan Kim <minchan@kernel.org> Cc: Namhyung Kim <namhyung@kernel.org> Cc: Peter Zijlstra <peterz@infradead.org> Cc: Rik van Riel <riel@surriel.com> Cc: Shakeel Butt <shakeelb@google.com> Cc: Shuah Khan <shuah@kernel.org> Cc: Steven Rostedt (VMware) <rostedt@goodmis.org> Cc: Vladimir Davydov <vdavydov.dev@gmail.com> Cc: Vlastimil Babka <vbabka@suse.cz> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
52 lines
2.3 KiB
ReStructuredText
52 lines
2.3 KiB
ReStructuredText
.. SPDX-License-Identifier: GPL-2.0
|
|
|
|
==========================
|
|
Frequently Asked Questions
|
|
==========================
|
|
|
|
Why a new subsystem, instead of extending perf or other user space tools?
|
|
=========================================================================
|
|
|
|
First, because it needs to be lightweight as much as possible so that it can be
|
|
used online, any unnecessary overhead such as kernel - user space context
|
|
switching cost should be avoided. Second, DAMON aims to be used by other
|
|
programs including the kernel. Therefore, having a dependency on specific
|
|
tools like perf is not desirable. These are the two biggest reasons why DAMON
|
|
is implemented in the kernel space.
|
|
|
|
|
|
Can 'idle pages tracking' or 'perf mem' substitute DAMON?
|
|
=========================================================
|
|
|
|
Idle page tracking is a low level primitive for access check of the physical
|
|
address space. 'perf mem' is similar, though it can use sampling to minimize
|
|
the overhead. On the other hand, DAMON is a higher-level framework for the
|
|
monitoring of various address spaces. It is focused on memory management
|
|
optimization and provides sophisticated accuracy/overhead handling mechanisms.
|
|
Therefore, 'idle pages tracking' and 'perf mem' could provide a subset of
|
|
DAMON's output, but cannot substitute DAMON.
|
|
|
|
|
|
Does DAMON support virtual memory only?
|
|
=======================================
|
|
|
|
No. The core of the DAMON is address space independent. The address space
|
|
specific low level primitive parts including monitoring target regions
|
|
constructions and actual access checks can be implemented and configured on the
|
|
DAMON core by the users. In this way, DAMON users can monitor any address
|
|
space with any access check technique.
|
|
|
|
Nonetheless, DAMON provides vma tracking and PTE Accessed bit check based
|
|
implementations of the address space dependent functions for the virtual memory
|
|
by default, for a reference and convenient use. In near future, we will
|
|
provide those for physical memory address space.
|
|
|
|
|
|
Can I simply monitor page granularity?
|
|
======================================
|
|
|
|
Yes. You can do so by setting the ``min_nr_regions`` attribute higher than the
|
|
working set size divided by the page size. Because the monitoring target
|
|
regions size is forced to be ``>=page size``, the region split will make no
|
|
effect.
|