xref: /linux/tools/perf/pmu-events/arch/x86/icelakex/other.json (revision cdb29a8fd0c9fff693cd7b7e14a8f4e9e7cf00ed)
1*cdb29a8fSJin Yao[
2*cdb29a8fSJin Yao    {
3*cdb29a8fSJin Yao        "BriefDescription": "TMA slots available for an unhalted logical processor. Fixed counter - architectural event",
4*cdb29a8fSJin Yao        "CollectPEBSRecord": "2",
5*cdb29a8fSJin Yao        "Counter": "35",
6*cdb29a8fSJin Yao        "EventName": "TOPDOWN.SLOTS",
7*cdb29a8fSJin Yao        "PEBScounters": "35",
8*cdb29a8fSJin Yao        "PublicDescription": "Number of available slots for an unhalted logical processor. The event increments by machine-width of the narrowest pipeline as employed by the Top-down Microarchitecture Analysis method (TMA). The count is distributed among unhalted logical processors (hyper-threads) who share the same physical core. Software can use this event as the denominator for the top-level metrics of the TMA method. This architectural event is counted on a designated fixed counter (Fixed Counter 3).",
9*cdb29a8fSJin Yao        "SampleAfterValue": "10000003",
10*cdb29a8fSJin Yao        "Speculative": "1",
11*cdb29a8fSJin Yao        "UMask": "0x4"
12*cdb29a8fSJin Yao    },
13*cdb29a8fSJin Yao    {
14*cdb29a8fSJin Yao        "BriefDescription": "Core cycles where the core was running in a manner where Turbo may be clipped to the Non-AVX turbo schedule.",
15*cdb29a8fSJin Yao        "CollectPEBSRecord": "2",
16*cdb29a8fSJin Yao        "Counter": "0,1,2,3",
17*cdb29a8fSJin Yao        "EventCode": "0x28",
18*cdb29a8fSJin Yao        "EventName": "CORE_POWER.LVL0_TURBO_LICENSE",
19*cdb29a8fSJin Yao        "PEBScounters": "0,1,2,3",
20*cdb29a8fSJin Yao        "PublicDescription": "Counts Core cycles where the core was running with power-delivery for baseline license level 0.  This includes non-AVX codes, SSE, AVX 128-bit, and low-current AVX 256-bit codes.",
21*cdb29a8fSJin Yao        "SampleAfterValue": "200003",
22*cdb29a8fSJin Yao        "Speculative": "1",
23*cdb29a8fSJin Yao        "UMask": "0x7"
24*cdb29a8fSJin Yao    },
25*cdb29a8fSJin Yao    {
26*cdb29a8fSJin Yao        "BriefDescription": "Core cycles where the core was running in a manner where Turbo may be clipped to the AVX2 turbo schedule.",
27*cdb29a8fSJin Yao        "CollectPEBSRecord": "2",
28*cdb29a8fSJin Yao        "Counter": "0,1,2,3",
29*cdb29a8fSJin Yao        "EventCode": "0x28",
30*cdb29a8fSJin Yao        "EventName": "CORE_POWER.LVL1_TURBO_LICENSE",
31*cdb29a8fSJin Yao        "PEBScounters": "0,1,2,3",
32*cdb29a8fSJin Yao        "PublicDescription": "Counts Core cycles where the core was running with power-delivery for license level 1.  This includes high current AVX 256-bit instructions as well as low current AVX 512-bit instructions.",
33*cdb29a8fSJin Yao        "SampleAfterValue": "200003",
34*cdb29a8fSJin Yao        "Speculative": "1",
35*cdb29a8fSJin Yao        "UMask": "0x18"
36*cdb29a8fSJin Yao    },
37*cdb29a8fSJin Yao    {
38*cdb29a8fSJin Yao        "BriefDescription": "Core cycles where the core was running in a manner where Turbo may be clipped to the AVX512 turbo schedule.",
39*cdb29a8fSJin Yao        "CollectPEBSRecord": "2",
40*cdb29a8fSJin Yao        "Counter": "0,1,2,3",
41*cdb29a8fSJin Yao        "EventCode": "0x28",
42*cdb29a8fSJin Yao        "EventName": "CORE_POWER.LVL2_TURBO_LICENSE",
43*cdb29a8fSJin Yao        "PEBScounters": "0,1,2,3",
44*cdb29a8fSJin Yao        "PublicDescription": "Core cycles where the core was running with power-delivery for license level 2 (introduced in Skylake Server microarchtecture).  This includes high current AVX 512-bit instructions.",
45*cdb29a8fSJin Yao        "SampleAfterValue": "200003",
46*cdb29a8fSJin Yao        "Speculative": "1",
47*cdb29a8fSJin Yao        "UMask": "0x20"
48*cdb29a8fSJin Yao    },
49*cdb29a8fSJin Yao    {
50*cdb29a8fSJin Yao        "BriefDescription": "Number of PREFETCHNTA instructions executed.",
51*cdb29a8fSJin Yao        "CollectPEBSRecord": "2",
52*cdb29a8fSJin Yao        "Counter": "0,1,2,3",
53*cdb29a8fSJin Yao        "EventCode": "0x32",
54*cdb29a8fSJin Yao        "EventName": "SW_PREFETCH_ACCESS.NTA",
55*cdb29a8fSJin Yao        "PEBScounters": "0,1,2,3",
56*cdb29a8fSJin Yao        "PublicDescription": "Counts the number of PREFETCHNTA instructions executed.",
57*cdb29a8fSJin Yao        "SampleAfterValue": "100003",
58*cdb29a8fSJin Yao        "Speculative": "1",
59*cdb29a8fSJin Yao        "UMask": "0x1"
60*cdb29a8fSJin Yao    },
61*cdb29a8fSJin Yao    {
62*cdb29a8fSJin Yao        "BriefDescription": "Number of PREFETCHT0 instructions executed.",
63*cdb29a8fSJin Yao        "CollectPEBSRecord": "2",
64*cdb29a8fSJin Yao        "Counter": "0,1,2,3",
65*cdb29a8fSJin Yao        "EventCode": "0x32",
66*cdb29a8fSJin Yao        "EventName": "SW_PREFETCH_ACCESS.T0",
67*cdb29a8fSJin Yao        "PEBScounters": "0,1,2,3",
68*cdb29a8fSJin Yao        "PublicDescription": "Counts the number of PREFETCHT0 instructions executed.",
69*cdb29a8fSJin Yao        "SampleAfterValue": "100003",
70*cdb29a8fSJin Yao        "Speculative": "1",
71*cdb29a8fSJin Yao        "UMask": "0x2"
72*cdb29a8fSJin Yao    },
73*cdb29a8fSJin Yao    {
74*cdb29a8fSJin Yao        "BriefDescription": "Number of PREFETCHT1 or PREFETCHT2 instructions executed.",
75*cdb29a8fSJin Yao        "CollectPEBSRecord": "2",
76*cdb29a8fSJin Yao        "Counter": "0,1,2,3",
77*cdb29a8fSJin Yao        "EventCode": "0x32",
78*cdb29a8fSJin Yao        "EventName": "SW_PREFETCH_ACCESS.T1_T2",
79*cdb29a8fSJin Yao        "PEBScounters": "0,1,2,3",
80*cdb29a8fSJin Yao        "PublicDescription": "Counts the number of PREFETCHT1 or PREFETCHT2 instructions executed.",
81*cdb29a8fSJin Yao        "SampleAfterValue": "100003",
82*cdb29a8fSJin Yao        "Speculative": "1",
83*cdb29a8fSJin Yao        "UMask": "0x4"
84*cdb29a8fSJin Yao    },
85*cdb29a8fSJin Yao    {
86*cdb29a8fSJin Yao        "BriefDescription": "Number of PREFETCHW instructions executed.",
87*cdb29a8fSJin Yao        "CollectPEBSRecord": "2",
88*cdb29a8fSJin Yao        "Counter": "0,1,2,3",
89*cdb29a8fSJin Yao        "EventCode": "0x32",
90*cdb29a8fSJin Yao        "EventName": "SW_PREFETCH_ACCESS.PREFETCHW",
91*cdb29a8fSJin Yao        "PEBScounters": "0,1,2,3",
92*cdb29a8fSJin Yao        "PublicDescription": "Counts the number of PREFETCHW instructions executed.",
93*cdb29a8fSJin Yao        "SampleAfterValue": "100003",
94*cdb29a8fSJin Yao        "Speculative": "1",
95*cdb29a8fSJin Yao        "UMask": "0x8"
96*cdb29a8fSJin Yao    },
97*cdb29a8fSJin Yao    {
98*cdb29a8fSJin Yao        "BriefDescription": "TMA slots available for an unhalted logical processor. General counter - architectural event",
99*cdb29a8fSJin Yao        "CollectPEBSRecord": "2",
100*cdb29a8fSJin Yao        "Counter": "0,1,2,3,4,5,6,7",
101*cdb29a8fSJin Yao        "EventCode": "0xa4",
102*cdb29a8fSJin Yao        "EventName": "TOPDOWN.SLOTS_P",
103*cdb29a8fSJin Yao        "PEBScounters": "0,1,2,3,4,5,6,7",
104*cdb29a8fSJin Yao        "PublicDescription": "Counts the number of available slots for an unhalted logical processor. The event increments by machine-width of the narrowest pipeline as employed by the Top-down Microarchitecture Analysis method. The count is distributed among unhalted logical processors (hyper-threads) who share the same physical core.",
105*cdb29a8fSJin Yao        "SampleAfterValue": "10000003",
106*cdb29a8fSJin Yao        "Speculative": "1",
107*cdb29a8fSJin Yao        "UMask": "0x1"
108*cdb29a8fSJin Yao    },
109*cdb29a8fSJin Yao    {
110*cdb29a8fSJin Yao        "BriefDescription": "TMA slots where no uops were being issued due to lack of back-end resources.",
111*cdb29a8fSJin Yao        "CollectPEBSRecord": "2",
112*cdb29a8fSJin Yao        "Counter": "0,1,2,3,4,5,6,7",
113*cdb29a8fSJin Yao        "EventCode": "0xa4",
114*cdb29a8fSJin Yao        "EventName": "TOPDOWN.BACKEND_BOUND_SLOTS",
115*cdb29a8fSJin Yao        "PEBScounters": "0,1,2,3,4,5,6,7",
116*cdb29a8fSJin Yao        "PublicDescription": "Counts the number of Top-down Microarchitecture Analysis (TMA) method's  slots where no micro-operations were being issued from front-end to back-end of the machine due to lack of back-end resources.",
117*cdb29a8fSJin Yao        "SampleAfterValue": "10000003",
118*cdb29a8fSJin Yao        "Speculative": "1",
119*cdb29a8fSJin Yao        "UMask": "0x2"
120*cdb29a8fSJin Yao    },
121*cdb29a8fSJin Yao    {
122*cdb29a8fSJin Yao        "BriefDescription": "Number of occurrences where a microcode assist is invoked by hardware.",
123*cdb29a8fSJin Yao        "CollectPEBSRecord": "2",
124*cdb29a8fSJin Yao        "Counter": "0,1,2,3,4,5,6,7",
125*cdb29a8fSJin Yao        "EventCode": "0xc1",
126*cdb29a8fSJin Yao        "EventName": "ASSISTS.ANY",
127*cdb29a8fSJin Yao        "PEBScounters": "0,1,2,3,4,5,6,7",
128*cdb29a8fSJin Yao        "PublicDescription": "Counts the number of occurrences where a microcode assist is invoked by hardware Examples include AD (page Access Dirty), FP and AVX related assists.",
129*cdb29a8fSJin Yao        "SampleAfterValue": "100003",
130*cdb29a8fSJin Yao        "Speculative": "1",
131*cdb29a8fSJin Yao        "UMask": "0x7"
132*cdb29a8fSJin Yao    },
133*cdb29a8fSJin Yao    {
134*cdb29a8fSJin Yao        "BriefDescription": "Counts demand data reads that hit a cacheline in the L3 where a snoop hit in another cores caches, data forwarding is required as the data is modified.",
135*cdb29a8fSJin Yao        "Counter": "0,1,2,3",
136*cdb29a8fSJin Yao        "EventCode": "0xB7, 0xBB",
137*cdb29a8fSJin Yao        "EventName": "OCR.DEMAND_DATA_RD.L3_HIT.SNOOP_HITM",
138*cdb29a8fSJin Yao        "MSRIndex": "0x1a6,0x1a7",
139*cdb29a8fSJin Yao        "MSRValue": "0x10003C0001",
140*cdb29a8fSJin Yao        "Offcore": "1",
141*cdb29a8fSJin Yao        "PublicDescription": "Offcore response can be programmed only with a specific pair of event select and counter MSR, and with specific event codes and predefine mask bit value in a dedicated MSR to specify attributes of the offcore transaction.",
142*cdb29a8fSJin Yao        "SampleAfterValue": "100003",
143*cdb29a8fSJin Yao        "UMask": "0x1"
144*cdb29a8fSJin Yao    },
145*cdb29a8fSJin Yao    {
146*cdb29a8fSJin Yao        "BriefDescription": "Counts demand data reads that hit a cacheline in the L3 where a snoop hit in another cores caches which forwarded the unmodified data to the requesting core.",
147*cdb29a8fSJin Yao        "Counter": "0,1,2,3",
148*cdb29a8fSJin Yao        "EventCode": "0xB7, 0xBB",
149*cdb29a8fSJin Yao        "EventName": "OCR.DEMAND_DATA_RD.L3_HIT.SNOOP_HIT_WITH_FWD",
150*cdb29a8fSJin Yao        "MSRIndex": "0x1a6,0x1a7",
151*cdb29a8fSJin Yao        "MSRValue": "0x8003C0001",
152*cdb29a8fSJin Yao        "Offcore": "1",
153*cdb29a8fSJin Yao        "PublicDescription": "Offcore response can be programmed only with a specific pair of event select and counter MSR, and with specific event codes and predefine mask bit value in a dedicated MSR to specify attributes of the offcore transaction.",
154*cdb29a8fSJin Yao        "SampleAfterValue": "100003",
155*cdb29a8fSJin Yao        "UMask": "0x1"
156*cdb29a8fSJin Yao    },
157*cdb29a8fSJin Yao    {
158*cdb29a8fSJin Yao        "BriefDescription": "Counts writes that generate a demand reads for ownership (RFO) request and software prefetches for exclusive ownership (PREFETCHW) that hit a cacheline in the L3 where a snoop hit in another cores caches, data forwarding is required as the data is modified.",
159*cdb29a8fSJin Yao        "Counter": "0,1,2,3",
160*cdb29a8fSJin Yao        "EventCode": "0xB7, 0xBB",
161*cdb29a8fSJin Yao        "EventName": "OCR.DEMAND_RFO.L3_HIT.SNOOP_HITM",
162*cdb29a8fSJin Yao        "MSRIndex": "0x1a6,0x1a7",
163*cdb29a8fSJin Yao        "MSRValue": "0x10003C0002",
164*cdb29a8fSJin Yao        "Offcore": "1",
165*cdb29a8fSJin Yao        "PublicDescription": "Offcore response can be programmed only with a specific pair of event select and counter MSR, and with specific event codes and predefine mask bit value in a dedicated MSR to specify attributes of the offcore transaction.",
166*cdb29a8fSJin Yao        "SampleAfterValue": "100003",
167*cdb29a8fSJin Yao        "UMask": "0x1"
168*cdb29a8fSJin Yao    },
169*cdb29a8fSJin Yao    {
170*cdb29a8fSJin Yao        "BriefDescription": "Counts streaming stores that have any type of response.",
171*cdb29a8fSJin Yao        "Counter": "0,1,2,3",
172*cdb29a8fSJin Yao        "EventCode": "0xB7, 0xBB",
173*cdb29a8fSJin Yao        "EventName": "OCR.STREAMING_WR.ANY_RESPONSE",
174*cdb29a8fSJin Yao        "MSRIndex": "0x1a6,0x1a7",
175*cdb29a8fSJin Yao        "MSRValue": "0x10800",
176*cdb29a8fSJin Yao        "Offcore": "1",
177*cdb29a8fSJin Yao        "PublicDescription": "Offcore response can be programmed only with a specific pair of event select and counter MSR, and with specific event codes and predefine mask bit value in a dedicated MSR to specify attributes of the offcore transaction.",
178*cdb29a8fSJin Yao        "SampleAfterValue": "100003",
179*cdb29a8fSJin Yao        "UMask": "0x1"
180*cdb29a8fSJin Yao    }
181*cdb29a8fSJin Yao]