All of lore.kernel.org
 help / color / mirror / Atom feed
From: SeongJae Park <sj@kernel.org>
Cc: kernel-team@meta.com, SeongJae Park <sj@kernel.org>,
	damon@lists.linux.dev, linux-mm@kvack.org,
	linux-doc@vger.kernel.org, linux-kernel@vger.kernel.org
Subject: [RFC PATCH 03/18] Docs/mm/damon/design: add 'statistics' section
Date: Wed, 18 Dec 2024 20:03:12 -0800	[thread overview]
Message-ID: <20241219040327.61902-4-sj@kernel.org> (raw)
In-Reply-To: <20241219040327.61902-1-sj@kernel.org>

DAMOS stats are important feature for tuning of DAMOS-based access-aware
system operation, and efficient access pattern monitoring.  But not well
documented on the design document.  Add a section on the document.

Signed-off-by: SeongJae Park <sj@kernel.org>
---
 Documentation/mm/damon/design.rst | 37 +++++++++++++++++++++++++++++++
 1 file changed, 37 insertions(+)

diff --git a/Documentation/mm/damon/design.rst b/Documentation/mm/damon/design.rst
index a577ae40e71c..8710fa71ad71 100644
--- a/Documentation/mm/damon/design.rst
+++ b/Documentation/mm/damon/design.rst
@@ -539,6 +539,43 @@ To know how user-space can set the watermarks via :ref:`DAMON sysfs interface
 <sysfs_interface>`, refer to :ref:`filters <sysfs_filters>` part of the
 documentation.
 
+Statistics
+~~~~~~~~~~
+
+The statistics of DAMOS behaviors that designed to help monitoring, tuning and
+debugging of DAMOS.
+
+DAMOS accounts below statistics for each scheme, from the beginning of the
+scheme's execution.
+
+- ``nr_tried``: Total number of regions that the scheme is tried to be applied.
+- ``sz_trtied``: Total size of regions that the scheme is tried to be applied.
+- ``nr_applied``: Total number of regions that the scheme is applied.
+- ``sz_applied``: Total size of regions that the scheme is applied.
+- ``qt_exceeds``: Total number of times the quota of the scheme has exceeded.
+
+"A scheme is tried to be applied to a region" means DAMOS core logic determined
+the region is eligible to apply the scheme's :ref:`action
+<damon_design_damos_action>`.  The :ref:`access pattern
+<damon_design_damos_access_patter>`, :ref:`quotas <damon_design_damos_quotas>`,
+:ref:`watermarks <damon_design_damos_watermarks>`, and :ref:`filters
+<damon_design_damos_filters>` that handled on core logic could affect this.
+The core logic will only ask the underlying :ref:`operation set
+<damon_operations_set>` to do apply the action to the region, so whether the
+action is really applied or not is unclear.  That's why it is called "tried".
+
+"A scheme is applied to a region" means the :ref:`operation set
+<damon_operations_set>` has applied the action to at least a part of the
+region.  The :ref:`filters <damon_design_damos_filters>` that handled by the
+operation set, and the types of the :ref:`action <damon_design_damos_action>`
+and the pages of the region can affect this.  For example, if a filter is set
+to exclude anonymous pages and the region has only anonymous pages, or if the
+action is ``pageout`` while all pages of the region are unreclaimable, applying
+the action to the region will fail.
+
+To know how user-space can read the stats via :ref:`DAMON sysfs interface
+<sysfs_interface>`, refer to :ref:s`stats <sysfs_stats>` part of the
+documentation.
 
 Regions Walking
 ~~~~~~~~~~~~~~~
-- 
2.39.5


  parent reply	other threads:[~2024-12-19  4:03 UTC|newest]

Thread overview: 22+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-12-19  4:03 [RFC PATCH 00/18] mm/damon: enable page level properties based access pattern monitoring SeongJae Park
2024-12-19  4:03 ` [RFC PATCH 01/18] mm/damon: clarify trying vs applying on damos_stat kernel-doc comment SeongJae Park
2024-12-19  4:03 ` [RFC PATCH 02/18] Docs/mm/damon/design: document DAMOS regions walking SeongJae Park
2024-12-19  4:03 ` SeongJae Park [this message]
2024-12-19  4:03 ` [RFC PATCH 04/18] Docs/admin-guide/mm/damon/usage: link damos stat design doc SeongJae Park
2024-12-19  4:03 ` [RFC PATCH 05/18] mm/damon: ask apply_scheme() to report filter-passed region-internal bytes SeongJae Park
2024-12-19  4:03 ` [RFC PATCH 06/18] mm/damon/paddr: report filter-passed bytes back for normal actions SeongJae Park
2024-12-19  4:03 ` [RFC PATCH 07/18] mm/damon/paddr: report filter-passed bytes back for DAMOS_STAT action SeongJae Park
2025-01-13 19:49   ` Joshua Hahn
2025-01-13 20:02     ` SeongJae Park
2024-12-19  4:03 ` [RFC PATCH 08/18] mm/damon/core: implement per-scheme filter-passed bytes stat SeongJae Park
2024-12-19  4:03 ` [RFC PATCH 09/18] mm/damon/syfs-schemes: " SeongJae Park
2024-12-19  4:03 ` [RFC PATCH 10/18] Docs/mm/damon/design: document sz_ops_filter_passed SeongJae Park
2024-12-19  4:03 ` [RFC PATCH 11/18] Docs/admin-guide/mm/damon/usage: " SeongJae Park
2024-12-19  4:03 ` [RFC PATCH 12/18] Docs/ABI/damon: document per-scheme filter-passed bytes stat file SeongJae Park
2024-12-19  4:03 ` [RFC PATCH 13/18] mm/damon/core: invoke damos_walk_control->walk_fn() after applying action SeongJae Park
2024-12-19  4:03 ` [RFC PATCH 14/18] mm/damon/core: pass per-region filter-passed bytes to damos_walk_control->walk_fn() SeongJae Park
2024-12-19  4:03 ` [RFC PATCH 15/18] mm/damon/sysfs-schemes: expose per-region filter-passed bytes SeongJae Park
2024-12-19  4:03 ` [RFC PATCH 16/18] Docs/mm/damon/design: document per-region sz_filter_passed stat SeongJae Park
2024-12-19  4:03 ` [RFC PATCH 17/18] Docs/admin-guide/mm/damon/usage: document sz_filtered_out of scheme tried region directories SeongJae Park
2024-12-19  4:03 ` [RFC PATCH 18/18] Docs/ABI/damon: document per-region DAMOS filter-passed bytes stat file SeongJae Park
2024-12-23 20:24 ` [RFC PATCH 00/18] mm/damon: enable page level properties based access pattern monitoring SeongJae Park

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20241219040327.61902-4-sj@kernel.org \
    --to=sj@kernel.org \
    --cc=damon@lists.linux.dev \
    --cc=kernel-team@meta.com \
    --cc=linux-doc@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mm@kvack.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.