xref: /freebsd/lib/libpmc/pmu-events/arch/x86/haswellx/pipeline.json (revision 18054d0220cfc8df9c9568c437bd6fbb59d53c3c)
1959826caSMatt Macy[
2959826caSMatt Macy    {
3959826caSMatt Macy        "BriefDescription": "Any uop executed by the Divider. (This includes all divide uops, sqrt, ...)",
4959826caSMatt Macy        "Counter": "0,1,2,3",
5*18054d02SAlexander Motin        "CounterHTOff": "0,1,2,3,4,5,6,7",
6*18054d02SAlexander Motin        "EventCode": "0x14",
7959826caSMatt Macy        "EventName": "ARITH.DIVIDER_UOPS",
8959826caSMatt Macy        "SampleAfterValue": "2000003",
9*18054d02SAlexander Motin        "UMask": "0x2"
10959826caSMatt Macy    },
11959826caSMatt Macy    {
12959826caSMatt Macy        "BriefDescription": "Speculative and retired  branches",
13959826caSMatt Macy        "Counter": "0,1,2,3",
14*18054d02SAlexander Motin        "CounterHTOff": "0,1,2,3,4,5,6,7",
15*18054d02SAlexander Motin        "EventCode": "0x88",
16959826caSMatt Macy        "EventName": "BR_INST_EXEC.ALL_BRANCHES",
17959826caSMatt Macy        "PublicDescription": "Counts all near executed branches (not necessarily retired).",
18959826caSMatt Macy        "SampleAfterValue": "200003",
19*18054d02SAlexander Motin        "UMask": "0xff"
20959826caSMatt Macy    },
21959826caSMatt Macy    {
22*18054d02SAlexander Motin        "BriefDescription": "Speculative and retired macro-conditional branches.",
23959826caSMatt Macy        "Counter": "0,1,2,3",
24*18054d02SAlexander Motin        "CounterHTOff": "0,1,2,3,4,5,6,7",
25*18054d02SAlexander Motin        "EventCode": "0x88",
26*18054d02SAlexander Motin        "EventName": "BR_INST_EXEC.ALL_CONDITIONAL",
27959826caSMatt Macy        "SampleAfterValue": "200003",
28*18054d02SAlexander Motin        "UMask": "0xc1"
29959826caSMatt Macy    },
30959826caSMatt Macy    {
31*18054d02SAlexander Motin        "BriefDescription": "Speculative and retired macro-unconditional branches excluding calls and indirects.",
32959826caSMatt Macy        "Counter": "0,1,2,3",
33*18054d02SAlexander Motin        "CounterHTOff": "0,1,2,3,4,5,6,7",
34*18054d02SAlexander Motin        "EventCode": "0x88",
35*18054d02SAlexander Motin        "EventName": "BR_INST_EXEC.ALL_DIRECT_JMP",
36959826caSMatt Macy        "SampleAfterValue": "200003",
37*18054d02SAlexander Motin        "UMask": "0xc2"
38959826caSMatt Macy    },
39959826caSMatt Macy    {
40*18054d02SAlexander Motin        "BriefDescription": "Speculative and retired direct near calls.",
41959826caSMatt Macy        "Counter": "0,1,2,3",
42*18054d02SAlexander Motin        "CounterHTOff": "0,1,2,3,4,5,6,7",
43*18054d02SAlexander Motin        "EventCode": "0x88",
44*18054d02SAlexander Motin        "EventName": "BR_INST_EXEC.ALL_DIRECT_NEAR_CALL",
45959826caSMatt Macy        "SampleAfterValue": "200003",
46*18054d02SAlexander Motin        "UMask": "0xd0"
47959826caSMatt Macy    },
48959826caSMatt Macy    {
49*18054d02SAlexander Motin        "BriefDescription": "Speculative and retired indirect branches excluding calls and returns.",
50959826caSMatt Macy        "Counter": "0,1,2,3",
51*18054d02SAlexander Motin        "CounterHTOff": "0,1,2,3,4,5,6,7",
52*18054d02SAlexander Motin        "EventCode": "0x88",
53*18054d02SAlexander Motin        "EventName": "BR_INST_EXEC.ALL_INDIRECT_JUMP_NON_CALL_RET",
54959826caSMatt Macy        "SampleAfterValue": "200003",
55*18054d02SAlexander Motin        "UMask": "0xc4"
56959826caSMatt Macy    },
57959826caSMatt Macy    {
58*18054d02SAlexander Motin        "BriefDescription": "Speculative and retired indirect return branches.",
59959826caSMatt Macy        "Counter": "0,1,2,3",
60*18054d02SAlexander Motin        "CounterHTOff": "0,1,2,3,4,5,6,7",
61*18054d02SAlexander Motin        "EventCode": "0x88",
62*18054d02SAlexander Motin        "EventName": "BR_INST_EXEC.ALL_INDIRECT_NEAR_RETURN",
63959826caSMatt Macy        "SampleAfterValue": "200003",
64*18054d02SAlexander Motin        "UMask": "0xc8"
65959826caSMatt Macy    },
66959826caSMatt Macy    {
67*18054d02SAlexander Motin        "BriefDescription": "Not taken macro-conditional branches.",
68959826caSMatt Macy        "Counter": "0,1,2,3",
69*18054d02SAlexander Motin        "CounterHTOff": "0,1,2,3,4,5,6,7",
70*18054d02SAlexander Motin        "EventCode": "0x88",
71*18054d02SAlexander Motin        "EventName": "BR_INST_EXEC.NONTAKEN_CONDITIONAL",
72959826caSMatt Macy        "SampleAfterValue": "200003",
73*18054d02SAlexander Motin        "UMask": "0x41"
74959826caSMatt Macy    },
75959826caSMatt Macy    {
76*18054d02SAlexander Motin        "BriefDescription": "Taken speculative and retired macro-conditional branches.",
77959826caSMatt Macy        "Counter": "0,1,2,3",
78*18054d02SAlexander Motin        "CounterHTOff": "0,1,2,3,4,5,6,7",
79*18054d02SAlexander Motin        "EventCode": "0x88",
80*18054d02SAlexander Motin        "EventName": "BR_INST_EXEC.TAKEN_CONDITIONAL",
81959826caSMatt Macy        "SampleAfterValue": "200003",
82*18054d02SAlexander Motin        "UMask": "0x81"
83959826caSMatt Macy    },
84959826caSMatt Macy    {
85*18054d02SAlexander Motin        "BriefDescription": "Taken speculative and retired macro-conditional branch instructions excluding calls and indirects.",
86959826caSMatt Macy        "Counter": "0,1,2,3",
87*18054d02SAlexander Motin        "CounterHTOff": "0,1,2,3,4,5,6,7",
88*18054d02SAlexander Motin        "EventCode": "0x88",
89*18054d02SAlexander Motin        "EventName": "BR_INST_EXEC.TAKEN_DIRECT_JUMP",
90959826caSMatt Macy        "SampleAfterValue": "200003",
91*18054d02SAlexander Motin        "UMask": "0x82"
92959826caSMatt Macy    },
93959826caSMatt Macy    {
94*18054d02SAlexander Motin        "BriefDescription": "Taken speculative and retired direct near calls.",
95959826caSMatt Macy        "Counter": "0,1,2,3",
96*18054d02SAlexander Motin        "CounterHTOff": "0,1,2,3,4,5,6,7",
97*18054d02SAlexander Motin        "EventCode": "0x88",
98*18054d02SAlexander Motin        "EventName": "BR_INST_EXEC.TAKEN_DIRECT_NEAR_CALL",
99*18054d02SAlexander Motin        "SampleAfterValue": "200003",
100*18054d02SAlexander Motin        "UMask": "0x90"
101959826caSMatt Macy    },
102959826caSMatt Macy    {
103*18054d02SAlexander Motin        "BriefDescription": "Taken speculative and retired indirect branches excluding calls and returns.",
104959826caSMatt Macy        "Counter": "0,1,2,3",
105*18054d02SAlexander Motin        "CounterHTOff": "0,1,2,3,4,5,6,7",
106*18054d02SAlexander Motin        "EventCode": "0x88",
107*18054d02SAlexander Motin        "EventName": "BR_INST_EXEC.TAKEN_INDIRECT_JUMP_NON_CALL_RET",
108*18054d02SAlexander Motin        "SampleAfterValue": "200003",
109*18054d02SAlexander Motin        "UMask": "0x84"
110959826caSMatt Macy    },
111959826caSMatt Macy    {
112*18054d02SAlexander Motin        "BriefDescription": "Taken speculative and retired indirect calls.",
113959826caSMatt Macy        "Counter": "0,1,2,3",
114*18054d02SAlexander Motin        "CounterHTOff": "0,1,2,3,4,5,6,7",
115*18054d02SAlexander Motin        "EventCode": "0x88",
116*18054d02SAlexander Motin        "EventName": "BR_INST_EXEC.TAKEN_INDIRECT_NEAR_CALL",
117*18054d02SAlexander Motin        "SampleAfterValue": "200003",
118*18054d02SAlexander Motin        "UMask": "0xa0"
119959826caSMatt Macy    },
120959826caSMatt Macy    {
121*18054d02SAlexander Motin        "BriefDescription": "Taken speculative and retired indirect branches with return mnemonic.",
122959826caSMatt Macy        "Counter": "0,1,2,3",
123*18054d02SAlexander Motin        "CounterHTOff": "0,1,2,3,4,5,6,7",
124*18054d02SAlexander Motin        "EventCode": "0x88",
125*18054d02SAlexander Motin        "EventName": "BR_INST_EXEC.TAKEN_INDIRECT_NEAR_RETURN",
126*18054d02SAlexander Motin        "SampleAfterValue": "200003",
127*18054d02SAlexander Motin        "UMask": "0x88"
128959826caSMatt Macy    },
129959826caSMatt Macy    {
130959826caSMatt Macy        "BriefDescription": "All (macro) branch instructions retired.",
131959826caSMatt Macy        "Counter": "0,1,2,3",
132*18054d02SAlexander Motin        "CounterHTOff": "0,1,2,3,4,5,6,7",
133*18054d02SAlexander Motin        "EventCode": "0xC4",
134959826caSMatt Macy        "EventName": "BR_INST_RETIRED.ALL_BRANCHES",
135959826caSMatt Macy        "PublicDescription": "Branch instructions at retirement.",
136*18054d02SAlexander Motin        "SampleAfterValue": "400009"
137959826caSMatt Macy    },
138959826caSMatt Macy    {
139*18054d02SAlexander Motin        "BriefDescription": "All (macro) branch instructions retired.",
140959826caSMatt Macy        "Counter": "0,1,2,3",
141*18054d02SAlexander Motin        "CounterHTOff": "0,1,2,3",
142*18054d02SAlexander Motin        "EventCode": "0xC4",
143*18054d02SAlexander Motin        "EventName": "BR_INST_RETIRED.ALL_BRANCHES_PEBS",
144*18054d02SAlexander Motin        "PEBS": "2",
145*18054d02SAlexander Motin        "SampleAfterValue": "400009",
146*18054d02SAlexander Motin        "UMask": "0x4"
147*18054d02SAlexander Motin    },
148*18054d02SAlexander Motin    {
149*18054d02SAlexander Motin        "BriefDescription": "Conditional branch instructions retired.",
150*18054d02SAlexander Motin        "Counter": "0,1,2,3",
151*18054d02SAlexander Motin        "CounterHTOff": "0,1,2,3,4,5,6,7",
152*18054d02SAlexander Motin        "EventCode": "0xC4",
153959826caSMatt Macy        "EventName": "BR_INST_RETIRED.CONDITIONAL",
154*18054d02SAlexander Motin        "PEBS": "1",
15592b14858SMatt Macy        "PublicDescription": "Counts the number of conditional branch instructions retired.",
156959826caSMatt Macy        "SampleAfterValue": "400009",
157*18054d02SAlexander Motin        "UMask": "0x1"
158959826caSMatt Macy    },
159959826caSMatt Macy    {
160959826caSMatt Macy        "BriefDescription": "Far branch instructions retired.",
161959826caSMatt Macy        "Counter": "0,1,2,3",
162*18054d02SAlexander Motin        "CounterHTOff": "0,1,2,3,4,5,6,7",
163*18054d02SAlexander Motin        "EventCode": "0xC4",
164959826caSMatt Macy        "EventName": "BR_INST_RETIRED.FAR_BRANCH",
165959826caSMatt Macy        "PublicDescription": "Number of far branches retired.",
166959826caSMatt Macy        "SampleAfterValue": "100003",
167*18054d02SAlexander Motin        "UMask": "0x40"
168959826caSMatt Macy    },
169959826caSMatt Macy    {
170*18054d02SAlexander Motin        "BriefDescription": "Direct and indirect near call instructions retired.",
171*18054d02SAlexander Motin        "Counter": "0,1,2,3",
172*18054d02SAlexander Motin        "CounterHTOff": "0,1,2,3,4,5,6,7",
173*18054d02SAlexander Motin        "EventCode": "0xC4",
174*18054d02SAlexander Motin        "EventName": "BR_INST_RETIRED.NEAR_CALL",
175*18054d02SAlexander Motin        "PEBS": "1",
176*18054d02SAlexander Motin        "SampleAfterValue": "100003",
177*18054d02SAlexander Motin        "UMask": "0x2"
178*18054d02SAlexander Motin    },
179*18054d02SAlexander Motin    {
180*18054d02SAlexander Motin        "BriefDescription": "Direct and indirect macro near call instructions retired (captured in ring 3).",
181*18054d02SAlexander Motin        "Counter": "0,1,2,3",
182*18054d02SAlexander Motin        "CounterHTOff": "0,1,2,3,4,5,6,7",
183*18054d02SAlexander Motin        "EventCode": "0xC4",
184*18054d02SAlexander Motin        "EventName": "BR_INST_RETIRED.NEAR_CALL_R3",
185*18054d02SAlexander Motin        "PEBS": "1",
186*18054d02SAlexander Motin        "SampleAfterValue": "100003",
187*18054d02SAlexander Motin        "UMask": "0x2"
188*18054d02SAlexander Motin    },
189*18054d02SAlexander Motin    {
190*18054d02SAlexander Motin        "BriefDescription": "Return instructions retired.",
191*18054d02SAlexander Motin        "Counter": "0,1,2,3",
192*18054d02SAlexander Motin        "CounterHTOff": "0,1,2,3,4,5,6,7",
193*18054d02SAlexander Motin        "EventCode": "0xC4",
194*18054d02SAlexander Motin        "EventName": "BR_INST_RETIRED.NEAR_RETURN",
195*18054d02SAlexander Motin        "PEBS": "1",
196*18054d02SAlexander Motin        "PublicDescription": "Counts the number of near return instructions retired.",
197*18054d02SAlexander Motin        "SampleAfterValue": "100003",
198*18054d02SAlexander Motin        "UMask": "0x8"
199*18054d02SAlexander Motin    },
200*18054d02SAlexander Motin    {
201*18054d02SAlexander Motin        "BriefDescription": "Taken branch instructions retired.",
202*18054d02SAlexander Motin        "Counter": "0,1,2,3",
203*18054d02SAlexander Motin        "CounterHTOff": "0,1,2,3,4,5,6,7",
204*18054d02SAlexander Motin        "EventCode": "0xC4",
205*18054d02SAlexander Motin        "EventName": "BR_INST_RETIRED.NEAR_TAKEN",
206*18054d02SAlexander Motin        "PEBS": "1",
207*18054d02SAlexander Motin        "PublicDescription": "Number of near taken branches retired.",
208*18054d02SAlexander Motin        "SampleAfterValue": "400009",
209*18054d02SAlexander Motin        "UMask": "0x20"
210*18054d02SAlexander Motin    },
211*18054d02SAlexander Motin    {
212*18054d02SAlexander Motin        "BriefDescription": "Not taken branch instructions retired.",
213*18054d02SAlexander Motin        "Counter": "0,1,2,3",
214*18054d02SAlexander Motin        "CounterHTOff": "0,1,2,3,4,5,6,7",
215*18054d02SAlexander Motin        "EventCode": "0xC4",
216*18054d02SAlexander Motin        "EventName": "BR_INST_RETIRED.NOT_TAKEN",
217*18054d02SAlexander Motin        "PublicDescription": "Counts the number of not taken branch instructions retired.",
218*18054d02SAlexander Motin        "SampleAfterValue": "400009",
219*18054d02SAlexander Motin        "UMask": "0x10"
220*18054d02SAlexander Motin    },
221*18054d02SAlexander Motin    {
222*18054d02SAlexander Motin        "BriefDescription": "Speculative and retired mispredicted macro conditional branches",
223*18054d02SAlexander Motin        "Counter": "0,1,2,3",
224*18054d02SAlexander Motin        "CounterHTOff": "0,1,2,3,4,5,6,7",
225*18054d02SAlexander Motin        "EventCode": "0x89",
226*18054d02SAlexander Motin        "EventName": "BR_MISP_EXEC.ALL_BRANCHES",
227*18054d02SAlexander Motin        "PublicDescription": "Counts all near executed branches (not necessarily retired).",
228*18054d02SAlexander Motin        "SampleAfterValue": "200003",
229*18054d02SAlexander Motin        "UMask": "0xff"
230*18054d02SAlexander Motin    },
231*18054d02SAlexander Motin    {
232*18054d02SAlexander Motin        "BriefDescription": "Speculative and retired mispredicted macro conditional branches.",
233*18054d02SAlexander Motin        "Counter": "0,1,2,3",
234*18054d02SAlexander Motin        "CounterHTOff": "0,1,2,3,4,5,6,7",
235*18054d02SAlexander Motin        "EventCode": "0x89",
236*18054d02SAlexander Motin        "EventName": "BR_MISP_EXEC.ALL_CONDITIONAL",
237*18054d02SAlexander Motin        "SampleAfterValue": "200003",
238*18054d02SAlexander Motin        "UMask": "0xc1"
239*18054d02SAlexander Motin    },
240*18054d02SAlexander Motin    {
241*18054d02SAlexander Motin        "BriefDescription": "Mispredicted indirect branches excluding calls and returns.",
242*18054d02SAlexander Motin        "Counter": "0,1,2,3",
243*18054d02SAlexander Motin        "CounterHTOff": "0,1,2,3,4,5,6,7",
244*18054d02SAlexander Motin        "EventCode": "0x89",
245*18054d02SAlexander Motin        "EventName": "BR_MISP_EXEC.ALL_INDIRECT_JUMP_NON_CALL_RET",
246*18054d02SAlexander Motin        "SampleAfterValue": "200003",
247*18054d02SAlexander Motin        "UMask": "0xc4"
248*18054d02SAlexander Motin    },
249*18054d02SAlexander Motin    {
250*18054d02SAlexander Motin        "BriefDescription": "Not taken speculative and retired mispredicted macro conditional branches.",
251*18054d02SAlexander Motin        "Counter": "0,1,2,3",
252*18054d02SAlexander Motin        "CounterHTOff": "0,1,2,3,4,5,6,7",
253*18054d02SAlexander Motin        "EventCode": "0x89",
254*18054d02SAlexander Motin        "EventName": "BR_MISP_EXEC.NONTAKEN_CONDITIONAL",
255*18054d02SAlexander Motin        "SampleAfterValue": "200003",
256*18054d02SAlexander Motin        "UMask": "0x41"
257*18054d02SAlexander Motin    },
258*18054d02SAlexander Motin    {
259*18054d02SAlexander Motin        "BriefDescription": "Taken speculative and retired mispredicted macro conditional branches.",
260*18054d02SAlexander Motin        "Counter": "0,1,2,3",
261*18054d02SAlexander Motin        "CounterHTOff": "0,1,2,3,4,5,6,7",
262*18054d02SAlexander Motin        "EventCode": "0x89",
263*18054d02SAlexander Motin        "EventName": "BR_MISP_EXEC.TAKEN_CONDITIONAL",
264*18054d02SAlexander Motin        "SampleAfterValue": "200003",
265*18054d02SAlexander Motin        "UMask": "0x81"
266*18054d02SAlexander Motin    },
267*18054d02SAlexander Motin    {
268*18054d02SAlexander Motin        "BriefDescription": "Taken speculative and retired mispredicted indirect branches excluding calls and returns.",
269*18054d02SAlexander Motin        "Counter": "0,1,2,3",
270*18054d02SAlexander Motin        "CounterHTOff": "0,1,2,3,4,5,6,7",
271*18054d02SAlexander Motin        "EventCode": "0x89",
272*18054d02SAlexander Motin        "EventName": "BR_MISP_EXEC.TAKEN_INDIRECT_JUMP_NON_CALL_RET",
273*18054d02SAlexander Motin        "SampleAfterValue": "200003",
274*18054d02SAlexander Motin        "UMask": "0x84"
275*18054d02SAlexander Motin    },
276*18054d02SAlexander Motin    {
277*18054d02SAlexander Motin        "BriefDescription": "Taken speculative and retired mispredicted indirect calls.",
278*18054d02SAlexander Motin        "Counter": "0,1,2,3",
279*18054d02SAlexander Motin        "CounterHTOff": "0,1,2,3,4,5,6,7",
280*18054d02SAlexander Motin        "EventCode": "0x89",
281*18054d02SAlexander Motin        "EventName": "BR_MISP_EXEC.TAKEN_INDIRECT_NEAR_CALL",
282*18054d02SAlexander Motin        "SampleAfterValue": "200003",
283*18054d02SAlexander Motin        "UMask": "0xa0"
284*18054d02SAlexander Motin    },
285*18054d02SAlexander Motin    {
286*18054d02SAlexander Motin        "BriefDescription": "Taken speculative and retired mispredicted indirect branches with return mnemonic.",
287*18054d02SAlexander Motin        "Counter": "0,1,2,3",
288*18054d02SAlexander Motin        "CounterHTOff": "0,1,2,3,4,5,6,7",
289*18054d02SAlexander Motin        "EventCode": "0x89",
290*18054d02SAlexander Motin        "EventName": "BR_MISP_EXEC.TAKEN_RETURN_NEAR",
291*18054d02SAlexander Motin        "SampleAfterValue": "200003",
292*18054d02SAlexander Motin        "UMask": "0x88"
293*18054d02SAlexander Motin    },
294*18054d02SAlexander Motin    {
295959826caSMatt Macy        "BriefDescription": "All mispredicted macro branch instructions retired.",
296959826caSMatt Macy        "Counter": "0,1,2,3",
297*18054d02SAlexander Motin        "CounterHTOff": "0,1,2,3,4,5,6,7",
298*18054d02SAlexander Motin        "EventCode": "0xC5",
299959826caSMatt Macy        "EventName": "BR_MISP_RETIRED.ALL_BRANCHES",
300959826caSMatt Macy        "PublicDescription": "Mispredicted branch instructions at retirement.",
301*18054d02SAlexander Motin        "SampleAfterValue": "400009"
302959826caSMatt Macy    },
303959826caSMatt Macy    {
304959826caSMatt Macy        "BriefDescription": "Mispredicted macro branch instructions retired.",
305959826caSMatt Macy        "Counter": "0,1,2,3",
306*18054d02SAlexander Motin        "CounterHTOff": "0,1,2,3",
307*18054d02SAlexander Motin        "EventCode": "0xC5",
308959826caSMatt Macy        "EventName": "BR_MISP_RETIRED.ALL_BRANCHES_PEBS",
309*18054d02SAlexander Motin        "PEBS": "2",
310959826caSMatt Macy        "PublicDescription": "This event counts all mispredicted branch instructions retired. This is a precise event.",
311959826caSMatt Macy        "SampleAfterValue": "400009",
312*18054d02SAlexander Motin        "UMask": "0x4"
313959826caSMatt Macy    },
314959826caSMatt Macy    {
315*18054d02SAlexander Motin        "BriefDescription": "Mispredicted conditional branch instructions retired.",
316959826caSMatt Macy        "Counter": "0,1,2,3",
317*18054d02SAlexander Motin        "CounterHTOff": "0,1,2,3,4,5,6,7",
318*18054d02SAlexander Motin        "EventCode": "0xC5",
319*18054d02SAlexander Motin        "EventName": "BR_MISP_RETIRED.CONDITIONAL",
320*18054d02SAlexander Motin        "PEBS": "1",
321*18054d02SAlexander Motin        "SampleAfterValue": "400009",
322*18054d02SAlexander Motin        "UMask": "0x1"
323*18054d02SAlexander Motin    },
324*18054d02SAlexander Motin    {
325*18054d02SAlexander Motin        "BriefDescription": "number of near branch instructions retired that were mispredicted and taken.",
326*18054d02SAlexander Motin        "Counter": "0,1,2,3",
327*18054d02SAlexander Motin        "CounterHTOff": "0,1,2,3,4,5,6,7",
328*18054d02SAlexander Motin        "EventCode": "0xC5",
329959826caSMatt Macy        "EventName": "BR_MISP_RETIRED.NEAR_TAKEN",
330*18054d02SAlexander Motin        "PEBS": "1",
33192b14858SMatt Macy        "PublicDescription": "Number of near branch instructions retired that were taken but mispredicted.",
332959826caSMatt Macy        "SampleAfterValue": "400009",
333*18054d02SAlexander Motin        "UMask": "0x20"
334959826caSMatt Macy    },
335959826caSMatt Macy    {
336*18054d02SAlexander Motin        "BriefDescription": "Count XClk pulses when this thread is unhalted and the other thread is halted.",
337*18054d02SAlexander Motin        "Counter": "0,1,2,3",
338*18054d02SAlexander Motin        "CounterHTOff": "0,1,2,3",
339*18054d02SAlexander Motin        "EventCode": "0x3c",
340*18054d02SAlexander Motin        "EventName": "CPU_CLK_THREAD_UNHALTED.ONE_THREAD_ACTIVE",
341*18054d02SAlexander Motin        "SampleAfterValue": "100003",
342*18054d02SAlexander Motin        "UMask": "0x2"
343*18054d02SAlexander Motin    },
344*18054d02SAlexander Motin    {
345*18054d02SAlexander Motin        "BriefDescription": "Reference cycles when the thread is unhalted (counts at 100 MHz rate)",
346*18054d02SAlexander Motin        "Counter": "0,1,2,3",
347*18054d02SAlexander Motin        "CounterHTOff": "0,1,2,3,4,5,6,7",
348*18054d02SAlexander Motin        "EventCode": "0x3C",
349*18054d02SAlexander Motin        "EventName": "CPU_CLK_THREAD_UNHALTED.REF_XCLK",
350*18054d02SAlexander Motin        "PublicDescription": "Increments at the frequency of XCLK (100 MHz) when not halted.",
351*18054d02SAlexander Motin        "SampleAfterValue": "100003",
352*18054d02SAlexander Motin        "UMask": "0x1"
353*18054d02SAlexander Motin    },
354*18054d02SAlexander Motin    {
355*18054d02SAlexander Motin        "AnyThread": "1",
356*18054d02SAlexander Motin        "BriefDescription": "Reference cycles when the at least one thread on the physical core is unhalted (counts at 100 MHz rate)",
357*18054d02SAlexander Motin        "Counter": "0,1,2,3",
358*18054d02SAlexander Motin        "CounterHTOff": "0,1,2,3,4,5,6,7",
359*18054d02SAlexander Motin        "EventCode": "0x3C",
360*18054d02SAlexander Motin        "EventName": "CPU_CLK_THREAD_UNHALTED.REF_XCLK_ANY",
361*18054d02SAlexander Motin        "PublicDescription": "Reference cycles when the at least one thread on the physical core is unhalted (counts at 100 MHz rate).",
362*18054d02SAlexander Motin        "SampleAfterValue": "100003",
363*18054d02SAlexander Motin        "UMask": "0x1"
364*18054d02SAlexander Motin    },
365*18054d02SAlexander Motin    {
366*18054d02SAlexander Motin        "BriefDescription": "Count XClk pulses when this thread is unhalted and the other thread is halted.",
367*18054d02SAlexander Motin        "Counter": "0,1,2,3",
368*18054d02SAlexander Motin        "CounterHTOff": "0,1,2,3,4,5,6,7",
369*18054d02SAlexander Motin        "EventCode": "0x3C",
370*18054d02SAlexander Motin        "EventName": "CPU_CLK_UNHALTED.ONE_THREAD_ACTIVE",
371*18054d02SAlexander Motin        "SampleAfterValue": "100003",
372*18054d02SAlexander Motin        "UMask": "0x2"
373*18054d02SAlexander Motin    },
374*18054d02SAlexander Motin    {
375*18054d02SAlexander Motin        "BriefDescription": "Reference cycles when the core is not in halt state.",
376*18054d02SAlexander Motin        "Counter": "Fixed counter 2",
377*18054d02SAlexander Motin        "CounterHTOff": "Fixed counter 2",
378*18054d02SAlexander Motin        "EventName": "CPU_CLK_UNHALTED.REF_TSC",
379*18054d02SAlexander Motin        "PublicDescription": "This event counts the number of reference cycles when the core is not in a halt state. The core enters the halt state when it is running the HLT instruction or the MWAIT instruction. This event is not affected by core frequency changes (for example, P states, TM2 transitions) but has the same incrementing frequency as the time stamp counter. This event can approximate elapsed time while the core was not in a halt state.",
380*18054d02SAlexander Motin        "SampleAfterValue": "2000003",
381*18054d02SAlexander Motin        "UMask": "0x3"
382*18054d02SAlexander Motin    },
383*18054d02SAlexander Motin    {
384*18054d02SAlexander Motin        "BriefDescription": "Reference cycles when the thread is unhalted (counts at 100 MHz rate)",
385*18054d02SAlexander Motin        "Counter": "0,1,2,3",
386*18054d02SAlexander Motin        "CounterHTOff": "0,1,2,3,4,5,6,7",
387*18054d02SAlexander Motin        "EventCode": "0x3C",
388*18054d02SAlexander Motin        "EventName": "CPU_CLK_UNHALTED.REF_XCLK",
389*18054d02SAlexander Motin        "PublicDescription": "Reference cycles when the thread is unhalted. (counts at 100 MHz rate)",
390*18054d02SAlexander Motin        "SampleAfterValue": "100003",
391*18054d02SAlexander Motin        "UMask": "0x1"
392*18054d02SAlexander Motin    },
393*18054d02SAlexander Motin    {
394*18054d02SAlexander Motin        "AnyThread": "1",
395*18054d02SAlexander Motin        "BriefDescription": "Reference cycles when the at least one thread on the physical core is unhalted (counts at 100 MHz rate)",
396*18054d02SAlexander Motin        "Counter": "0,1,2,3",
397*18054d02SAlexander Motin        "CounterHTOff": "0,1,2,3,4,5,6,7",
398*18054d02SAlexander Motin        "EventCode": "0x3C",
399*18054d02SAlexander Motin        "EventName": "CPU_CLK_UNHALTED.REF_XCLK_ANY",
400*18054d02SAlexander Motin        "PublicDescription": "Reference cycles when the at least one thread on the physical core is unhalted (counts at 100 MHz rate).",
401*18054d02SAlexander Motin        "SampleAfterValue": "100003",
402*18054d02SAlexander Motin        "UMask": "0x1"
403*18054d02SAlexander Motin    },
404*18054d02SAlexander Motin    {
405*18054d02SAlexander Motin        "BriefDescription": "Core cycles when the thread is not in halt state.",
406*18054d02SAlexander Motin        "Counter": "Fixed counter 1",
407*18054d02SAlexander Motin        "CounterHTOff": "Fixed counter 1",
408*18054d02SAlexander Motin        "EventName": "CPU_CLK_UNHALTED.THREAD",
409*18054d02SAlexander Motin        "PublicDescription": "This event counts the number of thread cycles while the thread is not in a halt state. The thread enters the halt state when it is running the HLT instruction. The core frequency may change from time to time due to power or thermal throttling.",
410*18054d02SAlexander Motin        "SampleAfterValue": "2000003",
411*18054d02SAlexander Motin        "UMask": "0x2"
412*18054d02SAlexander Motin    },
413*18054d02SAlexander Motin    {
414*18054d02SAlexander Motin        "AnyThread": "1",
415*18054d02SAlexander Motin        "BriefDescription": "Core cycles when at least one thread on the physical core is not in halt state.",
416*18054d02SAlexander Motin        "Counter": "Fixed counter 1",
417*18054d02SAlexander Motin        "CounterHTOff": "Fixed counter 1",
418*18054d02SAlexander Motin        "EventName": "CPU_CLK_UNHALTED.THREAD_ANY",
419*18054d02SAlexander Motin        "SampleAfterValue": "2000003",
420*18054d02SAlexander Motin        "UMask": "0x2"
421*18054d02SAlexander Motin    },
422*18054d02SAlexander Motin    {
423*18054d02SAlexander Motin        "BriefDescription": "Thread cycles when thread is not in halt state",
424*18054d02SAlexander Motin        "Counter": "0,1,2,3",
425*18054d02SAlexander Motin        "CounterHTOff": "0,1,2,3,4,5,6,7",
426*18054d02SAlexander Motin        "EventCode": "0x3C",
427*18054d02SAlexander Motin        "EventName": "CPU_CLK_UNHALTED.THREAD_P",
428*18054d02SAlexander Motin        "PublicDescription": "Counts the number of thread cycles while the thread is not in a halt state. The thread enters the halt state when it is running the HLT instruction. The core frequency may change from time to time due to power or thermal throttling.",
429*18054d02SAlexander Motin        "SampleAfterValue": "2000003"
430*18054d02SAlexander Motin    },
431*18054d02SAlexander Motin    {
432*18054d02SAlexander Motin        "AnyThread": "1",
433*18054d02SAlexander Motin        "BriefDescription": "Core cycles when at least one thread on the physical core is not in halt state.",
434*18054d02SAlexander Motin        "Counter": "0,1,2,3",
435*18054d02SAlexander Motin        "CounterHTOff": "0,1,2,3,4,5,6,7",
436*18054d02SAlexander Motin        "EventCode": "0x3C",
437*18054d02SAlexander Motin        "EventName": "CPU_CLK_UNHALTED.THREAD_P_ANY",
438*18054d02SAlexander Motin        "SampleAfterValue": "2000003"
439*18054d02SAlexander Motin    },
440*18054d02SAlexander Motin    {
441*18054d02SAlexander Motin        "BriefDescription": "Cycles with pending L1 cache miss loads.",
442*18054d02SAlexander Motin        "Counter": "2",
443*18054d02SAlexander Motin        "CounterHTOff": "2",
444*18054d02SAlexander Motin        "CounterMask": "8",
445*18054d02SAlexander Motin        "EventCode": "0xA3",
446*18054d02SAlexander Motin        "EventName": "CYCLE_ACTIVITY.CYCLES_L1D_PENDING",
447*18054d02SAlexander Motin        "PublicDescription": "Cycles with pending L1 data cache miss loads. Set Cmask=8 to count cycle.",
448*18054d02SAlexander Motin        "SampleAfterValue": "2000003",
449*18054d02SAlexander Motin        "UMask": "0x8"
450*18054d02SAlexander Motin    },
451*18054d02SAlexander Motin    {
452*18054d02SAlexander Motin        "BriefDescription": "Cycles with pending L2 cache miss loads.",
453*18054d02SAlexander Motin        "Counter": "0,1,2,3",
454*18054d02SAlexander Motin        "CounterHTOff": "0,1,2,3,4,5,6,7",
455*18054d02SAlexander Motin        "CounterMask": "1",
456*18054d02SAlexander Motin        "Errata": "HSD78, HSM63, HSM80",
457*18054d02SAlexander Motin        "EventCode": "0xa3",
458*18054d02SAlexander Motin        "EventName": "CYCLE_ACTIVITY.CYCLES_L2_PENDING",
459*18054d02SAlexander Motin        "PublicDescription": "Cycles with pending L2 miss loads. Set Cmask=2 to count cycle.",
460*18054d02SAlexander Motin        "SampleAfterValue": "2000003",
461*18054d02SAlexander Motin        "UMask": "0x1"
462*18054d02SAlexander Motin    },
463*18054d02SAlexander Motin    {
464*18054d02SAlexander Motin        "BriefDescription": "Cycles with pending memory loads.",
465*18054d02SAlexander Motin        "Counter": "0,1,2,3",
466*18054d02SAlexander Motin        "CounterHTOff": "0,1,2,3",
467*18054d02SAlexander Motin        "CounterMask": "2",
468*18054d02SAlexander Motin        "EventCode": "0xA3",
469*18054d02SAlexander Motin        "EventName": "CYCLE_ACTIVITY.CYCLES_LDM_PENDING",
470*18054d02SAlexander Motin        "PublicDescription": "Cycles with pending memory loads. Set Cmask=2 to count cycle.",
471*18054d02SAlexander Motin        "SampleAfterValue": "2000003",
472*18054d02SAlexander Motin        "UMask": "0x2"
473*18054d02SAlexander Motin    },
474*18054d02SAlexander Motin    {
475*18054d02SAlexander Motin        "BriefDescription": "This event increments by 1 for every cycle where there was no execute for this thread.",
476*18054d02SAlexander Motin        "Counter": "0,1,2,3",
477*18054d02SAlexander Motin        "CounterHTOff": "0,1,2,3",
478*18054d02SAlexander Motin        "CounterMask": "4",
479*18054d02SAlexander Motin        "EventCode": "0xA3",
480*18054d02SAlexander Motin        "EventName": "CYCLE_ACTIVITY.CYCLES_NO_EXECUTE",
481*18054d02SAlexander Motin        "PublicDescription": "This event counts cycles during which no instructions were executed in the execution stage of the pipeline.",
482*18054d02SAlexander Motin        "SampleAfterValue": "2000003",
483*18054d02SAlexander Motin        "UMask": "0x4"
484*18054d02SAlexander Motin    },
485*18054d02SAlexander Motin    {
486*18054d02SAlexander Motin        "BriefDescription": "Execution stalls due to L1 data cache misses",
487*18054d02SAlexander Motin        "Counter": "2",
488*18054d02SAlexander Motin        "CounterHTOff": "2",
489*18054d02SAlexander Motin        "CounterMask": "12",
490*18054d02SAlexander Motin        "EventCode": "0xA3",
491*18054d02SAlexander Motin        "EventName": "CYCLE_ACTIVITY.STALLS_L1D_PENDING",
492*18054d02SAlexander Motin        "PublicDescription": "Execution stalls due to L1 data cache miss loads. Set Cmask=0CH.",
493*18054d02SAlexander Motin        "SampleAfterValue": "2000003",
494*18054d02SAlexander Motin        "UMask": "0xc"
495*18054d02SAlexander Motin    },
496*18054d02SAlexander Motin    {
497*18054d02SAlexander Motin        "BriefDescription": "Execution stalls due to L2 cache misses.",
498*18054d02SAlexander Motin        "Counter": "0,1,2,3",
499*18054d02SAlexander Motin        "CounterHTOff": "0,1,2,3",
500*18054d02SAlexander Motin        "CounterMask": "5",
501*18054d02SAlexander Motin        "Errata": "HSM63, HSM80",
502*18054d02SAlexander Motin        "EventCode": "0xa3",
503*18054d02SAlexander Motin        "EventName": "CYCLE_ACTIVITY.STALLS_L2_PENDING",
504*18054d02SAlexander Motin        "PublicDescription": "Number of loads missed L2.",
505*18054d02SAlexander Motin        "SampleAfterValue": "2000003",
506*18054d02SAlexander Motin        "UMask": "0x5"
507*18054d02SAlexander Motin    },
508*18054d02SAlexander Motin    {
509*18054d02SAlexander Motin        "BriefDescription": "Execution stalls due to memory subsystem.",
510*18054d02SAlexander Motin        "Counter": "0,1,2,3",
511*18054d02SAlexander Motin        "CounterHTOff": "0,1,2,3",
512*18054d02SAlexander Motin        "CounterMask": "6",
513*18054d02SAlexander Motin        "EventCode": "0xA3",
514*18054d02SAlexander Motin        "EventName": "CYCLE_ACTIVITY.STALLS_LDM_PENDING",
515*18054d02SAlexander Motin        "PublicDescription": "This event counts cycles during which no instructions were executed in the execution stage of the pipeline and there were memory instructions pending (waiting for data).",
516*18054d02SAlexander Motin        "SampleAfterValue": "2000003",
517*18054d02SAlexander Motin        "UMask": "0x6"
518*18054d02SAlexander Motin    },
519*18054d02SAlexander Motin    {
520*18054d02SAlexander Motin        "BriefDescription": "Stall cycles because IQ is full",
521*18054d02SAlexander Motin        "Counter": "0,1,2,3",
522*18054d02SAlexander Motin        "CounterHTOff": "0,1,2,3,4,5,6,7",
523*18054d02SAlexander Motin        "EventCode": "0x87",
524*18054d02SAlexander Motin        "EventName": "ILD_STALL.IQ_FULL",
525*18054d02SAlexander Motin        "PublicDescription": "Stall cycles due to IQ is full.",
526*18054d02SAlexander Motin        "SampleAfterValue": "2000003",
527*18054d02SAlexander Motin        "UMask": "0x4"
528*18054d02SAlexander Motin    },
529*18054d02SAlexander Motin    {
530*18054d02SAlexander Motin        "BriefDescription": "Stalls caused by changing prefix length of the instruction.",
531*18054d02SAlexander Motin        "Counter": "0,1,2,3",
532*18054d02SAlexander Motin        "CounterHTOff": "0,1,2,3,4,5,6,7",
533*18054d02SAlexander Motin        "EventCode": "0x87",
534*18054d02SAlexander Motin        "EventName": "ILD_STALL.LCP",
535*18054d02SAlexander Motin        "PublicDescription": "This event counts cycles where the decoder is stalled on an instruction with a length changing prefix (LCP).",
536*18054d02SAlexander Motin        "SampleAfterValue": "2000003",
537*18054d02SAlexander Motin        "UMask": "0x1"
538*18054d02SAlexander Motin    },
539*18054d02SAlexander Motin    {
540*18054d02SAlexander Motin        "BriefDescription": "Instructions retired from execution.",
541*18054d02SAlexander Motin        "Counter": "Fixed counter 0",
542*18054d02SAlexander Motin        "CounterHTOff": "Fixed counter 0",
543*18054d02SAlexander Motin        "Errata": "HSD140, HSD143",
544*18054d02SAlexander Motin        "EventName": "INST_RETIRED.ANY",
545*18054d02SAlexander Motin        "PublicDescription": "This event counts the number of instructions retired from execution. For instructions that consist of multiple micro-ops, this event counts the retirement of the last micro-op of the instruction. Counting continues during hardware interrupts, traps, and inside interrupt handlers. INST_RETIRED.ANY is counted by a designated fixed counter, leaving the programmable counters available for other events. Faulting executions of GETSEC/VM entry/VM Exit/MWait will not count as retired instructions.",
546*18054d02SAlexander Motin        "SampleAfterValue": "2000003",
547*18054d02SAlexander Motin        "UMask": "0x1"
548*18054d02SAlexander Motin    },
549*18054d02SAlexander Motin    {
550*18054d02SAlexander Motin        "BriefDescription": "Number of instructions retired. General Counter   - architectural event",
551*18054d02SAlexander Motin        "Counter": "0,1,2,3",
552*18054d02SAlexander Motin        "CounterHTOff": "0,1,2,3,4,5,6,7",
553*18054d02SAlexander Motin        "Errata": "HSD11, HSD140",
554*18054d02SAlexander Motin        "EventCode": "0xC0",
555*18054d02SAlexander Motin        "EventName": "INST_RETIRED.ANY_P",
556*18054d02SAlexander Motin        "PublicDescription": "Number of instructions at retirement.",
557*18054d02SAlexander Motin        "SampleAfterValue": "2000003"
558*18054d02SAlexander Motin    },
559*18054d02SAlexander Motin    {
560*18054d02SAlexander Motin        "BriefDescription": "Precise instruction retired event with HW to reduce effect of PEBS shadow in IP distribution",
561*18054d02SAlexander Motin        "Counter": "1",
562*18054d02SAlexander Motin        "CounterHTOff": "1",
563*18054d02SAlexander Motin        "Errata": "HSD140",
564*18054d02SAlexander Motin        "EventCode": "0xC0",
565*18054d02SAlexander Motin        "EventName": "INST_RETIRED.PREC_DIST",
566*18054d02SAlexander Motin        "PEBS": "2",
567*18054d02SAlexander Motin        "PublicDescription": "Precise instruction retired event with HW to reduce effect of PEBS shadow in IP distribution.",
568*18054d02SAlexander Motin        "SampleAfterValue": "2000003",
569*18054d02SAlexander Motin        "UMask": "0x1"
570*18054d02SAlexander Motin    },
571*18054d02SAlexander Motin    {
572*18054d02SAlexander Motin        "BriefDescription": "FP operations retired. X87 FP operations that have no exceptions: Counts also flows that have several X87 or flows that use X87 uops in the exception handling.",
573*18054d02SAlexander Motin        "Counter": "0,1,2,3",
574*18054d02SAlexander Motin        "CounterHTOff": "0,1,2,3,4,5,6,7",
575*18054d02SAlexander Motin        "EventCode": "0xC0",
576*18054d02SAlexander Motin        "EventName": "INST_RETIRED.X87",
577*18054d02SAlexander Motin        "PublicDescription": "This is a non-precise version (that is, does not use PEBS) of the event that counts FP operations retired. For X87 FP operations that have no exceptions counting also includes flows that have several X87, or flows that use X87 uops in the exception handling.",
578*18054d02SAlexander Motin        "SampleAfterValue": "2000003",
579*18054d02SAlexander Motin        "UMask": "0x2"
580*18054d02SAlexander Motin    },
581*18054d02SAlexander Motin    {
582*18054d02SAlexander Motin        "BriefDescription": "Core cycles the allocator was stalled due to recovery from earlier clear event for this thread (e.g. misprediction or memory nuke)",
583*18054d02SAlexander Motin        "Counter": "0,1,2,3",
584*18054d02SAlexander Motin        "CounterHTOff": "0,1,2,3,4,5,6,7",
585*18054d02SAlexander Motin        "CounterMask": "1",
586*18054d02SAlexander Motin        "EventCode": "0x0D",
587*18054d02SAlexander Motin        "EventName": "INT_MISC.RECOVERY_CYCLES",
588*18054d02SAlexander Motin        "PublicDescription": "This event counts the number of cycles spent waiting for a recovery after an event such as a processor nuke, JEClear, assist, hle/rtm abort etc.",
589*18054d02SAlexander Motin        "SampleAfterValue": "2000003",
590*18054d02SAlexander Motin        "UMask": "0x3"
591*18054d02SAlexander Motin    },
592*18054d02SAlexander Motin    {
593*18054d02SAlexander Motin        "AnyThread": "1",
594*18054d02SAlexander Motin        "BriefDescription": "Core cycles the allocator was stalled due to recovery from earlier clear event for any thread running on the physical core (e.g. misprediction or memory nuke)",
595*18054d02SAlexander Motin        "Counter": "0,1,2,3",
596*18054d02SAlexander Motin        "CounterHTOff": "0,1,2,3,4,5,6,7",
597*18054d02SAlexander Motin        "CounterMask": "1",
598*18054d02SAlexander Motin        "EventCode": "0x0D",
599*18054d02SAlexander Motin        "EventName": "INT_MISC.RECOVERY_CYCLES_ANY",
600*18054d02SAlexander Motin        "PublicDescription": "Core cycles the allocator was stalled due to recovery from earlier clear event for any thread running on the physical core (e.g. misprediction or memory nuke).",
601*18054d02SAlexander Motin        "SampleAfterValue": "2000003",
602*18054d02SAlexander Motin        "UMask": "0x3"
603*18054d02SAlexander Motin    },
604*18054d02SAlexander Motin    {
605*18054d02SAlexander Motin        "BriefDescription": "The number of times that split load operations are temporarily blocked because all resources for handling the split accesses are in use",
606*18054d02SAlexander Motin        "Counter": "0,1,2,3",
607*18054d02SAlexander Motin        "CounterHTOff": "0,1,2,3,4,5,6,7",
608*18054d02SAlexander Motin        "EventCode": "0x03",
609*18054d02SAlexander Motin        "EventName": "LD_BLOCKS.NO_SR",
610*18054d02SAlexander Motin        "PublicDescription": "The number of times that split load operations are temporarily blocked because all resources for handling the split accesses are in use.",
611*18054d02SAlexander Motin        "SampleAfterValue": "100003",
612*18054d02SAlexander Motin        "UMask": "0x8"
613*18054d02SAlexander Motin    },
614*18054d02SAlexander Motin    {
615*18054d02SAlexander Motin        "BriefDescription": "loads blocked by overlapping with store buffer that cannot be forwarded",
616*18054d02SAlexander Motin        "Counter": "0,1,2,3",
617*18054d02SAlexander Motin        "CounterHTOff": "0,1,2,3,4,5,6,7",
618*18054d02SAlexander Motin        "EventCode": "0x03",
619*18054d02SAlexander Motin        "EventName": "LD_BLOCKS.STORE_FORWARD",
620*18054d02SAlexander Motin        "PublicDescription": "This event counts loads that followed a store to the same address, where the data could not be forwarded inside the pipeline from the store to the load.  The most common reason why store forwarding would be blocked is when a load's address range overlaps with a preceding smaller uncompleted store. The penalty for blocked store forwarding is that the load must wait for the store to write its value to the cache before it can be issued.",
621*18054d02SAlexander Motin        "SampleAfterValue": "100003",
622*18054d02SAlexander Motin        "UMask": "0x2"
623*18054d02SAlexander Motin    },
624*18054d02SAlexander Motin    {
625*18054d02SAlexander Motin        "BriefDescription": "False dependencies in MOB due to partial compare on address.",
626*18054d02SAlexander Motin        "Counter": "0,1,2,3",
627*18054d02SAlexander Motin        "CounterHTOff": "0,1,2,3,4,5,6,7",
628*18054d02SAlexander Motin        "EventCode": "0x07",
629*18054d02SAlexander Motin        "EventName": "LD_BLOCKS_PARTIAL.ADDRESS_ALIAS",
630*18054d02SAlexander Motin        "PublicDescription": "Aliasing occurs when a load is issued after a store and their memory addresses are offset by 4K.  This event counts the number of loads that aliased with a preceding store, resulting in an extended address check in the pipeline which can have a performance impact.",
631*18054d02SAlexander Motin        "SampleAfterValue": "100003",
632*18054d02SAlexander Motin        "UMask": "0x1"
633*18054d02SAlexander Motin    },
634*18054d02SAlexander Motin    {
635*18054d02SAlexander Motin        "BriefDescription": "Not software-prefetch load dispatches that hit FB allocated for hardware prefetch",
636*18054d02SAlexander Motin        "Counter": "0,1,2,3",
637*18054d02SAlexander Motin        "CounterHTOff": "0,1,2,3,4,5,6,7",
638*18054d02SAlexander Motin        "EventCode": "0x4c",
639*18054d02SAlexander Motin        "EventName": "LOAD_HIT_PRE.HW_PF",
640*18054d02SAlexander Motin        "PublicDescription": "Non-SW-prefetch load dispatches that hit fill buffer allocated for H/W prefetch.",
641*18054d02SAlexander Motin        "SampleAfterValue": "100003",
642*18054d02SAlexander Motin        "UMask": "0x2"
643*18054d02SAlexander Motin    },
644*18054d02SAlexander Motin    {
645*18054d02SAlexander Motin        "BriefDescription": "Not software-prefetch load dispatches that hit FB allocated for software prefetch",
646*18054d02SAlexander Motin        "Counter": "0,1,2,3",
647*18054d02SAlexander Motin        "CounterHTOff": "0,1,2,3,4,5,6,7",
648*18054d02SAlexander Motin        "EventCode": "0x4c",
649*18054d02SAlexander Motin        "EventName": "LOAD_HIT_PRE.SW_PF",
650*18054d02SAlexander Motin        "PublicDescription": "Non-SW-prefetch load dispatches that hit fill buffer allocated for S/W prefetch.",
651*18054d02SAlexander Motin        "SampleAfterValue": "100003",
652*18054d02SAlexander Motin        "UMask": "0x1"
653*18054d02SAlexander Motin    },
654*18054d02SAlexander Motin    {
655*18054d02SAlexander Motin        "BriefDescription": "Cycles 4 Uops delivered by the LSD, but didn't come from the decoder.",
656*18054d02SAlexander Motin        "Counter": "0,1,2,3",
657*18054d02SAlexander Motin        "CounterHTOff": "0,1,2,3,4,5,6,7",
658*18054d02SAlexander Motin        "CounterMask": "4",
659*18054d02SAlexander Motin        "EventCode": "0xA8",
660*18054d02SAlexander Motin        "EventName": "LSD.CYCLES_4_UOPS",
661*18054d02SAlexander Motin        "SampleAfterValue": "2000003",
662*18054d02SAlexander Motin        "UMask": "0x1"
663*18054d02SAlexander Motin    },
664*18054d02SAlexander Motin    {
665*18054d02SAlexander Motin        "BriefDescription": "Cycles Uops delivered by the LSD, but didn't come from the decoder.",
666*18054d02SAlexander Motin        "Counter": "0,1,2,3",
667*18054d02SAlexander Motin        "CounterHTOff": "0,1,2,3,4,5,6,7",
668*18054d02SAlexander Motin        "CounterMask": "1",
669*18054d02SAlexander Motin        "EventCode": "0xA8",
670*18054d02SAlexander Motin        "EventName": "LSD.CYCLES_ACTIVE",
671*18054d02SAlexander Motin        "SampleAfterValue": "2000003",
672*18054d02SAlexander Motin        "UMask": "0x1"
673*18054d02SAlexander Motin    },
674*18054d02SAlexander Motin    {
675*18054d02SAlexander Motin        "BriefDescription": "Number of Uops delivered by the LSD.",
676*18054d02SAlexander Motin        "Counter": "0,1,2,3",
677*18054d02SAlexander Motin        "CounterHTOff": "0,1,2,3,4,5,6,7",
678*18054d02SAlexander Motin        "EventCode": "0xa8",
679*18054d02SAlexander Motin        "EventName": "LSD.UOPS",
680*18054d02SAlexander Motin        "PublicDescription": "Number of uops delivered by the LSD.",
681*18054d02SAlexander Motin        "SampleAfterValue": "2000003",
682*18054d02SAlexander Motin        "UMask": "0x1"
683*18054d02SAlexander Motin    },
684*18054d02SAlexander Motin    {
685*18054d02SAlexander Motin        "BriefDescription": "Number of machine clears (nukes) of any type.",
686*18054d02SAlexander Motin        "Counter": "0,1,2,3",
687*18054d02SAlexander Motin        "CounterHTOff": "0,1,2,3,4,5,6,7",
688*18054d02SAlexander Motin        "CounterMask": "1",
689*18054d02SAlexander Motin        "EdgeDetect": "1",
690*18054d02SAlexander Motin        "EventCode": "0xC3",
691*18054d02SAlexander Motin        "EventName": "MACHINE_CLEARS.COUNT",
692*18054d02SAlexander Motin        "SampleAfterValue": "100003",
693*18054d02SAlexander Motin        "UMask": "0x1"
694*18054d02SAlexander Motin    },
695*18054d02SAlexander Motin    {
696*18054d02SAlexander Motin        "BriefDescription": "Cycles there was a Nuke. Account for both thread-specific and All Thread Nukes.",
697*18054d02SAlexander Motin        "Counter": "0,1,2,3",
698*18054d02SAlexander Motin        "CounterHTOff": "0,1,2,3,4,5,6,7",
699*18054d02SAlexander Motin        "EventCode": "0xC3",
700*18054d02SAlexander Motin        "EventName": "MACHINE_CLEARS.CYCLES",
701*18054d02SAlexander Motin        "SampleAfterValue": "2000003",
702*18054d02SAlexander Motin        "UMask": "0x1"
703*18054d02SAlexander Motin    },
704*18054d02SAlexander Motin    {
705*18054d02SAlexander Motin        "BriefDescription": "This event counts the number of executed Intel AVX masked load operations that refer to an illegal address range with the mask bits set to 0.",
706*18054d02SAlexander Motin        "Counter": "0,1,2,3",
707*18054d02SAlexander Motin        "CounterHTOff": "0,1,2,3,4,5,6,7",
708*18054d02SAlexander Motin        "EventCode": "0xC3",
709*18054d02SAlexander Motin        "EventName": "MACHINE_CLEARS.MASKMOV",
710*18054d02SAlexander Motin        "SampleAfterValue": "100003",
711*18054d02SAlexander Motin        "UMask": "0x20"
712*18054d02SAlexander Motin    },
713*18054d02SAlexander Motin    {
714*18054d02SAlexander Motin        "BriefDescription": "Self-modifying code (SMC) detected.",
715*18054d02SAlexander Motin        "Counter": "0,1,2,3",
716*18054d02SAlexander Motin        "CounterHTOff": "0,1,2,3,4,5,6,7",
717*18054d02SAlexander Motin        "EventCode": "0xC3",
718*18054d02SAlexander Motin        "EventName": "MACHINE_CLEARS.SMC",
719*18054d02SAlexander Motin        "PublicDescription": "This event is incremented when self-modifying code (SMC) is detected, which causes a machine clear.  Machine clears can have a significant performance impact if they are happening frequently.",
720*18054d02SAlexander Motin        "SampleAfterValue": "100003",
721*18054d02SAlexander Motin        "UMask": "0x4"
722*18054d02SAlexander Motin    },
723*18054d02SAlexander Motin    {
724*18054d02SAlexander Motin        "BriefDescription": "Number of integer Move Elimination candidate uops that were eliminated.",
725*18054d02SAlexander Motin        "Counter": "0,1,2,3",
726*18054d02SAlexander Motin        "CounterHTOff": "0,1,2,3,4,5,6,7",
727*18054d02SAlexander Motin        "EventCode": "0x58",
728*18054d02SAlexander Motin        "EventName": "MOVE_ELIMINATION.INT_ELIMINATED",
729*18054d02SAlexander Motin        "PublicDescription": "Number of integer move elimination candidate uops that were eliminated.",
730*18054d02SAlexander Motin        "SampleAfterValue": "1000003",
731*18054d02SAlexander Motin        "UMask": "0x1"
732*18054d02SAlexander Motin    },
733*18054d02SAlexander Motin    {
734*18054d02SAlexander Motin        "BriefDescription": "Number of integer Move Elimination candidate uops that were not eliminated.",
735*18054d02SAlexander Motin        "Counter": "0,1,2,3",
736*18054d02SAlexander Motin        "CounterHTOff": "0,1,2,3,4,5,6,7",
737*18054d02SAlexander Motin        "EventCode": "0x58",
738*18054d02SAlexander Motin        "EventName": "MOVE_ELIMINATION.INT_NOT_ELIMINATED",
739*18054d02SAlexander Motin        "PublicDescription": "Number of integer move elimination candidate uops that were not eliminated.",
740*18054d02SAlexander Motin        "SampleAfterValue": "1000003",
741*18054d02SAlexander Motin        "UMask": "0x4"
742*18054d02SAlexander Motin    },
743*18054d02SAlexander Motin    {
744*18054d02SAlexander Motin        "BriefDescription": "Number of times any microcode assist is invoked by HW upon uop writeback.",
745*18054d02SAlexander Motin        "Counter": "0,1,2,3",
746*18054d02SAlexander Motin        "CounterHTOff": "0,1,2,3,4,5,6,7",
747*18054d02SAlexander Motin        "EventCode": "0xC1",
748*18054d02SAlexander Motin        "EventName": "OTHER_ASSISTS.ANY_WB_ASSIST",
749*18054d02SAlexander Motin        "PublicDescription": "Number of microcode assists invoked by HW upon uop writeback.",
750*18054d02SAlexander Motin        "SampleAfterValue": "100003",
751*18054d02SAlexander Motin        "UMask": "0x40"
752*18054d02SAlexander Motin    },
753*18054d02SAlexander Motin    {
754*18054d02SAlexander Motin        "BriefDescription": "Resource-related stall cycles",
755*18054d02SAlexander Motin        "Counter": "0,1,2,3",
756*18054d02SAlexander Motin        "CounterHTOff": "0,1,2,3,4,5,6,7",
757*18054d02SAlexander Motin        "Errata": "HSD135",
758*18054d02SAlexander Motin        "EventCode": "0xA2",
759*18054d02SAlexander Motin        "EventName": "RESOURCE_STALLS.ANY",
760*18054d02SAlexander Motin        "PublicDescription": "Cycles allocation is stalled due to resource related reason.",
761*18054d02SAlexander Motin        "SampleAfterValue": "2000003",
762*18054d02SAlexander Motin        "UMask": "0x1"
763*18054d02SAlexander Motin    },
764*18054d02SAlexander Motin    {
765*18054d02SAlexander Motin        "BriefDescription": "Cycles stalled due to re-order buffer full.",
766*18054d02SAlexander Motin        "Counter": "0,1,2,3",
767*18054d02SAlexander Motin        "CounterHTOff": "0,1,2,3,4,5,6,7",
768*18054d02SAlexander Motin        "EventCode": "0xA2",
769*18054d02SAlexander Motin        "EventName": "RESOURCE_STALLS.ROB",
770*18054d02SAlexander Motin        "SampleAfterValue": "2000003",
771*18054d02SAlexander Motin        "UMask": "0x10"
772*18054d02SAlexander Motin    },
773*18054d02SAlexander Motin    {
774*18054d02SAlexander Motin        "BriefDescription": "Cycles stalled due to no eligible RS entry available.",
775*18054d02SAlexander Motin        "Counter": "0,1,2,3",
776*18054d02SAlexander Motin        "CounterHTOff": "0,1,2,3,4,5,6,7",
777*18054d02SAlexander Motin        "EventCode": "0xA2",
778*18054d02SAlexander Motin        "EventName": "RESOURCE_STALLS.RS",
779*18054d02SAlexander Motin        "SampleAfterValue": "2000003",
780*18054d02SAlexander Motin        "UMask": "0x4"
781*18054d02SAlexander Motin    },
782*18054d02SAlexander Motin    {
783*18054d02SAlexander Motin        "BriefDescription": "Cycles stalled due to no store buffers available. (not including draining form sync).",
784*18054d02SAlexander Motin        "Counter": "0,1,2,3",
785*18054d02SAlexander Motin        "CounterHTOff": "0,1,2,3,4,5,6,7",
786*18054d02SAlexander Motin        "EventCode": "0xA2",
787*18054d02SAlexander Motin        "EventName": "RESOURCE_STALLS.SB",
788*18054d02SAlexander Motin        "PublicDescription": "This event counts cycles during which no instructions were allocated because no Store Buffers (SB) were available.",
789*18054d02SAlexander Motin        "SampleAfterValue": "2000003",
790*18054d02SAlexander Motin        "UMask": "0x8"
791*18054d02SAlexander Motin    },
792*18054d02SAlexander Motin    {
793959826caSMatt Macy        "BriefDescription": "Count cases of saving new LBR",
794959826caSMatt Macy        "Counter": "0,1,2,3",
795*18054d02SAlexander Motin        "CounterHTOff": "0,1,2,3,4,5,6,7",
796*18054d02SAlexander Motin        "EventCode": "0xCC",
797959826caSMatt Macy        "EventName": "ROB_MISC_EVENTS.LBR_INSERTS",
798959826caSMatt Macy        "PublicDescription": "Count cases of saving new LBR records by hardware.",
799959826caSMatt Macy        "SampleAfterValue": "2000003",
800*18054d02SAlexander Motin        "UMask": "0x20"
801959826caSMatt Macy    },
802959826caSMatt Macy    {
803*18054d02SAlexander Motin        "BriefDescription": "Cycles when Reservation Station (RS) is empty for the thread",
804959826caSMatt Macy        "Counter": "0,1,2,3",
805*18054d02SAlexander Motin        "CounterHTOff": "0,1,2,3,4,5,6,7",
806*18054d02SAlexander Motin        "EventCode": "0x5E",
807*18054d02SAlexander Motin        "EventName": "RS_EVENTS.EMPTY_CYCLES",
808*18054d02SAlexander Motin        "PublicDescription": "This event counts cycles when the Reservation Station ( RS ) is empty for the thread. The RS is a structure that buffers allocated micro-ops from the Front-end. If there are many cycles when the RS is empty, it may represent an underflow of instructions delivered from the Front-end.",
809*18054d02SAlexander Motin        "SampleAfterValue": "2000003",
810*18054d02SAlexander Motin        "UMask": "0x1"
811*18054d02SAlexander Motin    },
812*18054d02SAlexander Motin    {
813*18054d02SAlexander Motin        "BriefDescription": "Counts end of periods where the Reservation Station (RS) was empty. Could be useful to precisely locate Frontend Latency Bound issues.",
814*18054d02SAlexander Motin        "Counter": "0,1,2,3",
815*18054d02SAlexander Motin        "CounterHTOff": "0,1,2,3,4,5,6,7",
816*18054d02SAlexander Motin        "CounterMask": "1",
817*18054d02SAlexander Motin        "EdgeDetect": "1",
818*18054d02SAlexander Motin        "EventCode": "0x5E",
819*18054d02SAlexander Motin        "EventName": "RS_EVENTS.EMPTY_END",
820*18054d02SAlexander Motin        "Invert": "1",
821*18054d02SAlexander Motin        "SampleAfterValue": "200003",
822*18054d02SAlexander Motin        "UMask": "0x1"
823*18054d02SAlexander Motin    },
824*18054d02SAlexander Motin    {
825*18054d02SAlexander Motin        "BriefDescription": "Cycles per thread when uops are executed in port 0.",
826*18054d02SAlexander Motin        "Counter": "0,1,2,3",
827*18054d02SAlexander Motin        "CounterHTOff": "0,1,2,3,4,5,6,7",
828*18054d02SAlexander Motin        "EventCode": "0xA1",
829*18054d02SAlexander Motin        "EventName": "UOPS_DISPATCHED_PORT.PORT_0",
830*18054d02SAlexander Motin        "SampleAfterValue": "2000003",
831*18054d02SAlexander Motin        "UMask": "0x1"
832*18054d02SAlexander Motin    },
833*18054d02SAlexander Motin    {
834*18054d02SAlexander Motin        "BriefDescription": "Cycles per thread when uops are executed in port 1.",
835*18054d02SAlexander Motin        "Counter": "0,1,2,3",
836*18054d02SAlexander Motin        "CounterHTOff": "0,1,2,3,4,5,6,7",
837*18054d02SAlexander Motin        "EventCode": "0xA1",
838*18054d02SAlexander Motin        "EventName": "UOPS_DISPATCHED_PORT.PORT_1",
839*18054d02SAlexander Motin        "SampleAfterValue": "2000003",
840*18054d02SAlexander Motin        "UMask": "0x2"
841*18054d02SAlexander Motin    },
842*18054d02SAlexander Motin    {
843*18054d02SAlexander Motin        "BriefDescription": "Cycles per thread when uops are executed in port 2.",
844*18054d02SAlexander Motin        "Counter": "0,1,2,3",
845*18054d02SAlexander Motin        "CounterHTOff": "0,1,2,3,4,5,6,7",
846*18054d02SAlexander Motin        "EventCode": "0xA1",
847*18054d02SAlexander Motin        "EventName": "UOPS_DISPATCHED_PORT.PORT_2",
848*18054d02SAlexander Motin        "SampleAfterValue": "2000003",
849*18054d02SAlexander Motin        "UMask": "0x4"
850*18054d02SAlexander Motin    },
851*18054d02SAlexander Motin    {
852*18054d02SAlexander Motin        "BriefDescription": "Cycles per thread when uops are executed in port 3.",
853*18054d02SAlexander Motin        "Counter": "0,1,2,3",
854*18054d02SAlexander Motin        "CounterHTOff": "0,1,2,3,4,5,6,7",
855*18054d02SAlexander Motin        "EventCode": "0xA1",
856*18054d02SAlexander Motin        "EventName": "UOPS_DISPATCHED_PORT.PORT_3",
857*18054d02SAlexander Motin        "SampleAfterValue": "2000003",
858*18054d02SAlexander Motin        "UMask": "0x8"
859*18054d02SAlexander Motin    },
860*18054d02SAlexander Motin    {
861*18054d02SAlexander Motin        "BriefDescription": "Cycles per thread when uops are executed in port 4.",
862*18054d02SAlexander Motin        "Counter": "0,1,2,3",
863*18054d02SAlexander Motin        "CounterHTOff": "0,1,2,3,4,5,6,7",
864*18054d02SAlexander Motin        "EventCode": "0xA1",
865*18054d02SAlexander Motin        "EventName": "UOPS_DISPATCHED_PORT.PORT_4",
866*18054d02SAlexander Motin        "SampleAfterValue": "2000003",
867*18054d02SAlexander Motin        "UMask": "0x10"
868*18054d02SAlexander Motin    },
869*18054d02SAlexander Motin    {
870*18054d02SAlexander Motin        "BriefDescription": "Cycles per thread when uops are executed in port 5.",
871*18054d02SAlexander Motin        "Counter": "0,1,2,3",
872*18054d02SAlexander Motin        "CounterHTOff": "0,1,2,3,4,5,6,7",
873*18054d02SAlexander Motin        "EventCode": "0xA1",
874*18054d02SAlexander Motin        "EventName": "UOPS_DISPATCHED_PORT.PORT_5",
875*18054d02SAlexander Motin        "SampleAfterValue": "2000003",
876*18054d02SAlexander Motin        "UMask": "0x20"
877*18054d02SAlexander Motin    },
878*18054d02SAlexander Motin    {
879*18054d02SAlexander Motin        "BriefDescription": "Cycles per thread when uops are executed in port 6.",
880*18054d02SAlexander Motin        "Counter": "0,1,2,3",
881*18054d02SAlexander Motin        "CounterHTOff": "0,1,2,3,4,5,6,7",
882*18054d02SAlexander Motin        "EventCode": "0xA1",
883*18054d02SAlexander Motin        "EventName": "UOPS_DISPATCHED_PORT.PORT_6",
884*18054d02SAlexander Motin        "SampleAfterValue": "2000003",
885*18054d02SAlexander Motin        "UMask": "0x40"
886*18054d02SAlexander Motin    },
887*18054d02SAlexander Motin    {
888*18054d02SAlexander Motin        "BriefDescription": "Cycles per thread when uops are executed in port 7.",
889*18054d02SAlexander Motin        "Counter": "0,1,2,3",
890*18054d02SAlexander Motin        "CounterHTOff": "0,1,2,3,4,5,6,7",
891*18054d02SAlexander Motin        "EventCode": "0xA1",
892*18054d02SAlexander Motin        "EventName": "UOPS_DISPATCHED_PORT.PORT_7",
893*18054d02SAlexander Motin        "SampleAfterValue": "2000003",
894*18054d02SAlexander Motin        "UMask": "0x80"
895*18054d02SAlexander Motin    },
896*18054d02SAlexander Motin    {
897*18054d02SAlexander Motin        "BriefDescription": "Number of uops executed on the core.",
898*18054d02SAlexander Motin        "Counter": "0,1,2,3",
899*18054d02SAlexander Motin        "CounterHTOff": "0,1,2,3,4,5,6,7",
900*18054d02SAlexander Motin        "Errata": "HSD30, HSM31",
901*18054d02SAlexander Motin        "EventCode": "0xB1",
902*18054d02SAlexander Motin        "EventName": "UOPS_EXECUTED.CORE",
903*18054d02SAlexander Motin        "PublicDescription": "Counts total number of uops to be executed per-core each cycle.",
904*18054d02SAlexander Motin        "SampleAfterValue": "2000003",
905*18054d02SAlexander Motin        "UMask": "0x2"
906*18054d02SAlexander Motin    },
907*18054d02SAlexander Motin    {
908*18054d02SAlexander Motin        "BriefDescription": "Cycles at least 1 micro-op is executed from any thread on physical core.",
909*18054d02SAlexander Motin        "Counter": "0,1,2,3",
910*18054d02SAlexander Motin        "CounterHTOff": "0,1,2,3,4,5,6,7",
911*18054d02SAlexander Motin        "CounterMask": "1",
912*18054d02SAlexander Motin        "Errata": "HSD30, HSM31",
913*18054d02SAlexander Motin        "EventCode": "0xb1",
914*18054d02SAlexander Motin        "EventName": "UOPS_EXECUTED.CORE_CYCLES_GE_1",
915*18054d02SAlexander Motin        "SampleAfterValue": "2000003",
916*18054d02SAlexander Motin        "UMask": "0x2"
917*18054d02SAlexander Motin    },
918*18054d02SAlexander Motin    {
919*18054d02SAlexander Motin        "BriefDescription": "Cycles at least 2 micro-op is executed from any thread on physical core.",
920*18054d02SAlexander Motin        "Counter": "0,1,2,3",
921*18054d02SAlexander Motin        "CounterHTOff": "0,1,2,3,4,5,6,7",
922*18054d02SAlexander Motin        "CounterMask": "2",
923*18054d02SAlexander Motin        "Errata": "HSD30, HSM31",
924*18054d02SAlexander Motin        "EventCode": "0xb1",
925*18054d02SAlexander Motin        "EventName": "UOPS_EXECUTED.CORE_CYCLES_GE_2",
926*18054d02SAlexander Motin        "SampleAfterValue": "2000003",
927*18054d02SAlexander Motin        "UMask": "0x2"
928*18054d02SAlexander Motin    },
929*18054d02SAlexander Motin    {
930*18054d02SAlexander Motin        "BriefDescription": "Cycles at least 3 micro-op is executed from any thread on physical core.",
931*18054d02SAlexander Motin        "Counter": "0,1,2,3",
932*18054d02SAlexander Motin        "CounterHTOff": "0,1,2,3,4,5,6,7",
933*18054d02SAlexander Motin        "CounterMask": "3",
934*18054d02SAlexander Motin        "Errata": "HSD30, HSM31",
935*18054d02SAlexander Motin        "EventCode": "0xb1",
936*18054d02SAlexander Motin        "EventName": "UOPS_EXECUTED.CORE_CYCLES_GE_3",
937*18054d02SAlexander Motin        "SampleAfterValue": "2000003",
938*18054d02SAlexander Motin        "UMask": "0x2"
939*18054d02SAlexander Motin    },
940*18054d02SAlexander Motin    {
941*18054d02SAlexander Motin        "BriefDescription": "Cycles at least 4 micro-op is executed from any thread on physical core.",
942*18054d02SAlexander Motin        "Counter": "0,1,2,3",
943*18054d02SAlexander Motin        "CounterHTOff": "0,1,2,3,4,5,6,7",
944*18054d02SAlexander Motin        "CounterMask": "4",
945*18054d02SAlexander Motin        "Errata": "HSD30, HSM31",
946*18054d02SAlexander Motin        "EventCode": "0xb1",
947*18054d02SAlexander Motin        "EventName": "UOPS_EXECUTED.CORE_CYCLES_GE_4",
948*18054d02SAlexander Motin        "SampleAfterValue": "2000003",
949*18054d02SAlexander Motin        "UMask": "0x2"
950*18054d02SAlexander Motin    },
951*18054d02SAlexander Motin    {
952*18054d02SAlexander Motin        "BriefDescription": "Cycles with no micro-ops executed from any thread on physical core.",
953*18054d02SAlexander Motin        "Counter": "0,1,2,3",
954*18054d02SAlexander Motin        "CounterHTOff": "0,1,2,3,4,5,6,7",
955*18054d02SAlexander Motin        "Errata": "HSD30, HSM31",
956*18054d02SAlexander Motin        "EventCode": "0xb1",
957*18054d02SAlexander Motin        "EventName": "UOPS_EXECUTED.CORE_CYCLES_NONE",
958*18054d02SAlexander Motin        "Invert": "1",
959*18054d02SAlexander Motin        "SampleAfterValue": "2000003",
960*18054d02SAlexander Motin        "UMask": "0x2"
961*18054d02SAlexander Motin    },
962*18054d02SAlexander Motin    {
963*18054d02SAlexander Motin        "BriefDescription": "Cycles where at least 1 uop was executed per-thread",
964*18054d02SAlexander Motin        "Counter": "0,1,2,3",
965*18054d02SAlexander Motin        "CounterHTOff": "0,1,2,3",
966*18054d02SAlexander Motin        "CounterMask": "1",
967*18054d02SAlexander Motin        "Errata": "HSD144, HSD30, HSM31",
968*18054d02SAlexander Motin        "EventCode": "0xB1",
969*18054d02SAlexander Motin        "EventName": "UOPS_EXECUTED.CYCLES_GE_1_UOP_EXEC",
970*18054d02SAlexander Motin        "PublicDescription": "This events counts the cycles where at least one uop was executed. It is counted per thread.",
971*18054d02SAlexander Motin        "SampleAfterValue": "2000003",
972*18054d02SAlexander Motin        "UMask": "0x1"
973*18054d02SAlexander Motin    },
974*18054d02SAlexander Motin    {
975*18054d02SAlexander Motin        "BriefDescription": "Cycles where at least 2 uops were executed per-thread",
976*18054d02SAlexander Motin        "Counter": "0,1,2,3",
977*18054d02SAlexander Motin        "CounterHTOff": "0,1,2,3",
978*18054d02SAlexander Motin        "CounterMask": "2",
979*18054d02SAlexander Motin        "Errata": "HSD144, HSD30, HSM31",
980*18054d02SAlexander Motin        "EventCode": "0xB1",
981*18054d02SAlexander Motin        "EventName": "UOPS_EXECUTED.CYCLES_GE_2_UOPS_EXEC",
982*18054d02SAlexander Motin        "PublicDescription": "This events counts the cycles where at least two uop were executed. It is counted per thread.",
983*18054d02SAlexander Motin        "SampleAfterValue": "2000003",
984*18054d02SAlexander Motin        "UMask": "0x1"
985*18054d02SAlexander Motin    },
986*18054d02SAlexander Motin    {
987*18054d02SAlexander Motin        "BriefDescription": "Cycles where at least 3 uops were executed per-thread",
988*18054d02SAlexander Motin        "Counter": "0,1,2,3",
989*18054d02SAlexander Motin        "CounterHTOff": "0,1,2,3",
990*18054d02SAlexander Motin        "CounterMask": "3",
991*18054d02SAlexander Motin        "Errata": "HSD144, HSD30, HSM31",
992*18054d02SAlexander Motin        "EventCode": "0xB1",
993*18054d02SAlexander Motin        "EventName": "UOPS_EXECUTED.CYCLES_GE_3_UOPS_EXEC",
994*18054d02SAlexander Motin        "PublicDescription": "This events counts the cycles where at least three uop were executed. It is counted per thread.",
995*18054d02SAlexander Motin        "SampleAfterValue": "2000003",
996*18054d02SAlexander Motin        "UMask": "0x1"
997*18054d02SAlexander Motin    },
998*18054d02SAlexander Motin    {
999*18054d02SAlexander Motin        "BriefDescription": "Cycles where at least 4 uops were executed per-thread.",
1000*18054d02SAlexander Motin        "Counter": "0,1,2,3",
1001*18054d02SAlexander Motin        "CounterHTOff": "0,1,2,3",
1002*18054d02SAlexander Motin        "CounterMask": "4",
1003*18054d02SAlexander Motin        "Errata": "HSD144, HSD30, HSM31",
1004*18054d02SAlexander Motin        "EventCode": "0xB1",
1005*18054d02SAlexander Motin        "EventName": "UOPS_EXECUTED.CYCLES_GE_4_UOPS_EXEC",
1006*18054d02SAlexander Motin        "SampleAfterValue": "2000003",
1007*18054d02SAlexander Motin        "UMask": "0x1"
1008*18054d02SAlexander Motin    },
1009*18054d02SAlexander Motin    {
1010*18054d02SAlexander Motin        "BriefDescription": "Counts number of cycles no uops were dispatched to be executed on this thread.",
1011*18054d02SAlexander Motin        "Counter": "0,1,2,3",
1012*18054d02SAlexander Motin        "CounterHTOff": "0,1,2,3",
1013*18054d02SAlexander Motin        "CounterMask": "1",
1014*18054d02SAlexander Motin        "Errata": "HSD144, HSD30, HSM31",
1015*18054d02SAlexander Motin        "EventCode": "0xB1",
1016*18054d02SAlexander Motin        "EventName": "UOPS_EXECUTED.STALL_CYCLES",
1017*18054d02SAlexander Motin        "Invert": "1",
1018*18054d02SAlexander Motin        "SampleAfterValue": "2000003",
1019*18054d02SAlexander Motin        "UMask": "0x1"
1020*18054d02SAlexander Motin    },
1021*18054d02SAlexander Motin    {
1022*18054d02SAlexander Motin        "BriefDescription": "Cycles per thread when uops are executed in port 0",
1023*18054d02SAlexander Motin        "Counter": "0,1,2,3",
1024*18054d02SAlexander Motin        "CounterHTOff": "0,1,2,3,4,5,6,7",
1025*18054d02SAlexander Motin        "EventCode": "0xA1",
1026*18054d02SAlexander Motin        "EventName": "UOPS_EXECUTED_PORT.PORT_0",
1027*18054d02SAlexander Motin        "PublicDescription": "Cycles which a uop is dispatched on port 0 in this thread.",
1028*18054d02SAlexander Motin        "SampleAfterValue": "2000003",
1029*18054d02SAlexander Motin        "UMask": "0x1"
1030*18054d02SAlexander Motin    },
1031*18054d02SAlexander Motin    {
1032*18054d02SAlexander Motin        "AnyThread": "1",
1033*18054d02SAlexander Motin        "BriefDescription": "Cycles per core when uops are executed in port 0.",
1034*18054d02SAlexander Motin        "Counter": "0,1,2,3",
1035*18054d02SAlexander Motin        "CounterHTOff": "0,1,2,3,4,5,6,7",
1036*18054d02SAlexander Motin        "EventCode": "0xA1",
1037*18054d02SAlexander Motin        "EventName": "UOPS_EXECUTED_PORT.PORT_0_CORE",
1038*18054d02SAlexander Motin        "PublicDescription": "Cycles per core when uops are exectuted in port 0.",
1039*18054d02SAlexander Motin        "SampleAfterValue": "2000003",
1040*18054d02SAlexander Motin        "UMask": "0x1"
1041*18054d02SAlexander Motin    },
1042*18054d02SAlexander Motin    {
1043*18054d02SAlexander Motin        "BriefDescription": "Cycles per thread when uops are executed in port 1",
1044*18054d02SAlexander Motin        "Counter": "0,1,2,3",
1045*18054d02SAlexander Motin        "CounterHTOff": "0,1,2,3,4,5,6,7",
1046*18054d02SAlexander Motin        "EventCode": "0xA1",
1047*18054d02SAlexander Motin        "EventName": "UOPS_EXECUTED_PORT.PORT_1",
1048*18054d02SAlexander Motin        "PublicDescription": "Cycles which a uop is dispatched on port 1 in this thread.",
1049*18054d02SAlexander Motin        "SampleAfterValue": "2000003",
1050*18054d02SAlexander Motin        "UMask": "0x2"
1051*18054d02SAlexander Motin    },
1052*18054d02SAlexander Motin    {
1053*18054d02SAlexander Motin        "AnyThread": "1",
1054*18054d02SAlexander Motin        "BriefDescription": "Cycles per core when uops are executed in port 1.",
1055*18054d02SAlexander Motin        "Counter": "0,1,2,3",
1056*18054d02SAlexander Motin        "CounterHTOff": "0,1,2,3,4,5,6,7",
1057*18054d02SAlexander Motin        "EventCode": "0xA1",
1058*18054d02SAlexander Motin        "EventName": "UOPS_EXECUTED_PORT.PORT_1_CORE",
1059*18054d02SAlexander Motin        "PublicDescription": "Cycles per core when uops are exectuted in port 1.",
1060*18054d02SAlexander Motin        "SampleAfterValue": "2000003",
1061*18054d02SAlexander Motin        "UMask": "0x2"
1062*18054d02SAlexander Motin    },
1063*18054d02SAlexander Motin    {
1064*18054d02SAlexander Motin        "BriefDescription": "Cycles per thread when uops are executed in port 2",
1065*18054d02SAlexander Motin        "Counter": "0,1,2,3",
1066*18054d02SAlexander Motin        "CounterHTOff": "0,1,2,3,4,5,6,7",
1067*18054d02SAlexander Motin        "EventCode": "0xA1",
1068*18054d02SAlexander Motin        "EventName": "UOPS_EXECUTED_PORT.PORT_2",
1069*18054d02SAlexander Motin        "PublicDescription": "Cycles which a uop is dispatched on port 2 in this thread.",
1070*18054d02SAlexander Motin        "SampleAfterValue": "2000003",
1071*18054d02SAlexander Motin        "UMask": "0x4"
1072*18054d02SAlexander Motin    },
1073*18054d02SAlexander Motin    {
1074*18054d02SAlexander Motin        "AnyThread": "1",
1075*18054d02SAlexander Motin        "BriefDescription": "Cycles per core when uops are dispatched to port 2.",
1076*18054d02SAlexander Motin        "Counter": "0,1,2,3",
1077*18054d02SAlexander Motin        "CounterHTOff": "0,1,2,3,4,5,6,7",
1078*18054d02SAlexander Motin        "EventCode": "0xA1",
1079*18054d02SAlexander Motin        "EventName": "UOPS_EXECUTED_PORT.PORT_2_CORE",
1080*18054d02SAlexander Motin        "SampleAfterValue": "2000003",
1081*18054d02SAlexander Motin        "UMask": "0x4"
1082*18054d02SAlexander Motin    },
1083*18054d02SAlexander Motin    {
1084*18054d02SAlexander Motin        "BriefDescription": "Cycles per thread when uops are executed in port 3",
1085*18054d02SAlexander Motin        "Counter": "0,1,2,3",
1086*18054d02SAlexander Motin        "CounterHTOff": "0,1,2,3,4,5,6,7",
1087*18054d02SAlexander Motin        "EventCode": "0xA1",
1088*18054d02SAlexander Motin        "EventName": "UOPS_EXECUTED_PORT.PORT_3",
1089*18054d02SAlexander Motin        "PublicDescription": "Cycles which a uop is dispatched on port 3 in this thread.",
1090*18054d02SAlexander Motin        "SampleAfterValue": "2000003",
1091*18054d02SAlexander Motin        "UMask": "0x8"
1092*18054d02SAlexander Motin    },
1093*18054d02SAlexander Motin    {
1094*18054d02SAlexander Motin        "AnyThread": "1",
1095*18054d02SAlexander Motin        "BriefDescription": "Cycles per core when uops are dispatched to port 3.",
1096*18054d02SAlexander Motin        "Counter": "0,1,2,3",
1097*18054d02SAlexander Motin        "CounterHTOff": "0,1,2,3,4,5,6,7",
1098*18054d02SAlexander Motin        "EventCode": "0xA1",
1099*18054d02SAlexander Motin        "EventName": "UOPS_EXECUTED_PORT.PORT_3_CORE",
1100*18054d02SAlexander Motin        "SampleAfterValue": "2000003",
1101*18054d02SAlexander Motin        "UMask": "0x8"
1102*18054d02SAlexander Motin    },
1103*18054d02SAlexander Motin    {
1104*18054d02SAlexander Motin        "BriefDescription": "Cycles per thread when uops are executed in port 4",
1105*18054d02SAlexander Motin        "Counter": "0,1,2,3",
1106*18054d02SAlexander Motin        "CounterHTOff": "0,1,2,3,4,5,6,7",
1107*18054d02SAlexander Motin        "EventCode": "0xA1",
1108*18054d02SAlexander Motin        "EventName": "UOPS_EXECUTED_PORT.PORT_4",
1109*18054d02SAlexander Motin        "PublicDescription": "Cycles which a uop is dispatched on port 4 in this thread.",
1110*18054d02SAlexander Motin        "SampleAfterValue": "2000003",
1111*18054d02SAlexander Motin        "UMask": "0x10"
1112*18054d02SAlexander Motin    },
1113*18054d02SAlexander Motin    {
1114*18054d02SAlexander Motin        "AnyThread": "1",
1115*18054d02SAlexander Motin        "BriefDescription": "Cycles per core when uops are executed in port 4.",
1116*18054d02SAlexander Motin        "Counter": "0,1,2,3",
1117*18054d02SAlexander Motin        "CounterHTOff": "0,1,2,3,4,5,6,7",
1118*18054d02SAlexander Motin        "EventCode": "0xA1",
1119*18054d02SAlexander Motin        "EventName": "UOPS_EXECUTED_PORT.PORT_4_CORE",
1120*18054d02SAlexander Motin        "PublicDescription": "Cycles per core when uops are exectuted in port 4.",
1121*18054d02SAlexander Motin        "SampleAfterValue": "2000003",
1122*18054d02SAlexander Motin        "UMask": "0x10"
1123*18054d02SAlexander Motin    },
1124*18054d02SAlexander Motin    {
1125*18054d02SAlexander Motin        "BriefDescription": "Cycles per thread when uops are executed in port 5",
1126*18054d02SAlexander Motin        "Counter": "0,1,2,3",
1127*18054d02SAlexander Motin        "CounterHTOff": "0,1,2,3,4,5,6,7",
1128*18054d02SAlexander Motin        "EventCode": "0xA1",
1129*18054d02SAlexander Motin        "EventName": "UOPS_EXECUTED_PORT.PORT_5",
1130*18054d02SAlexander Motin        "PublicDescription": "Cycles which a uop is dispatched on port 5 in this thread.",
1131*18054d02SAlexander Motin        "SampleAfterValue": "2000003",
1132*18054d02SAlexander Motin        "UMask": "0x20"
1133*18054d02SAlexander Motin    },
1134*18054d02SAlexander Motin    {
1135*18054d02SAlexander Motin        "AnyThread": "1",
1136*18054d02SAlexander Motin        "BriefDescription": "Cycles per core when uops are executed in port 5.",
1137*18054d02SAlexander Motin        "Counter": "0,1,2,3",
1138*18054d02SAlexander Motin        "CounterHTOff": "0,1,2,3,4,5,6,7",
1139*18054d02SAlexander Motin        "EventCode": "0xA1",
1140*18054d02SAlexander Motin        "EventName": "UOPS_EXECUTED_PORT.PORT_5_CORE",
1141*18054d02SAlexander Motin        "PublicDescription": "Cycles per core when uops are exectuted in port 5.",
1142*18054d02SAlexander Motin        "SampleAfterValue": "2000003",
1143*18054d02SAlexander Motin        "UMask": "0x20"
1144*18054d02SAlexander Motin    },
1145*18054d02SAlexander Motin    {
1146*18054d02SAlexander Motin        "BriefDescription": "Cycles per thread when uops are executed in port 6",
1147*18054d02SAlexander Motin        "Counter": "0,1,2,3",
1148*18054d02SAlexander Motin        "CounterHTOff": "0,1,2,3,4,5,6,7",
1149*18054d02SAlexander Motin        "EventCode": "0xA1",
1150*18054d02SAlexander Motin        "EventName": "UOPS_EXECUTED_PORT.PORT_6",
1151*18054d02SAlexander Motin        "PublicDescription": "Cycles which a uop is dispatched on port 6 in this thread.",
1152*18054d02SAlexander Motin        "SampleAfterValue": "2000003",
1153*18054d02SAlexander Motin        "UMask": "0x40"
1154*18054d02SAlexander Motin    },
1155*18054d02SAlexander Motin    {
1156*18054d02SAlexander Motin        "AnyThread": "1",
1157*18054d02SAlexander Motin        "BriefDescription": "Cycles per core when uops are executed in port 6.",
1158*18054d02SAlexander Motin        "Counter": "0,1,2,3",
1159*18054d02SAlexander Motin        "CounterHTOff": "0,1,2,3,4,5,6,7",
1160*18054d02SAlexander Motin        "EventCode": "0xA1",
1161*18054d02SAlexander Motin        "EventName": "UOPS_EXECUTED_PORT.PORT_6_CORE",
1162*18054d02SAlexander Motin        "PublicDescription": "Cycles per core when uops are exectuted in port 6.",
1163*18054d02SAlexander Motin        "SampleAfterValue": "2000003",
1164*18054d02SAlexander Motin        "UMask": "0x40"
1165*18054d02SAlexander Motin    },
1166*18054d02SAlexander Motin    {
1167*18054d02SAlexander Motin        "BriefDescription": "Cycles per thread when uops are executed in port 7",
1168*18054d02SAlexander Motin        "Counter": "0,1,2,3",
1169*18054d02SAlexander Motin        "CounterHTOff": "0,1,2,3,4,5,6,7",
1170*18054d02SAlexander Motin        "EventCode": "0xA1",
1171*18054d02SAlexander Motin        "EventName": "UOPS_EXECUTED_PORT.PORT_7",
1172*18054d02SAlexander Motin        "PublicDescription": "Cycles which a uop is dispatched on port 7 in this thread.",
1173*18054d02SAlexander Motin        "SampleAfterValue": "2000003",
1174*18054d02SAlexander Motin        "UMask": "0x80"
1175*18054d02SAlexander Motin    },
1176*18054d02SAlexander Motin    {
1177*18054d02SAlexander Motin        "AnyThread": "1",
1178*18054d02SAlexander Motin        "BriefDescription": "Cycles per core when uops are dispatched to port 7.",
1179*18054d02SAlexander Motin        "Counter": "0,1,2,3",
1180*18054d02SAlexander Motin        "CounterHTOff": "0,1,2,3,4,5,6,7",
1181*18054d02SAlexander Motin        "EventCode": "0xA1",
1182*18054d02SAlexander Motin        "EventName": "UOPS_EXECUTED_PORT.PORT_7_CORE",
1183*18054d02SAlexander Motin        "SampleAfterValue": "2000003",
1184*18054d02SAlexander Motin        "UMask": "0x80"
1185*18054d02SAlexander Motin    },
1186*18054d02SAlexander Motin    {
1187*18054d02SAlexander Motin        "BriefDescription": "Uops that Resource Allocation Table (RAT) issues to Reservation Station (RS)",
1188*18054d02SAlexander Motin        "Counter": "0,1,2,3",
1189*18054d02SAlexander Motin        "CounterHTOff": "0,1,2,3,4,5,6,7",
1190*18054d02SAlexander Motin        "EventCode": "0x0E",
1191*18054d02SAlexander Motin        "EventName": "UOPS_ISSUED.ANY",
1192*18054d02SAlexander Motin        "PublicDescription": "This event counts the number of uops issued by the Front-end of the pipeline to the Back-end. This event is counted at the allocation stage and will count both retired and non-retired uops.",
1193*18054d02SAlexander Motin        "SampleAfterValue": "2000003",
1194*18054d02SAlexander Motin        "UMask": "0x1"
1195*18054d02SAlexander Motin    },
1196*18054d02SAlexander Motin    {
1197*18054d02SAlexander Motin        "AnyThread": "1",
1198*18054d02SAlexander Motin        "BriefDescription": "Cycles when Resource Allocation Table (RAT) does not issue Uops to Reservation Station (RS) for all threads.",
1199*18054d02SAlexander Motin        "Counter": "0,1,2,3",
1200*18054d02SAlexander Motin        "CounterHTOff": "0,1,2,3",
1201*18054d02SAlexander Motin        "CounterMask": "1",
1202*18054d02SAlexander Motin        "EventCode": "0x0E",
1203*18054d02SAlexander Motin        "EventName": "UOPS_ISSUED.CORE_STALL_CYCLES",
1204*18054d02SAlexander Motin        "Invert": "1",
1205*18054d02SAlexander Motin        "SampleAfterValue": "2000003",
1206*18054d02SAlexander Motin        "UMask": "0x1"
1207*18054d02SAlexander Motin    },
1208*18054d02SAlexander Motin    {
1209*18054d02SAlexander Motin        "BriefDescription": "Number of flags-merge uops being allocated. Such uops considered perf sensitive; added by GSR u-arch.",
1210*18054d02SAlexander Motin        "Counter": "0,1,2,3",
1211*18054d02SAlexander Motin        "CounterHTOff": "0,1,2,3,4,5,6,7",
1212*18054d02SAlexander Motin        "EventCode": "0x0E",
1213*18054d02SAlexander Motin        "EventName": "UOPS_ISSUED.FLAGS_MERGE",
1214*18054d02SAlexander Motin        "PublicDescription": "Number of flags-merge uops allocated. Such uops add delay.",
1215*18054d02SAlexander Motin        "SampleAfterValue": "2000003",
1216*18054d02SAlexander Motin        "UMask": "0x10"
1217*18054d02SAlexander Motin    },
1218*18054d02SAlexander Motin    {
1219*18054d02SAlexander Motin        "BriefDescription": "Number of Multiply packed/scalar single precision uops allocated",
1220*18054d02SAlexander Motin        "Counter": "0,1,2,3",
1221*18054d02SAlexander Motin        "CounterHTOff": "0,1,2,3,4,5,6,7",
1222*18054d02SAlexander Motin        "EventCode": "0x0E",
1223*18054d02SAlexander Motin        "EventName": "UOPS_ISSUED.SINGLE_MUL",
1224*18054d02SAlexander Motin        "PublicDescription": "Number of multiply packed/scalar single precision uops allocated.",
1225*18054d02SAlexander Motin        "SampleAfterValue": "2000003",
1226*18054d02SAlexander Motin        "UMask": "0x40"
1227*18054d02SAlexander Motin    },
1228*18054d02SAlexander Motin    {
1229*18054d02SAlexander Motin        "BriefDescription": "Number of slow LEA uops being allocated. A uop is generally considered SlowLea if it has 3 sources (e.g. 2 sources + immediate) regardless if as a result of LEA instruction or not.",
1230*18054d02SAlexander Motin        "Counter": "0,1,2,3",
1231*18054d02SAlexander Motin        "CounterHTOff": "0,1,2,3,4,5,6,7",
1232*18054d02SAlexander Motin        "EventCode": "0x0E",
1233*18054d02SAlexander Motin        "EventName": "UOPS_ISSUED.SLOW_LEA",
1234*18054d02SAlexander Motin        "PublicDescription": "Number of slow LEA or similar uops allocated. Such uop has 3 sources (for example, 2 sources + immediate) regardless of whether it is a result of LEA instruction or not.",
1235*18054d02SAlexander Motin        "SampleAfterValue": "2000003",
1236*18054d02SAlexander Motin        "UMask": "0x20"
1237*18054d02SAlexander Motin    },
1238*18054d02SAlexander Motin    {
1239*18054d02SAlexander Motin        "BriefDescription": "Cycles when Resource Allocation Table (RAT) does not issue Uops to Reservation Station (RS) for the thread.",
1240*18054d02SAlexander Motin        "Counter": "0,1,2,3",
1241*18054d02SAlexander Motin        "CounterHTOff": "0,1,2,3",
1242*18054d02SAlexander Motin        "CounterMask": "1",
1243*18054d02SAlexander Motin        "EventCode": "0x0E",
1244*18054d02SAlexander Motin        "EventName": "UOPS_ISSUED.STALL_CYCLES",
1245*18054d02SAlexander Motin        "Invert": "1",
1246*18054d02SAlexander Motin        "SampleAfterValue": "2000003",
1247*18054d02SAlexander Motin        "UMask": "0x1"
1248*18054d02SAlexander Motin    },
1249*18054d02SAlexander Motin    {
1250*18054d02SAlexander Motin        "BriefDescription": "Actually retired uops.",
1251*18054d02SAlexander Motin        "Counter": "0,1,2,3",
1252*18054d02SAlexander Motin        "CounterHTOff": "0,1,2,3,4,5,6,7",
1253*18054d02SAlexander Motin        "EventCode": "0xC2",
1254*18054d02SAlexander Motin        "EventName": "UOPS_RETIRED.ALL",
1255*18054d02SAlexander Motin        "PEBS": "1",
1256*18054d02SAlexander Motin        "PublicDescription": "Counts the number of micro-ops retired. Use Cmask=1 and invert to count active cycles or stalled cycles.",
1257*18054d02SAlexander Motin        "SampleAfterValue": "2000003",
1258*18054d02SAlexander Motin        "UMask": "0x1"
1259*18054d02SAlexander Motin    },
1260*18054d02SAlexander Motin    {
1261*18054d02SAlexander Motin        "AnyThread": "1",
1262*18054d02SAlexander Motin        "BriefDescription": "Cycles without actually retired uops.",
1263*18054d02SAlexander Motin        "Counter": "0,1,2,3",
1264*18054d02SAlexander Motin        "CounterHTOff": "0,1,2,3",
1265*18054d02SAlexander Motin        "CounterMask": "1",
1266*18054d02SAlexander Motin        "EventCode": "0xC2",
1267*18054d02SAlexander Motin        "EventName": "UOPS_RETIRED.CORE_STALL_CYCLES",
1268*18054d02SAlexander Motin        "Invert": "1",
1269*18054d02SAlexander Motin        "SampleAfterValue": "2000003",
1270*18054d02SAlexander Motin        "UMask": "0x1"
1271*18054d02SAlexander Motin    },
1272*18054d02SAlexander Motin    {
1273*18054d02SAlexander Motin        "BriefDescription": "Retirement slots used.",
1274*18054d02SAlexander Motin        "Counter": "0,1,2,3",
1275*18054d02SAlexander Motin        "CounterHTOff": "0,1,2,3,4,5,6,7",
1276*18054d02SAlexander Motin        "EventCode": "0xC2",
1277*18054d02SAlexander Motin        "EventName": "UOPS_RETIRED.RETIRE_SLOTS",
1278*18054d02SAlexander Motin        "PEBS": "1",
1279*18054d02SAlexander Motin        "PublicDescription": "This event counts the number of retirement slots used each cycle.  There are potentially 4 slots that can be used each cycle - meaning, 4 uops or 4 instructions could retire each cycle.",
1280*18054d02SAlexander Motin        "SampleAfterValue": "2000003",
1281*18054d02SAlexander Motin        "UMask": "0x2"
1282*18054d02SAlexander Motin    },
1283*18054d02SAlexander Motin    {
1284*18054d02SAlexander Motin        "BriefDescription": "Cycles without actually retired uops.",
1285*18054d02SAlexander Motin        "Counter": "0,1,2,3",
1286*18054d02SAlexander Motin        "CounterHTOff": "0,1,2,3",
1287*18054d02SAlexander Motin        "CounterMask": "1",
1288*18054d02SAlexander Motin        "EventCode": "0xC2",
1289*18054d02SAlexander Motin        "EventName": "UOPS_RETIRED.STALL_CYCLES",
1290*18054d02SAlexander Motin        "Invert": "1",
1291*18054d02SAlexander Motin        "SampleAfterValue": "2000003",
1292*18054d02SAlexander Motin        "UMask": "0x1"
1293*18054d02SAlexander Motin    },
1294*18054d02SAlexander Motin    {
1295*18054d02SAlexander Motin        "BriefDescription": "Cycles with less than 10 actually retired uops.",
1296*18054d02SAlexander Motin        "Counter": "0,1,2,3",
1297*18054d02SAlexander Motin        "CounterHTOff": "0,1,2,3",
1298*18054d02SAlexander Motin        "CounterMask": "10",
1299*18054d02SAlexander Motin        "EventCode": "0xC2",
1300*18054d02SAlexander Motin        "EventName": "UOPS_RETIRED.TOTAL_CYCLES",
1301*18054d02SAlexander Motin        "Invert": "1",
1302*18054d02SAlexander Motin        "SampleAfterValue": "2000003",
1303*18054d02SAlexander Motin        "UMask": "0x1"
1304959826caSMatt Macy    }
1305959826caSMatt Macy]