You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: src/libpfm4/docs/man3/libpfm_intel_gnr.3
+5Lines changed: 5 additions & 0 deletions
Original file line number
Diff line number
Diff line change
@@ -79,6 +79,11 @@ On Intel GraniteRapids, the event is treated as a regular event with a flat set
79
79
It is not possible to combine the various requests, supplier, snoop bits anymore. Therefore the
80
80
library offers the list of validated combinations as per Intel's official event list.
81
81
82
+
.SH Topdown via PERF_METRICS
83
+
84
+
Intel GraniteRapids supports the PERF_METRICS MSR which provides support for Topdown Level 1 and 2 via a single PMU counter. This special counter provides percentages of slots for each metric. This feature must be used in conjunction with fixed counter 3 which counts SLOTS in order to work properly. The Linux kernel exposes PERF_METRICS metrics as individual pseudo events counting in slots unit however to operate correctly all events must be programmed together. The Linux kernel requires all PERF_METRICS events to be programmed as a single event group with the first event as SLOTS required. Example: '{slots,topdown-retiring,topdown-bad-spec,topdown-fe-bound,topdown-be-bound,topdown-heavy-ops,topdown-br-mispredict,topdown-fetch-lat,topdown-mem-bound}'. Libpfm4 provides acces to the PERF_METRICS pseudo events via a dedicated event called \fBTOPDOWN_M\fR. This event uses the pseudo encodings assigned by the Linux kernel to PERF_METRICS pseudo events. Using these encodings ensures the kernel detects them as targeting the PERF_METRICS MSR. Note that libpfm4 only provides the encodings and that it is up the user on Linux to group them and order them properly for the perf_events interface. There exists generic counter encodings for most of the Topdown metrics and libpfm4 provides support for those via the \fBTOPDOWN\fR event. Note that all subevents of \fBTOPDOWN_M\fR use fixed counters which have, by definition, no actual event codes. The library uses the Linux pseudo event codes for them, even when compiled on non Linux operating systems.The same holds true for any fixed counters pseudo event exported by libpfm4.
Copy file name to clipboardExpand all lines: src/libpfm4/docs/man3/libpfm_intel_icl.3
+4Lines changed: 4 additions & 0 deletions
Original file line number
Diff line number
Diff line change
@@ -77,6 +77,10 @@ On Intel IceLake unlike older processors, the event is treated as a regular even
77
77
It is not possible to combine the various requests, supplier, snoop bits anymore. Therefore the
78
78
library offers the list of validated combinations as per Intel's official event list.
79
79
80
+
.SH Topdown via PERF_METRICS
81
+
82
+
Intel Icelake supports the PERF_METRICS MSR which provides support for Topdown Level 1 via a single PMU counter. This special counter provides percentages of slots for each metric. This feature must be used in conjunction with fixed counter 3 which counts SLOTS in order to work properly. The Linux kernel exposes PERF_METRICS metrics as individual pseudo events counting in slots unit however to operate correctly all events must be programmed together. The Linux kernel requires all PERF_METRICS events to be programmed as a single event group with the first event as SLOTS required. Example: '{slots,topdown-retiring,topdown-bad-spec,topdown-fe-bound,topdown-be-bound,topdown-heavy-ops,topdown-br-mispredict,topdown-fetch-lat,topdown-mem-bound}'. Libpfm4 provides acces to the PERF_METRICS pseudo events via a dedicated event called \fBTOPDOWN_M\fR. This event uses the pseudo encodings assigned by the Linux kernel to PERF_METRICS pseudo events. Using these encodings ensures the kernel detects them as targeting the PERF_METRICS MSR. Note that libpfm4 only provides the encodings and that it is up the user on Linux to group them and order them properly for the perf_events interface. There exists generic counter encodings for most of the Topdown metrics and libpfm4 provides support for those via the \fBTOPDOWN\fR event. Note that all subevents of \fBTOPDOWN_M\fR use fixed counters which have, by definition, no actual event codes. The library uses the Linux pseudo event codes for them, even when compiled on non Linux operating systems.The same holds true for any fixed counters pseudo event exported by libpfm4.
libpfm_intel_spr - support for Intel SapphireRapid core PMU
3
+
libpfm_intel_spr - support for Intel SapphireRapids core PMU
4
4
.SH SYNOPSIS
5
5
.nf
6
6
.B#include<perfmon/pfmlib.h>
7
7
.sp
8
8
.BPMUname:spr
9
-
.BPMUdesc:IntelSapphireRapid
9
+
.BPMUdesc:IntelSapphireRapids
10
10
.sp
11
11
.SH DESCRIPTION
12
-
The library supports the Intel SapphireRapid core PMU. It should be noted that
12
+
The library supports the Intel SapphireRapids core PMU. It should be noted that
13
13
this PMU model only covers each core's PMU and not the socket level
14
14
PMU.
15
15
16
-
On SapphireRapid, the number of generic counters depends on the Hyperthreading (HT) mode.
16
+
On SapphireRapids, the number of generic counters depends on the Hyperthreading (HT) mode.
17
17
18
18
The \fBpfm_get_pmu_info()\fR function returns the maximum number
19
19
of generic counters in \fBnum_cntrs\fr.
20
20
21
21
.SH MODIFIERS
22
-
The following modifiers are supported on Intel SapphireRapid processors:
22
+
The following modifiers are supported on Intel SapphireRapids processors:
23
23
.TP
24
24
.Bu
25
25
Measure at user level which includes privilege levels 1, 2, 3. This corresponds to \fBPFM_PLM3\fR.
@@ -62,7 +62,7 @@ counts. It acts as a threshold, i.e., at least a period of N core cycles where t
62
62
be used with the IDQ_*_BUBBLES umasks. If not specified, the default threshold value is 1 cycle. the valid values are in [1-4095].
63
63
64
64
.SH OFFCORE_RESPONSE events
65
-
Intel SapphireRapid supports two encodings for offcore_response events. In the library, these are called OFFCORE_RESPONSE_0 and OFFCORE_RESPONSE_1.
65
+
Intel SapphireRapids supports two encodings for offcore_response events. In the library, these are called OFFCORE_RESPONSE_0 and OFFCORE_RESPONSE_1.
66
66
67
67
Those events need special treatment in the performance monitoring infrastructure
68
68
because each event uses an extra register to store some settings. Thus, in
@@ -73,10 +73,14 @@ The offcore_response events are exposed as a normal events by the library. The e
73
73
settings are exposed as regular umasks. The library takes care of encoding the
74
74
events according to the underlying kernel interface.
75
75
76
-
On Intel SapphireRapid unlike older processors, the event is treated as a regular event with a flat set of umasks to choose from.
76
+
On Intel SapphireRapids unlike older processors, the event is treated as a regular event with a flat set of umasks to choose from.
77
77
It is not possible to combine the various requests, supplier, snoop bits anymore. Therefore the
78
78
library offers the list of validated combinations as per Intel's official event list.
79
79
80
+
.SH Topdown via PERF_METRICS
81
+
82
+
Intel SapphireRapids supports the PERF_METRICS MSR which provides support for Topdown Level 1 and 2 via a single PMU counter. This special counter provides percentages of slots for each metric. This feature must be used in conjunction with fixed counter 3 which counts SLOTS in order to work properly. The Linux kernel exposes PERF_METRICS metrics as individual pseudo events counting in slots unit however to operate correctly all events must be programmed together. The Linux kernel requires all PERF_METRICS events to be programmed as a single event group with the first event as SLOTS required. Example: '{slots,topdown-retiring,topdown-bad-spec,topdown-fe-bound,topdown-be-bound,topdown-heavy-ops,topdown-br-mispredict,topdown-fetch-lat,topdown-mem-bound}'. Libpfm4 provides acces to the PERF_METRICS pseudo events via a dedicated event called \fBTOPDOWN_M\fR. This event uses the pseudo encodings assigned by the Linux kernel to PERF_METRICS pseudo events. Using these encodings ensures the kernel detects them as targeting the PERF_METRICS MSR. Note that libpfm4 only provides the encodings and that it is up the user on Linux to group them and order them properly for the perf_events interface. There exists generic counter encodings for most of the Topdown metrics and libpfm4 provides support for those via the \fBTOPDOWN\fR event. Note that all subevents of \fBTOPDOWN_M\fR use fixed counters which have, by definition, no actual event codes. The library uses the Linux pseudo event codes for them, even when compiled on non Linux operating systems.The same holds true for any fixed counters pseudo event exported by libpfm4.
0 commit comments