Skip to content

Commit a8848c4

Browse files
aeglbp3tk0v
authored andcommitted
x86,fs/resctrl: Update documentation for telemetry events
Update resctrl filesystem documentation with the details about the resctrl files that support telemetry events. [ bp: Drop the debugfs hunk of the documentation until a better debugging solution is found. ] Signed-off-by: Tony Luck <tony.luck@intel.com> Signed-off-by: Borislav Petkov (AMD) <bp@alien8.de> Reviewed-by: Reinette Chatre <reinette.chatre@intel.com> Link: https://lore.kernel.org/20251217172121.12030-1-tony.luck@intel.com
1 parent 4bbfc90 commit a8848c4

1 file changed

Lines changed: 54 additions & 12 deletions

File tree

Documentation/filesystems/resctrl.rst

Lines changed: 54 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -252,13 +252,12 @@ with respect to allocation:
252252
bandwidth percentages are directly applied to
253253
the threads running on the core
254254

255-
If RDT monitoring is available there will be an "L3_MON" directory
255+
If L3 monitoring is available there will be an "L3_MON" directory
256256
with the following files:
257257

258258
"num_rmids":
259-
The number of RMIDs available. This is the
260-
upper bound for how many "CTRL_MON" + "MON"
261-
groups can be created.
259+
The number of RMIDs supported by hardware for
260+
L3 monitoring events.
262261

263262
"mon_features":
264263
Lists the monitoring events if
@@ -484,6 +483,24 @@ with the following files:
484483
bytes) at which a previously used LLC_occupancy
485484
counter can be considered for re-use.
486485

486+
If telemetry monitoring is available there will be a "PERF_PKG_MON" directory
487+
with the following files:
488+
489+
"num_rmids":
490+
The number of RMIDs for telemetry monitoring events.
491+
492+
On Intel resctrl will not enable telemetry events if the number of
493+
RMIDs that can be tracked concurrently is lower than the total number
494+
of RMIDs supported. Telemetry events can be force-enabled with the
495+
"rdt=" kernel parameter, but this may reduce the number of
496+
monitoring groups that can be created.
497+
498+
"mon_features":
499+
Lists the telemetry monitoring events that are enabled on this system.
500+
501+
The upper bound for how many "CTRL_MON" + "MON" can be created
502+
is the smaller of the L3_MON and PERF_PKG_MON "num_rmids" values.
503+
487504
Finally, in the top level of the "info" directory there is a file
488505
named "last_cmd_status". This is reset with every "command" issued
489506
via the file system (making new directories or writing to any of the
@@ -589,15 +606,40 @@ When control is enabled all CTRL_MON groups will also contain:
589606
When monitoring is enabled all MON groups will also contain:
590607

591608
"mon_data":
592-
This contains a set of files organized by L3 domain and by
593-
RDT event. E.g. on a system with two L3 domains there will
594-
be subdirectories "mon_L3_00" and "mon_L3_01". Each of these
595-
directories have one file per event (e.g. "llc_occupancy",
596-
"mbm_total_bytes", and "mbm_local_bytes"). In a MON group these
597-
files provide a read out of the current value of the event for
598-
all tasks in the group. In CTRL_MON groups these files provide
599-
the sum for all tasks in the CTRL_MON group and all tasks in
609+
This contains directories for each monitor domain.
610+
611+
If L3 monitoring is enabled, there will be a "mon_L3_XX" directory for
612+
each instance of an L3 cache. Each directory contains files for the enabled
613+
L3 events (e.g. "llc_occupancy", "mbm_total_bytes", and "mbm_local_bytes").
614+
615+
If telemetry monitoring is enabled, there will be a "mon_PERF_PKG_YY"
616+
directory for each physical processor package. Each directory contains
617+
files for the enabled telemetry events (e.g. "core_energy". "activity",
618+
"uops_retired", etc.)
619+
620+
The info/`*`/mon_features files provide the full list of enabled
621+
event/file names.
622+
623+
"core energy" reports a floating point number for the energy (in Joules)
624+
consumed by cores (registers, arithmetic units, TLB and L1/L2 caches)
625+
during execution of instructions summed across all logical CPUs on a
626+
package for the current monitoring group.
627+
628+
"activity" also reports a floating point value (in Farads). This provides
629+
an estimate of work done independent of the frequency that the CPUs used
630+
for execution.
631+
632+
Note that "core energy" and "activity" only measure energy/activity in the
633+
"core" of the CPU (arithmetic units, TLB, L1 and L2 caches, etc.). They
634+
do not include L3 cache, memory, I/O devices etc.
635+
636+
All other events report decimal integer values.
637+
638+
In a MON group these files provide a read out of the current value of
639+
the event for all tasks in the group. In CTRL_MON groups these files
640+
provide the sum for all tasks in the CTRL_MON group and all tasks in
600641
MON groups. Please see example section for more details on usage.
642+
601643
On systems with Sub-NUMA Cluster (SNC) enabled there are extra
602644
directories for each node (located within the "mon_L3_XX" directory
603645
for the L3 cache they occupy). These are named "mon_sub_L3_YY"

0 commit comments

Comments
 (0)