Lines Matching +full:per +full:- +full:operation
1 .. SPDX-License-Identifier: GPL-2.0
9 - *DAMON user space tool.*
11 system administrators who want a just-working human-friendly interface.
12 Using this, users can use the DAMON’s major features in a human-friendly way.
16 - *sysfs interface.*
23 - *Kernel Space Programming Interface.*
29 - *debugfs interface. (DEPRECATED!)*
34 linux-mm@kvack.org.
57 ---------------
60 figure, parents-children relations are represented with indentations, each
64 .. parsed-literal::
104 ----
114 ---------
121 child directories named ``0`` to ``N-1``. Each directory represents each
127 -------------
137 - ``on``: Start running.
138 - ``off``: Stop running.
139 - ``commit``: Read the user inputs in the sysfs files except ``state`` file
141 - ``commit_schemes_quota_goals``: Read the DAMON-based operation schemes'
143 - ``update_schemes_stats``: Update the contents of stats files for each
144 DAMON-based operation scheme of the kdamond. For details of the stats,
146 - ``update_schemes_tried_regions``: Update the DAMON-based operation scheme
147 action tried regions directory for each DAMON-based operation scheme of the
148 kdamond. For details of the DAMON-based operation scheme action tried
151 - ``update_schemes_tried_bytes``: Update only ``.../tried_regions/total_bytes``
153 - ``clear_schemes_tried_regions``: Clear the DAMON-based operating scheme
154 action tried regions directory for each DAMON-based operation scheme of the
156 - ``update_schemes_effective_quotas``: Update the contents of
157 ``effective_bytes`` files for each DAMON-based operation scheme of the
168 ----------------------
172 ``0`` to ``N-1``. Each directory represents each monitoring context (refer to
174 details). At the moment, only one context per kdamond is supported, so only
180 -------------
191 list different available operation sets. Please refer to the :ref:`design
192 <damon_operations_set>` for the list of all available operation sets and their
202 ------------------------------
211 (``update_us``) exist. You can set and get the values in micro-seconds by
214 Under ``nr_regions`` directory, two files for the lower-bound and upper-bound
225 ---------------------
229 to ``N-1``. Each directory represents each monitoring target.
234 ------------
246 -------------------
259 to ``N-1``. Each directory represents each initial monitoring target region.
264 ------------
276 ---------------------
278 The directory for DAMON-based Operation Schemes (:ref:`DAMOS
284 to ``N-1``. Each directory represents each DAMON-based operation scheme.
289 ------------
310 ---------------------------
313 <damon_design_damos_access_pattern>` of the given DAMON-based operation scheme.
325 -------------------
328 DAMON-based operation scheme.
344 transformed size quota and user-specified size quota, smaller one is applied.
345 Based on the user-specified :ref:`goal <sysfs_schemes_quota_goals>`, the
356 in per-thousand unit by writing the values to the three files under the
362 -------------------------
365 <damon_design_damos_quotas_auto_tuning>` of the given DAMON-based operation
370 to ``N-1``. Each directory represents each goal and current achievement.
375 parameters for the quota auto-tuning goals that specified on the :ref:`design
384 -----------------------
387 given DAMON-based operation scheme.
397 - none: Ignore the watermarks
398 - free_mem_rate: System's free memory rate (per thousand)
405 --------------------
408 DAMON-based operation scheme.
412 to ``N-1``. Each directory represents each filter. The filters are evaluated
419 specific address range (an open-ended interval), or ``target`` for specific
431 For example, below restricts a DAMOS action to be applied to only non-anonymous
455 ------------------
472 --------------------------
495 and query-like efficient data access monitoring results retrievals. For the
502 ------------------
507 DAMON-based operation scheme ``action`` has tried to be applied.
513 8KiB] is showing accesses per aggregate interval in [0, 5] for aggregate
515 10ms per second, and also don't page out more than 1GiB per second. Under the
560 provides the monitoring results for regions that each DAMON-based Operation
564 :ref:`pattern <damon_design_damos_access_pattern>` based query-like efficient
571 # perf record -e damon:damon_aggregated &
576 …7] 79357.842179: damon:damon_aggregated: target_id=0 nr_regions=11 122509119488-135708762112: 0 864
583 for the target. The eighth field (``X-Y:``) shows the start (``X``) and end
594 …os_before_apply: ctx_idx=0 scheme_idx=0 target_idx=0 nr_regions=11 121932607488-135128711168: 0 136
597 Each line of the output represents each monitoring region that each DAMON-based
598 Operation Scheme was about to be applied at the traced time. The first five
617 linux-mm@kvack.org.
625 ``DEPRECATED`` is a read-only file for the DAMON debugfs interface deprecation
629 …N_SYSFS. If you cannot, please report your usecase to damon@lists.linux.dev and linux-mm@kvack.org.
633 ----------
649 ----------
679 ---------------------------------
685 file-mapped area. Or, some users can know the initial access pattern of their
702 example, below commands will set a couple of address ranges, ``1-100`` and
703 ``100-200`` as the initial monitoring target region of pid 42, which is the
705 ranges, ``20-40`` and ``50-100`` as that of pid 4242, which is the second one
724 -------
726 Users can get and set the DAMON-based operation :ref:`schemes
742 min-size max-size min-acc max-acc min-age max-age
744 Specifically, bytes for the size of regions (``min-size`` and ``max-size``),
745 number of monitored accesses per aggregate interval for access frequency
746 (``min-acc`` and ``max-acc``), number of aggregate intervals for the age of
747 regions (``min-age`` and ``max-age``) are specified. Note that the ranges are
759 - 0: ``willneed``
760 - 1: ``cold``
761 - 2: ``pageout``
762 - 3: ``hugepage``
763 - 4: ``nohugepage``
764 - 5: ``stat``
797 - 0: Ignore the watermarks
798 - 1: System's free memory rate (per thousand)
824 8KiB] is showing accesses per aggregate interval in [0, 5] for aggregate
826 10ms per second, and also don't page out more than 1GiB per second. Under the
841 --------------
857 Please note that you cannot write to the above-mentioned debugfs files while
859 an error code such as ``-EBUSY`` will be returned.
863 ---------------------
880 ---------------------------------