14b90798eSAndi Kleen[
24b90798eSAndi Kleen    {
34b90798eSAndi Kleen        "BriefDescription": "Divide operations executed",
44b90798eSAndi Kleen        "CounterMask": "1",
5c955cd2bSAndi Kleen        "EdgeDetect": "1",
6e0f6eeefSIan Rogers        "EventCode": "0x14",
7e0f6eeefSIan Rogers        "EventName": "ARITH.FPU_DIV",
8e0f6eeefSIan Rogers        "PublicDescription": "Divide operations executed.",
9e0f6eeefSIan Rogers        "SampleAfterValue": "100003",
10e0f6eeefSIan Rogers        "UMask": "0x4"
11c955cd2bSAndi Kleen    },
12c955cd2bSAndi Kleen    {
13e0f6eeefSIan Rogers        "BriefDescription": "Cycles when divider is busy executing divide operations",
14e0f6eeefSIan Rogers        "EventCode": "0x14",
15e0f6eeefSIan Rogers        "EventName": "ARITH.FPU_DIV_ACTIVE",
16e0f6eeefSIan Rogers        "PublicDescription": "Cycles that the divider is active, includes INT and FP. Set 'edge =1, cmask=1' to count the number of divides.",
174b90798eSAndi Kleen        "SampleAfterValue": "2000003",
18e0f6eeefSIan Rogers        "UMask": "0x1"
194b90798eSAndi Kleen    },
204b90798eSAndi Kleen    {
21e0f6eeefSIan Rogers        "BriefDescription": "Speculative and retired  branches",
224b90798eSAndi Kleen        "EventCode": "0x88",
23e0f6eeefSIan Rogers        "EventName": "BR_INST_EXEC.ALL_BRANCHES",
24e0f6eeefSIan Rogers        "PublicDescription": "Counts all near executed branches (not necessarily retired).",
254b90798eSAndi Kleen        "SampleAfterValue": "200003",
26e0f6eeefSIan Rogers        "UMask": "0xff"
274b90798eSAndi Kleen    },
284b90798eSAndi Kleen    {
294b90798eSAndi Kleen        "BriefDescription": "Speculative and retired macro-conditional branches",
30e0f6eeefSIan Rogers        "EventCode": "0x88",
31e0f6eeefSIan Rogers        "EventName": "BR_INST_EXEC.ALL_CONDITIONAL",
32e0f6eeefSIan Rogers        "PublicDescription": "Speculative and retired macro-conditional branches.",
33e0f6eeefSIan Rogers        "SampleAfterValue": "200003",
34e0f6eeefSIan Rogers        "UMask": "0xc1"
354b90798eSAndi Kleen    },
364b90798eSAndi Kleen    {
374b90798eSAndi Kleen        "BriefDescription": "Speculative and retired macro-unconditional branches excluding calls and indirects",
38e0f6eeefSIan Rogers        "EventCode": "0x88",
39e0f6eeefSIan Rogers        "EventName": "BR_INST_EXEC.ALL_DIRECT_JMP",
40e0f6eeefSIan Rogers        "PublicDescription": "Speculative and retired macro-unconditional branches excluding calls and indirects.",
414b90798eSAndi Kleen        "SampleAfterValue": "200003",
42e0f6eeefSIan Rogers        "UMask": "0xc2"
434b90798eSAndi Kleen    },
444b90798eSAndi Kleen    {
45e0f6eeefSIan Rogers        "BriefDescription": "Speculative and retired direct near calls",
46e0f6eeefSIan Rogers        "EventCode": "0x88",
47e0f6eeefSIan Rogers        "EventName": "BR_INST_EXEC.ALL_DIRECT_NEAR_CALL",
48e0f6eeefSIan Rogers        "PublicDescription": "Speculative and retired direct near calls.",
49e0f6eeefSIan Rogers        "SampleAfterValue": "200003",
50e0f6eeefSIan Rogers        "UMask": "0xd0"
51e0f6eeefSIan Rogers    },
52e0f6eeefSIan Rogers    {
53e0f6eeefSIan Rogers        "BriefDescription": "Speculative and retired indirect branches excluding calls and returns",
54e0f6eeefSIan Rogers        "EventCode": "0x88",
55e0f6eeefSIan Rogers        "EventName": "BR_INST_EXEC.ALL_INDIRECT_JUMP_NON_CALL_RET",
56e0f6eeefSIan Rogers        "PublicDescription": "Speculative and retired indirect branches excluding calls and returns.",
57e0f6eeefSIan Rogers        "SampleAfterValue": "200003",
58e0f6eeefSIan Rogers        "UMask": "0xc4"
59e0f6eeefSIan Rogers    },
60e0f6eeefSIan Rogers    {
61e0f6eeefSIan Rogers        "BriefDescription": "Speculative and retired indirect return branches.",
62e0f6eeefSIan Rogers        "EventCode": "0x88",
634b90798eSAndi Kleen        "EventName": "BR_INST_EXEC.ALL_INDIRECT_NEAR_RETURN",
644b90798eSAndi Kleen        "SampleAfterValue": "200003",
65e0f6eeefSIan Rogers        "UMask": "0xc8"
664b90798eSAndi Kleen    },
674b90798eSAndi Kleen    {
68e0f6eeefSIan Rogers        "BriefDescription": "Not taken macro-conditional branches",
694b90798eSAndi Kleen        "EventCode": "0x88",
70e0f6eeefSIan Rogers        "EventName": "BR_INST_EXEC.NONTAKEN_CONDITIONAL",
71e0f6eeefSIan Rogers        "PublicDescription": "Not taken macro-conditional branches.",
724b90798eSAndi Kleen        "SampleAfterValue": "200003",
73e0f6eeefSIan Rogers        "UMask": "0x41"
744b90798eSAndi Kleen    },
754b90798eSAndi Kleen    {
76e0f6eeefSIan Rogers        "BriefDescription": "Taken speculative and retired macro-conditional branches",
774b90798eSAndi Kleen        "EventCode": "0x88",
78e0f6eeefSIan Rogers        "EventName": "BR_INST_EXEC.TAKEN_CONDITIONAL",
79e0f6eeefSIan Rogers        "PublicDescription": "Taken speculative and retired macro-conditional branches.",
804b90798eSAndi Kleen        "SampleAfterValue": "200003",
81e0f6eeefSIan Rogers        "UMask": "0x81"
824b90798eSAndi Kleen    },
834b90798eSAndi Kleen    {
84e0f6eeefSIan Rogers        "BriefDescription": "Taken speculative and retired macro-conditional branch instructions excluding calls and indirects",
85e0f6eeefSIan Rogers        "EventCode": "0x88",
86e0f6eeefSIan Rogers        "EventName": "BR_INST_EXEC.TAKEN_DIRECT_JUMP",
87e0f6eeefSIan Rogers        "PublicDescription": "Taken speculative and retired macro-conditional branch instructions excluding calls and indirects.",
884b90798eSAndi Kleen        "SampleAfterValue": "200003",
89e0f6eeefSIan Rogers        "UMask": "0x82"
904b90798eSAndi Kleen    },
914b90798eSAndi Kleen    {
92e0f6eeefSIan Rogers        "BriefDescription": "Taken speculative and retired direct near calls",
93e0f6eeefSIan Rogers        "EventCode": "0x88",
94e0f6eeefSIan Rogers        "EventName": "BR_INST_EXEC.TAKEN_DIRECT_NEAR_CALL",
95e0f6eeefSIan Rogers        "PublicDescription": "Taken speculative and retired direct near calls.",
964b90798eSAndi Kleen        "SampleAfterValue": "200003",
97e0f6eeefSIan Rogers        "UMask": "0x90"
984b90798eSAndi Kleen    },
994b90798eSAndi Kleen    {
100e0f6eeefSIan Rogers        "BriefDescription": "Taken speculative and retired indirect branches excluding calls and returns",
101e0f6eeefSIan Rogers        "EventCode": "0x88",
102e0f6eeefSIan Rogers        "EventName": "BR_INST_EXEC.TAKEN_INDIRECT_JUMP_NON_CALL_RET",
103e0f6eeefSIan Rogers        "PublicDescription": "Taken speculative and retired indirect branches excluding calls and returns.",
1044b90798eSAndi Kleen        "SampleAfterValue": "200003",
105e0f6eeefSIan Rogers        "UMask": "0x84"
1064b90798eSAndi Kleen    },
1074b90798eSAndi Kleen    {
108e0f6eeefSIan Rogers        "BriefDescription": "Taken speculative and retired indirect calls",
109e0f6eeefSIan Rogers        "EventCode": "0x88",
110e0f6eeefSIan Rogers        "EventName": "BR_INST_EXEC.TAKEN_INDIRECT_NEAR_CALL",
111e0f6eeefSIan Rogers        "PublicDescription": "Taken speculative and retired indirect calls.",
1124b90798eSAndi Kleen        "SampleAfterValue": "200003",
113e0f6eeefSIan Rogers        "UMask": "0xa0"
1144b90798eSAndi Kleen    },
1154b90798eSAndi Kleen    {
116e0f6eeefSIan Rogers        "BriefDescription": "Taken speculative and retired indirect branches with return mnemonic",
117e0f6eeefSIan Rogers        "EventCode": "0x88",
118e0f6eeefSIan Rogers        "EventName": "BR_INST_EXEC.TAKEN_INDIRECT_NEAR_RETURN",
119e0f6eeefSIan Rogers        "PublicDescription": "Taken speculative and retired indirect branches with return mnemonic.",
1204b90798eSAndi Kleen        "SampleAfterValue": "200003",
121e0f6eeefSIan Rogers        "UMask": "0x88"
1224b90798eSAndi Kleen    },
1234b90798eSAndi Kleen    {
124e0f6eeefSIan Rogers        "BriefDescription": "All (macro) branch instructions retired.",
125e0f6eeefSIan Rogers        "EventCode": "0xC4",
126e0f6eeefSIan Rogers        "EventName": "BR_INST_RETIRED.ALL_BRANCHES",
127e0f6eeefSIan Rogers        "PublicDescription": "Branch instructions at retirement.",
128e0f6eeefSIan Rogers        "SampleAfterValue": "400009"
129e0f6eeefSIan Rogers    },
130e0f6eeefSIan Rogers    {
131e0f6eeefSIan Rogers        "BriefDescription": "All (macro) branch instructions retired.",
132e0f6eeefSIan Rogers        "EventCode": "0xC4",
133e0f6eeefSIan Rogers        "EventName": "BR_INST_RETIRED.ALL_BRANCHES_PEBS",
134e0f6eeefSIan Rogers        "PEBS": "2",
135e0f6eeefSIan Rogers        "SampleAfterValue": "400009",
136e0f6eeefSIan Rogers        "UMask": "0x4"
137e0f6eeefSIan Rogers    },
138e0f6eeefSIan Rogers    {
139e0f6eeefSIan Rogers        "BriefDescription": "Conditional branch instructions retired.",
140e0f6eeefSIan Rogers        "EventCode": "0xC4",
141e0f6eeefSIan Rogers        "EventName": "BR_INST_RETIRED.CONDITIONAL",
142e0f6eeefSIan Rogers        "PEBS": "1",
143e0f6eeefSIan Rogers        "SampleAfterValue": "400009",
144e0f6eeefSIan Rogers        "UMask": "0x1"
145e0f6eeefSIan Rogers    },
146e0f6eeefSIan Rogers    {
147e0f6eeefSIan Rogers        "BriefDescription": "Far branch instructions retired.",
148e0f6eeefSIan Rogers        "EventCode": "0xC4",
149e0f6eeefSIan Rogers        "EventName": "BR_INST_RETIRED.FAR_BRANCH",
150e0f6eeefSIan Rogers        "PublicDescription": "Number of far branches retired.",
151e0f6eeefSIan Rogers        "SampleAfterValue": "100007",
152e0f6eeefSIan Rogers        "UMask": "0x40"
153e0f6eeefSIan Rogers    },
154e0f6eeefSIan Rogers    {
155e0f6eeefSIan Rogers        "BriefDescription": "Direct and indirect near call instructions retired.",
156e0f6eeefSIan Rogers        "EventCode": "0xC4",
157e0f6eeefSIan Rogers        "EventName": "BR_INST_RETIRED.NEAR_CALL",
158e0f6eeefSIan Rogers        "PEBS": "1",
159e0f6eeefSIan Rogers        "SampleAfterValue": "100007",
160e0f6eeefSIan Rogers        "UMask": "0x2"
161e0f6eeefSIan Rogers    },
162e0f6eeefSIan Rogers    {
163e0f6eeefSIan Rogers        "BriefDescription": "Direct and indirect macro near call instructions retired (captured in ring 3).",
164e0f6eeefSIan Rogers        "EventCode": "0xC4",
165e0f6eeefSIan Rogers        "EventName": "BR_INST_RETIRED.NEAR_CALL_R3",
166e0f6eeefSIan Rogers        "PEBS": "1",
167e0f6eeefSIan Rogers        "SampleAfterValue": "100007",
168e0f6eeefSIan Rogers        "UMask": "0x2"
169e0f6eeefSIan Rogers    },
170e0f6eeefSIan Rogers    {
171e0f6eeefSIan Rogers        "BriefDescription": "Return instructions retired.",
172e0f6eeefSIan Rogers        "EventCode": "0xC4",
173e0f6eeefSIan Rogers        "EventName": "BR_INST_RETIRED.NEAR_RETURN",
174e0f6eeefSIan Rogers        "PEBS": "1",
175e0f6eeefSIan Rogers        "SampleAfterValue": "100007",
176e0f6eeefSIan Rogers        "UMask": "0x8"
177e0f6eeefSIan Rogers    },
178e0f6eeefSIan Rogers    {
179e0f6eeefSIan Rogers        "BriefDescription": "Taken branch instructions retired.",
180e0f6eeefSIan Rogers        "EventCode": "0xC4",
181e0f6eeefSIan Rogers        "EventName": "BR_INST_RETIRED.NEAR_TAKEN",
182e0f6eeefSIan Rogers        "PEBS": "1",
183e0f6eeefSIan Rogers        "SampleAfterValue": "400009",
184e0f6eeefSIan Rogers        "UMask": "0x20"
185e0f6eeefSIan Rogers    },
186e0f6eeefSIan Rogers    {
187e0f6eeefSIan Rogers        "BriefDescription": "Not taken branch instructions retired.",
188e0f6eeefSIan Rogers        "EventCode": "0xC4",
189e0f6eeefSIan Rogers        "EventName": "BR_INST_RETIRED.NOT_TAKEN",
190e0f6eeefSIan Rogers        "PublicDescription": "Counts the number of not taken branch instructions retired.",
191e0f6eeefSIan Rogers        "SampleAfterValue": "400009",
192e0f6eeefSIan Rogers        "UMask": "0x10"
193e0f6eeefSIan Rogers    },
194e0f6eeefSIan Rogers    {
1954b90798eSAndi Kleen        "BriefDescription": "Speculative and retired mispredicted macro conditional branches",
1964b90798eSAndi Kleen        "EventCode": "0x89",
1974b90798eSAndi Kleen        "EventName": "BR_MISP_EXEC.ALL_BRANCHES",
198e0f6eeefSIan Rogers        "PublicDescription": "Counts all near executed branches (not necessarily retired).",
1994b90798eSAndi Kleen        "SampleAfterValue": "200003",
200e0f6eeefSIan Rogers        "UMask": "0xff"
201e0f6eeefSIan Rogers    },
202e0f6eeefSIan Rogers    {
2034b90798eSAndi Kleen        "BriefDescription": "Speculative and retired mispredicted macro conditional branches",
204e0f6eeefSIan Rogers        "EventCode": "0x89",
205e0f6eeefSIan Rogers        "EventName": "BR_MISP_EXEC.ALL_CONDITIONAL",
206e0f6eeefSIan Rogers        "PublicDescription": "Speculative and retired mispredicted macro conditional branches.",
207e0f6eeefSIan Rogers        "SampleAfterValue": "200003",
208e0f6eeefSIan Rogers        "UMask": "0xc1"
2094b90798eSAndi Kleen    },
2104b90798eSAndi Kleen    {
211e0f6eeefSIan Rogers        "BriefDescription": "Mispredicted indirect branches excluding calls and returns",
212e0f6eeefSIan Rogers        "EventCode": "0x89",
213e0f6eeefSIan Rogers        "EventName": "BR_MISP_EXEC.ALL_INDIRECT_JUMP_NON_CALL_RET",
214e0f6eeefSIan Rogers        "PublicDescription": "Mispredicted indirect branches excluding calls and returns.",
215e0f6eeefSIan Rogers        "SampleAfterValue": "200003",
216e0f6eeefSIan Rogers        "UMask": "0xc4"
217e0f6eeefSIan Rogers    },
218e0f6eeefSIan Rogers    {
219*31959321SIan Rogers        "BriefDescription": "Speculative mispredicted indirect branches",
220*31959321SIan Rogers        "EventCode": "0x89",
221*31959321SIan Rogers        "EventName": "BR_MISP_EXEC.INDIRECT",
222*31959321SIan Rogers        "PublicDescription": "Counts speculatively miss-predicted indirect branches at execution time. Counts for indirect near CALL or JMP instructions (RET excluded).",
223*31959321SIan Rogers        "SampleAfterValue": "200003",
224*31959321SIan Rogers        "UMask": "0xe4"
225*31959321SIan Rogers    },
226*31959321SIan Rogers    {
227e0f6eeefSIan Rogers        "BriefDescription": "Not taken speculative and retired mispredicted macro conditional branches",
228e0f6eeefSIan Rogers        "EventCode": "0x89",
229e0f6eeefSIan Rogers        "EventName": "BR_MISP_EXEC.NONTAKEN_CONDITIONAL",
230e0f6eeefSIan Rogers        "PublicDescription": "Not taken speculative and retired mispredicted macro conditional branches.",
231e0f6eeefSIan Rogers        "SampleAfterValue": "200003",
232e0f6eeefSIan Rogers        "UMask": "0x41"
233e0f6eeefSIan Rogers    },
234e0f6eeefSIan Rogers    {
235e0f6eeefSIan Rogers        "BriefDescription": "Taken speculative and retired mispredicted macro conditional branches",
236e0f6eeefSIan Rogers        "EventCode": "0x89",
237e0f6eeefSIan Rogers        "EventName": "BR_MISP_EXEC.TAKEN_CONDITIONAL",
238e0f6eeefSIan Rogers        "PublicDescription": "Taken speculative and retired mispredicted macro conditional branches.",
239e0f6eeefSIan Rogers        "SampleAfterValue": "200003",
240e0f6eeefSIan Rogers        "UMask": "0x81"
241e0f6eeefSIan Rogers    },
242e0f6eeefSIan Rogers    {
243e0f6eeefSIan Rogers        "BriefDescription": "Taken speculative and retired mispredicted indirect branches excluding calls and returns",
244e0f6eeefSIan Rogers        "EventCode": "0x89",
245e0f6eeefSIan Rogers        "EventName": "BR_MISP_EXEC.TAKEN_INDIRECT_JUMP_NON_CALL_RET",
246e0f6eeefSIan Rogers        "PublicDescription": "Taken speculative and retired mispredicted indirect branches excluding calls and returns.",
247e0f6eeefSIan Rogers        "SampleAfterValue": "200003",
248e0f6eeefSIan Rogers        "UMask": "0x84"
249e0f6eeefSIan Rogers    },
250e0f6eeefSIan Rogers    {
251e0f6eeefSIan Rogers        "BriefDescription": "Taken speculative and retired mispredicted indirect calls",
252e0f6eeefSIan Rogers        "EventCode": "0x89",
253e0f6eeefSIan Rogers        "EventName": "BR_MISP_EXEC.TAKEN_INDIRECT_NEAR_CALL",
254e0f6eeefSIan Rogers        "PublicDescription": "Taken speculative and retired mispredicted indirect calls.",
255e0f6eeefSIan Rogers        "SampleAfterValue": "200003",
256e0f6eeefSIan Rogers        "UMask": "0xa0"
257e0f6eeefSIan Rogers    },
258e0f6eeefSIan Rogers    {
259e0f6eeefSIan Rogers        "BriefDescription": "Taken speculative and retired mispredicted indirect branches with return mnemonic",
260e0f6eeefSIan Rogers        "EventCode": "0x89",
261e0f6eeefSIan Rogers        "EventName": "BR_MISP_EXEC.TAKEN_RETURN_NEAR",
262e0f6eeefSIan Rogers        "PublicDescription": "Taken speculative and retired mispredicted indirect branches with return mnemonic.",
263e0f6eeefSIan Rogers        "SampleAfterValue": "200003",
264e0f6eeefSIan Rogers        "UMask": "0x88"
265e0f6eeefSIan Rogers    },
266e0f6eeefSIan Rogers    {
267e0f6eeefSIan Rogers        "BriefDescription": "All mispredicted macro branch instructions retired.",
268e0f6eeefSIan Rogers        "EventCode": "0xC5",
269e0f6eeefSIan Rogers        "EventName": "BR_MISP_RETIRED.ALL_BRANCHES",
270e0f6eeefSIan Rogers        "PublicDescription": "Mispredicted branch instructions at retirement.",
271e0f6eeefSIan Rogers        "SampleAfterValue": "400009"
272e0f6eeefSIan Rogers    },
273e0f6eeefSIan Rogers    {
274e0f6eeefSIan Rogers        "BriefDescription": "Mispredicted macro branch instructions retired.",
275e0f6eeefSIan Rogers        "EventCode": "0xC5",
276e0f6eeefSIan Rogers        "EventName": "BR_MISP_RETIRED.ALL_BRANCHES_PEBS",
277e0f6eeefSIan Rogers        "PEBS": "2",
278e0f6eeefSIan Rogers        "SampleAfterValue": "400009",
279e0f6eeefSIan Rogers        "UMask": "0x4"
280e0f6eeefSIan Rogers    },
281e0f6eeefSIan Rogers    {
282e0f6eeefSIan Rogers        "BriefDescription": "Mispredicted conditional branch instructions retired.",
283e0f6eeefSIan Rogers        "EventCode": "0xC5",
284e0f6eeefSIan Rogers        "EventName": "BR_MISP_RETIRED.CONDITIONAL",
285e0f6eeefSIan Rogers        "PEBS": "1",
286e0f6eeefSIan Rogers        "SampleAfterValue": "400009",
287e0f6eeefSIan Rogers        "UMask": "0x1"
288e0f6eeefSIan Rogers    },
289e0f6eeefSIan Rogers    {
290e0f6eeefSIan Rogers        "BriefDescription": "number of near branch instructions retired that were mispredicted and taken.",
291e0f6eeefSIan Rogers        "EventCode": "0xC5",
292e0f6eeefSIan Rogers        "EventName": "BR_MISP_RETIRED.NEAR_TAKEN",
293e0f6eeefSIan Rogers        "PEBS": "1",
294e0f6eeefSIan Rogers        "SampleAfterValue": "400009",
295e0f6eeefSIan Rogers        "UMask": "0x20"
296e0f6eeefSIan Rogers    },
297e0f6eeefSIan Rogers    {
298e0f6eeefSIan Rogers        "BriefDescription": "Count XClk pulses when this thread is unhalted and the other is halted.",
299e0f6eeefSIan Rogers        "EventCode": "0x3C",
300e0f6eeefSIan Rogers        "EventName": "CPU_CLK_THREAD_UNHALTED.ONE_THREAD_ACTIVE",
3014b90798eSAndi Kleen        "SampleAfterValue": "2000003",
302e0f6eeefSIan Rogers        "UMask": "0x2"
3034b90798eSAndi Kleen    },
3044b90798eSAndi Kleen    {
305e0f6eeefSIan Rogers        "BriefDescription": "Reference cycles when the thread is unhalted (counts at 100 MHz rate)",
306e0f6eeefSIan Rogers        "EventCode": "0x3C",
307e0f6eeefSIan Rogers        "EventName": "CPU_CLK_THREAD_UNHALTED.REF_XCLK",
308e0f6eeefSIan Rogers        "PublicDescription": "Increments at the frequency of XCLK (100 MHz) when not halted.",
309e0f6eeefSIan Rogers        "SampleAfterValue": "2000003",
310e0f6eeefSIan Rogers        "UMask": "0x1"
311e0f6eeefSIan Rogers    },
312e0f6eeefSIan Rogers    {
3134b90798eSAndi Kleen        "AnyThread": "1",
314e0f6eeefSIan Rogers        "BriefDescription": "Reference cycles when the at least one thread on the physical core is unhalted. (counts at 100 MHz rate)",
315e0f6eeefSIan Rogers        "EventCode": "0x3C",
316e0f6eeefSIan Rogers        "EventName": "CPU_CLK_THREAD_UNHALTED.REF_XCLK_ANY",
3174b90798eSAndi Kleen        "SampleAfterValue": "2000003",
318e0f6eeefSIan Rogers        "UMask": "0x1"
3194b90798eSAndi Kleen    },
3204b90798eSAndi Kleen    {
321e0f6eeefSIan Rogers        "BriefDescription": "Count XClk pulses when this thread is unhalted and the other thread is halted.",
322e0f6eeefSIan Rogers        "EventCode": "0x3C",
323e0f6eeefSIan Rogers        "EventName": "CPU_CLK_UNHALTED.ONE_THREAD_ACTIVE",
324c955cd2bSAndi Kleen        "SampleAfterValue": "2000003",
325e0f6eeefSIan Rogers        "UMask": "0x2"
326c955cd2bSAndi Kleen    },
327c955cd2bSAndi Kleen    {
328e0f6eeefSIan Rogers        "BriefDescription": "Reference cycles when the core is not in halt state.",
329e0f6eeefSIan Rogers        "EventName": "CPU_CLK_UNHALTED.REF_TSC",
330e0f6eeefSIan Rogers        "SampleAfterValue": "2000003",
331e0f6eeefSIan Rogers        "UMask": "0x3"
332e0f6eeefSIan Rogers    },
333e0f6eeefSIan Rogers    {
334e0f6eeefSIan Rogers        "BriefDescription": "Reference cycles when the thread is unhalted (counts at 100 MHz rate)",
335e0f6eeefSIan Rogers        "EventCode": "0x3C",
336e0f6eeefSIan Rogers        "EventName": "CPU_CLK_UNHALTED.REF_XCLK",
337e0f6eeefSIan Rogers        "PublicDescription": "Reference cycles when the thread is unhalted. (counts at 100 MHz rate)",
338e0f6eeefSIan Rogers        "SampleAfterValue": "2000003",
339e0f6eeefSIan Rogers        "UMask": "0x1"
340e0f6eeefSIan Rogers    },
341e0f6eeefSIan Rogers    {
3424b90798eSAndi Kleen        "AnyThread": "1",
343e0f6eeefSIan Rogers        "BriefDescription": "Reference cycles when the at least one thread on the physical core is unhalted. (counts at 100 MHz rate)",
344e0f6eeefSIan Rogers        "EventCode": "0x3C",
345e0f6eeefSIan Rogers        "EventName": "CPU_CLK_UNHALTED.REF_XCLK_ANY",
3464b90798eSAndi Kleen        "SampleAfterValue": "2000003",
347e0f6eeefSIan Rogers        "UMask": "0x1"
3484b90798eSAndi Kleen    },
3494b90798eSAndi Kleen    {
350e0f6eeefSIan Rogers        "BriefDescription": "Core cycles when the thread is not in halt state.",
351e0f6eeefSIan Rogers        "EventName": "CPU_CLK_UNHALTED.THREAD",
3524b90798eSAndi Kleen        "SampleAfterValue": "2000003",
353e0f6eeefSIan Rogers        "UMask": "0x2"
3544b90798eSAndi Kleen    },
3554b90798eSAndi Kleen    {
3564b90798eSAndi Kleen        "AnyThread": "1",
357e0f6eeefSIan Rogers        "BriefDescription": "Core cycles when at least one thread on the physical core is not in halt state",
358e0f6eeefSIan Rogers        "EventName": "CPU_CLK_UNHALTED.THREAD_ANY",
359e0f6eeefSIan Rogers        "PublicDescription": "Core cycles when at least one thread on the physical core is not in halt state.",
3604b90798eSAndi Kleen        "SampleAfterValue": "2000003",
361e0f6eeefSIan Rogers        "UMask": "0x2"
3624b90798eSAndi Kleen    },
3634b90798eSAndi Kleen    {
364e0f6eeefSIan Rogers        "BriefDescription": "Thread cycles when thread is not in halt state",
365e0f6eeefSIan Rogers        "EventCode": "0x3C",
366e0f6eeefSIan Rogers        "EventName": "CPU_CLK_UNHALTED.THREAD_P",
367e0f6eeefSIan Rogers        "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.",
368e0f6eeefSIan Rogers        "SampleAfterValue": "2000003"
369c955cd2bSAndi Kleen    },
370c955cd2bSAndi Kleen    {
3714b90798eSAndi Kleen        "AnyThread": "1",
372e0f6eeefSIan Rogers        "BriefDescription": "Core cycles when at least one thread on the physical core is not in halt state",
373e0f6eeefSIan Rogers        "EventCode": "0x3C",
374e0f6eeefSIan Rogers        "EventName": "CPU_CLK_UNHALTED.THREAD_P_ANY",
375e0f6eeefSIan Rogers        "PublicDescription": "Core cycles when at least one thread on the physical core is not in halt state.",
376e0f6eeefSIan Rogers        "SampleAfterValue": "2000003"
377c955cd2bSAndi Kleen    },
378c955cd2bSAndi Kleen    {
379e0f6eeefSIan Rogers        "BriefDescription": "Cycles while L1 cache miss demand load is outstanding.",
380c955cd2bSAndi Kleen        "CounterMask": "8",
381c955cd2bSAndi Kleen        "EventCode": "0xA3",
382c955cd2bSAndi Kleen        "EventName": "CYCLE_ACTIVITY.CYCLES_L1D_MISS",
383c955cd2bSAndi Kleen        "SampleAfterValue": "2000003",
384e0f6eeefSIan Rogers        "UMask": "0x8"
385e0f6eeefSIan Rogers    },
386e0f6eeefSIan Rogers    {
387e0f6eeefSIan Rogers        "BriefDescription": "Cycles with pending L1 cache miss loads.",
388c955cd2bSAndi Kleen        "CounterMask": "8",
3894b90798eSAndi Kleen        "EventCode": "0xA3",
390e0f6eeefSIan Rogers        "EventName": "CYCLE_ACTIVITY.CYCLES_L1D_PENDING",
391e0f6eeefSIan Rogers        "PublicDescription": "Cycles with pending L1 cache miss loads. Set AnyThread to count per core.",
3924b90798eSAndi Kleen        "SampleAfterValue": "2000003",
393e0f6eeefSIan Rogers        "UMask": "0x8"
3944b90798eSAndi Kleen    },
3954b90798eSAndi Kleen    {
396e0f6eeefSIan Rogers        "BriefDescription": "Cycles while L2 cache miss load* is outstanding.",
397e0f6eeefSIan Rogers        "CounterMask": "1",
398c955cd2bSAndi Kleen        "EventCode": "0xA3",
399e0f6eeefSIan Rogers        "EventName": "CYCLE_ACTIVITY.CYCLES_L2_MISS",
400e0f6eeefSIan Rogers        "SampleAfterValue": "2000003",
401e0f6eeefSIan Rogers        "UMask": "0x1"
402e0f6eeefSIan Rogers    },
403e0f6eeefSIan Rogers    {
404e0f6eeefSIan Rogers        "BriefDescription": "Cycles with pending L2 cache miss loads.",
405e0f6eeefSIan Rogers        "CounterMask": "1",
406e0f6eeefSIan Rogers        "EventCode": "0xA3",
407e0f6eeefSIan Rogers        "EventName": "CYCLE_ACTIVITY.CYCLES_L2_PENDING",
408e0f6eeefSIan Rogers        "PublicDescription": "Cycles with pending L2 miss loads. Set AnyThread to count per core.",
409e0f6eeefSIan Rogers        "SampleAfterValue": "2000003",
410e0f6eeefSIan Rogers        "UMask": "0x1"
411e0f6eeefSIan Rogers    },
412e0f6eeefSIan Rogers    {
413e0f6eeefSIan Rogers        "BriefDescription": "Cycles with pending memory loads.",
414e0f6eeefSIan Rogers        "CounterMask": "2",
415e0f6eeefSIan Rogers        "EventCode": "0xA3",
416e0f6eeefSIan Rogers        "EventName": "CYCLE_ACTIVITY.CYCLES_LDM_PENDING",
417e0f6eeefSIan Rogers        "PublicDescription": "Cycles with pending memory loads. Set AnyThread to count per core.",
418e0f6eeefSIan Rogers        "SampleAfterValue": "2000003",
419e0f6eeefSIan Rogers        "UMask": "0x2"
420e0f6eeefSIan Rogers    },
421e0f6eeefSIan Rogers    {
422e0f6eeefSIan Rogers        "BriefDescription": "Cycles while memory subsystem has an outstanding load.",
423e0f6eeefSIan Rogers        "CounterMask": "2",
424e0f6eeefSIan Rogers        "EventCode": "0xA3",
425e0f6eeefSIan Rogers        "EventName": "CYCLE_ACTIVITY.CYCLES_MEM_ANY",
426e0f6eeefSIan Rogers        "SampleAfterValue": "2000003",
427e0f6eeefSIan Rogers        "UMask": "0x2"
428e0f6eeefSIan Rogers    },
429e0f6eeefSIan Rogers    {
430e0f6eeefSIan Rogers        "BriefDescription": "This event increments by 1 for every cycle where there was no execute for this thread.",
431e0f6eeefSIan Rogers        "CounterMask": "4",
432e0f6eeefSIan Rogers        "EventCode": "0xA3",
433e0f6eeefSIan Rogers        "EventName": "CYCLE_ACTIVITY.CYCLES_NO_EXECUTE",
434e0f6eeefSIan Rogers        "PublicDescription": "Total execution stalls.",
435e0f6eeefSIan Rogers        "SampleAfterValue": "2000003",
436e0f6eeefSIan Rogers        "UMask": "0x4"
437e0f6eeefSIan Rogers    },
438e0f6eeefSIan Rogers    {
439e0f6eeefSIan Rogers        "BriefDescription": "Execution stalls while L1 cache miss demand load is outstanding.",
440e0f6eeefSIan Rogers        "CounterMask": "12",
441e0f6eeefSIan Rogers        "EventCode": "0xA3",
442c955cd2bSAndi Kleen        "EventName": "CYCLE_ACTIVITY.STALLS_L1D_MISS",
443c955cd2bSAndi Kleen        "SampleAfterValue": "2000003",
444e0f6eeefSIan Rogers        "UMask": "0xc"
445e0f6eeefSIan Rogers    },
446e0f6eeefSIan Rogers    {
447e0f6eeefSIan Rogers        "BriefDescription": "Execution stalls due to L1 data cache misses",
448c955cd2bSAndi Kleen        "CounterMask": "12",
449e0f6eeefSIan Rogers        "EventCode": "0xA3",
450e0f6eeefSIan Rogers        "EventName": "CYCLE_ACTIVITY.STALLS_L1D_PENDING",
451e0f6eeefSIan Rogers        "PublicDescription": "Execution stalls due to L1 data cache miss loads. Set Cmask=0CH.",
452e0f6eeefSIan Rogers        "SampleAfterValue": "2000003",
453e0f6eeefSIan Rogers        "UMask": "0xc"
454c955cd2bSAndi Kleen    },
455c955cd2bSAndi Kleen    {
456e0f6eeefSIan Rogers        "BriefDescription": "Execution stalls while L2 cache miss load* is outstanding.",
457e0f6eeefSIan Rogers        "CounterMask": "5",
458e0f6eeefSIan Rogers        "EventCode": "0xA3",
459e0f6eeefSIan Rogers        "EventName": "CYCLE_ACTIVITY.STALLS_L2_MISS",
4604b90798eSAndi Kleen        "SampleAfterValue": "2000003",
461e0f6eeefSIan Rogers        "UMask": "0x5"
4624b90798eSAndi Kleen    },
4634b90798eSAndi Kleen    {
464e0f6eeefSIan Rogers        "BriefDescription": "Execution stalls due to L2 cache misses.",
465e0f6eeefSIan Rogers        "CounterMask": "5",
466e0f6eeefSIan Rogers        "EventCode": "0xA3",
467e0f6eeefSIan Rogers        "EventName": "CYCLE_ACTIVITY.STALLS_L2_PENDING",
468e0f6eeefSIan Rogers        "PublicDescription": "Number of loads missed L2.",
4694b90798eSAndi Kleen        "SampleAfterValue": "2000003",
470e0f6eeefSIan Rogers        "UMask": "0x5"
4714b90798eSAndi Kleen    },
4724b90798eSAndi Kleen    {
473e0f6eeefSIan Rogers        "BriefDescription": "Execution stalls due to memory subsystem.",
474e0f6eeefSIan Rogers        "CounterMask": "6",
475e0f6eeefSIan Rogers        "EventCode": "0xA3",
476e0f6eeefSIan Rogers        "EventName": "CYCLE_ACTIVITY.STALLS_LDM_PENDING",
477c955cd2bSAndi Kleen        "SampleAfterValue": "2000003",
478e0f6eeefSIan Rogers        "UMask": "0x6"
479e0f6eeefSIan Rogers    },
480e0f6eeefSIan Rogers    {
481e0f6eeefSIan Rogers        "BriefDescription": "Execution stalls while memory subsystem has an outstanding load.",
482e0f6eeefSIan Rogers        "CounterMask": "6",
483e0f6eeefSIan Rogers        "EventCode": "0xA3",
484e0f6eeefSIan Rogers        "EventName": "CYCLE_ACTIVITY.STALLS_MEM_ANY",
485e0f6eeefSIan Rogers        "SampleAfterValue": "2000003",
486e0f6eeefSIan Rogers        "UMask": "0x6"
487e0f6eeefSIan Rogers    },
488e0f6eeefSIan Rogers    {
489e0f6eeefSIan Rogers        "BriefDescription": "Total execution stalls.",
490c955cd2bSAndi Kleen        "CounterMask": "4",
491e0f6eeefSIan Rogers        "EventCode": "0xA3",
492e0f6eeefSIan Rogers        "EventName": "CYCLE_ACTIVITY.STALLS_TOTAL",
493e0f6eeefSIan Rogers        "SampleAfterValue": "2000003",
494e0f6eeefSIan Rogers        "UMask": "0x4"
495c955cd2bSAndi Kleen    },
496c955cd2bSAndi Kleen    {
497e0f6eeefSIan Rogers        "BriefDescription": "Stall cycles because IQ is full",
498e0f6eeefSIan Rogers        "EventCode": "0x87",
499e0f6eeefSIan Rogers        "EventName": "ILD_STALL.IQ_FULL",
500e0f6eeefSIan Rogers        "PublicDescription": "Stall cycles due to IQ is full.",
5014b90798eSAndi Kleen        "SampleAfterValue": "2000003",
502e0f6eeefSIan Rogers        "UMask": "0x4"
5034b90798eSAndi Kleen    },
5044b90798eSAndi Kleen    {
505e0f6eeefSIan Rogers        "BriefDescription": "Stalls caused by changing prefix length of the instruction.",
506e0f6eeefSIan Rogers        "EventCode": "0x87",
507e0f6eeefSIan Rogers        "EventName": "ILD_STALL.LCP",
5084b90798eSAndi Kleen        "SampleAfterValue": "2000003",
509e0f6eeefSIan Rogers        "UMask": "0x1"
5104b90798eSAndi Kleen    },
5114b90798eSAndi Kleen    {
512e0f6eeefSIan Rogers        "BriefDescription": "Instructions retired from execution.",
513e0f6eeefSIan Rogers        "EventName": "INST_RETIRED.ANY",
5144b90798eSAndi Kleen        "SampleAfterValue": "2000003",
515e0f6eeefSIan Rogers        "UMask": "0x1"
5164b90798eSAndi Kleen    },
5174b90798eSAndi Kleen    {
518c955cd2bSAndi Kleen        "BriefDescription": "Number of instructions retired. General Counter   - architectural event",
519e0f6eeefSIan Rogers        "EventCode": "0xC0",
520e0f6eeefSIan Rogers        "EventName": "INST_RETIRED.ANY_P",
521e0f6eeefSIan Rogers        "PublicDescription": "Number of instructions at retirement.",
522e0f6eeefSIan Rogers        "SampleAfterValue": "2000003"
5234b90798eSAndi Kleen    },
5244b90798eSAndi Kleen    {
525e0f6eeefSIan Rogers        "BriefDescription": "Precise instruction retired event with HW to reduce effect of PEBS shadow in IP distribution",
526e0f6eeefSIan Rogers        "EventCode": "0xC0",
527e0f6eeefSIan Rogers        "EventName": "INST_RETIRED.PREC_DIST",
528c955cd2bSAndi Kleen        "PEBS": "2",
529c955cd2bSAndi Kleen        "PublicDescription": "Precise instruction retired event with HW to reduce effect of PEBS shadow in IP distribution.",
530c955cd2bSAndi Kleen        "SampleAfterValue": "2000003",
531e0f6eeefSIan Rogers        "UMask": "0x1"
532c955cd2bSAndi Kleen    },
533c955cd2bSAndi Kleen    {
534e0f6eeefSIan Rogers        "BriefDescription": "Number of cycles waiting for the checkpoints in Resource Allocation Table (RAT) to be recovered after Nuke due to all other cases except JEClear (e.g. whenever a ucode assist is needed like SSE exception, memory disambiguation, etc.)",
535c955cd2bSAndi Kleen        "CounterMask": "1",
536e0f6eeefSIan Rogers        "EventCode": "0x0D",
537e0f6eeefSIan Rogers        "EventName": "INT_MISC.RECOVERY_CYCLES",
538c955cd2bSAndi Kleen        "SampleAfterValue": "2000003",
539e0f6eeefSIan Rogers        "UMask": "0x3"
540c955cd2bSAndi Kleen    },
541c955cd2bSAndi Kleen    {
5424b90798eSAndi Kleen        "AnyThread": "1",
543e0f6eeefSIan Rogers        "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).",
544c955cd2bSAndi Kleen        "CounterMask": "1",
545e0f6eeefSIan Rogers        "EventCode": "0x0D",
546e0f6eeefSIan Rogers        "EventName": "INT_MISC.RECOVERY_CYCLES_ANY",
547c955cd2bSAndi Kleen        "SampleAfterValue": "2000003",
548e0f6eeefSIan Rogers        "UMask": "0x3"
5494b90798eSAndi Kleen    },
5504b90798eSAndi Kleen    {
55180c14459SIan Rogers        "BriefDescription": "Number of occurrences waiting for the checkpoints in Resource Allocation Table (RAT) to be recovered after Nuke due to all other cases except JEClear (e.g. whenever a ucode assist is needed like SSE exception, memory disambiguation, etc.)",
552e0f6eeefSIan Rogers        "CounterMask": "1",
553c955cd2bSAndi Kleen        "EdgeDetect": "1",
554e0f6eeefSIan Rogers        "EventCode": "0x0D",
555e0f6eeefSIan Rogers        "EventName": "INT_MISC.RECOVERY_STALLS_COUNT",
556e0f6eeefSIan Rogers        "SampleAfterValue": "2000003",
557e0f6eeefSIan Rogers        "UMask": "0x3"
558e0f6eeefSIan Rogers    },
559e0f6eeefSIan Rogers    {
560e0f6eeefSIan Rogers        "BriefDescription": "This event counts the number of times that split load operations are temporarily blocked because all resources for handling the split accesses are in use.",
561e0f6eeefSIan Rogers        "EventCode": "0x03",
562e0f6eeefSIan Rogers        "EventName": "LD_BLOCKS.NO_SR",
563e0f6eeefSIan Rogers        "PublicDescription": "The number of times that split load operations are temporarily blocked because all resources for handling the split accesses are in use.",
564e0f6eeefSIan Rogers        "SampleAfterValue": "100003",
565e0f6eeefSIan Rogers        "UMask": "0x8"
566e0f6eeefSIan Rogers    },
567e0f6eeefSIan Rogers    {
568e0f6eeefSIan Rogers        "BriefDescription": "Cases when loads get true Block-on-Store blocking code preventing store forwarding",
569e0f6eeefSIan Rogers        "EventCode": "0x03",
570e0f6eeefSIan Rogers        "EventName": "LD_BLOCKS.STORE_FORWARD",
571e0f6eeefSIan Rogers        "PublicDescription": "Loads blocked by overlapping with store buffer that cannot be forwarded.",
572e0f6eeefSIan Rogers        "SampleAfterValue": "100003",
573e0f6eeefSIan Rogers        "UMask": "0x2"
574e0f6eeefSIan Rogers    },
575e0f6eeefSIan Rogers    {
576e0f6eeefSIan Rogers        "BriefDescription": "False dependencies in MOB due to partial compare on address",
577e0f6eeefSIan Rogers        "EventCode": "0x07",
578e0f6eeefSIan Rogers        "EventName": "LD_BLOCKS_PARTIAL.ADDRESS_ALIAS",
579e0f6eeefSIan Rogers        "PublicDescription": "False dependencies in MOB due to partial compare on address.",
580e0f6eeefSIan Rogers        "SampleAfterValue": "100003",
581e0f6eeefSIan Rogers        "UMask": "0x1"
582e0f6eeefSIan Rogers    },
583e0f6eeefSIan Rogers    {
584e0f6eeefSIan Rogers        "BriefDescription": "Not software-prefetch load dispatches that hit FB allocated for hardware prefetch",
585e0f6eeefSIan Rogers        "EventCode": "0x4C",
586e0f6eeefSIan Rogers        "EventName": "LOAD_HIT_PRE.HW_PF",
587e0f6eeefSIan Rogers        "PublicDescription": "Non-SW-prefetch load dispatches that hit fill buffer allocated for H/W prefetch.",
588e0f6eeefSIan Rogers        "SampleAfterValue": "100003",
589e0f6eeefSIan Rogers        "UMask": "0x2"
590e0f6eeefSIan Rogers    },
591e0f6eeefSIan Rogers    {
592e0f6eeefSIan Rogers        "BriefDescription": "Not software-prefetch load dispatches that hit FB allocated for software prefetch",
593e0f6eeefSIan Rogers        "EventCode": "0x4C",
594e0f6eeefSIan Rogers        "EventName": "LOAD_HIT_PRE.SW_PF",
595e0f6eeefSIan Rogers        "PublicDescription": "Non-SW-prefetch load dispatches that hit fill buffer allocated for S/W prefetch.",
596e0f6eeefSIan Rogers        "SampleAfterValue": "100003",
597e0f6eeefSIan Rogers        "UMask": "0x1"
598e0f6eeefSIan Rogers    },
599e0f6eeefSIan Rogers    {
600e0f6eeefSIan Rogers        "BriefDescription": "Cycles 4 Uops delivered by the LSD, but didn't come from the decoder",
601e0f6eeefSIan Rogers        "CounterMask": "4",
602e0f6eeefSIan Rogers        "EventCode": "0xA8",
603e0f6eeefSIan Rogers        "EventName": "LSD.CYCLES_4_UOPS",
604e0f6eeefSIan Rogers        "PublicDescription": "Cycles 4 Uops delivered by the LSD, but didn't come from the decoder.",
605e0f6eeefSIan Rogers        "SampleAfterValue": "2000003",
606e0f6eeefSIan Rogers        "UMask": "0x1"
607e0f6eeefSIan Rogers    },
608e0f6eeefSIan Rogers    {
609e0f6eeefSIan Rogers        "BriefDescription": "Cycles Uops delivered by the LSD, but didn't come from the decoder",
610e0f6eeefSIan Rogers        "CounterMask": "1",
611e0f6eeefSIan Rogers        "EventCode": "0xA8",
612e0f6eeefSIan Rogers        "EventName": "LSD.CYCLES_ACTIVE",
613e0f6eeefSIan Rogers        "PublicDescription": "Cycles Uops delivered by the LSD, but didn't come from the decoder.",
614e0f6eeefSIan Rogers        "SampleAfterValue": "2000003",
615e0f6eeefSIan Rogers        "UMask": "0x1"
616e0f6eeefSIan Rogers    },
617e0f6eeefSIan Rogers    {
618e0f6eeefSIan Rogers        "BriefDescription": "Number of Uops delivered by the LSD.",
619e0f6eeefSIan Rogers        "EventCode": "0xA8",
620e0f6eeefSIan Rogers        "EventName": "LSD.UOPS",
621e0f6eeefSIan Rogers        "SampleAfterValue": "2000003",
622e0f6eeefSIan Rogers        "UMask": "0x1"
623e0f6eeefSIan Rogers    },
624e0f6eeefSIan Rogers    {
625e0f6eeefSIan Rogers        "BriefDescription": "Number of machine clears (nukes) of any type.",
626e0f6eeefSIan Rogers        "CounterMask": "1",
627e0f6eeefSIan Rogers        "EdgeDetect": "1",
628e0f6eeefSIan Rogers        "EventCode": "0xC3",
629c955cd2bSAndi Kleen        "EventName": "MACHINE_CLEARS.COUNT",
630c955cd2bSAndi Kleen        "SampleAfterValue": "100003",
631e0f6eeefSIan Rogers        "UMask": "0x1"
632c955cd2bSAndi Kleen    },
633c955cd2bSAndi Kleen    {
634c955cd2bSAndi Kleen        "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.",
635e0f6eeefSIan Rogers        "EventCode": "0xC3",
636e0f6eeefSIan Rogers        "EventName": "MACHINE_CLEARS.MASKMOV",
637e0f6eeefSIan Rogers        "PublicDescription": "Counts the number of executed AVX masked load operations that refer to an illegal address range with the mask bits set to 0.",
638c955cd2bSAndi Kleen        "SampleAfterValue": "100003",
639e0f6eeefSIan Rogers        "UMask": "0x20"
640e0f6eeefSIan Rogers    },
641e0f6eeefSIan Rogers    {
642e0f6eeefSIan Rogers        "BriefDescription": "Self-modifying code (SMC) detected.",
643e0f6eeefSIan Rogers        "EventCode": "0xC3",
644e0f6eeefSIan Rogers        "EventName": "MACHINE_CLEARS.SMC",
645e0f6eeefSIan Rogers        "PublicDescription": "Number of self-modifying-code machine clears detected.",
646e0f6eeefSIan Rogers        "SampleAfterValue": "100003",
647e0f6eeefSIan Rogers        "UMask": "0x4"
648e0f6eeefSIan Rogers    },
649e0f6eeefSIan Rogers    {
650e0f6eeefSIan Rogers        "BriefDescription": "Number of integer Move Elimination candidate uops that were eliminated.",
651e0f6eeefSIan Rogers        "EventCode": "0x58",
652e0f6eeefSIan Rogers        "EventName": "MOVE_ELIMINATION.INT_ELIMINATED",
653e0f6eeefSIan Rogers        "SampleAfterValue": "1000003",
654e0f6eeefSIan Rogers        "UMask": "0x1"
655e0f6eeefSIan Rogers    },
656e0f6eeefSIan Rogers    {
657e0f6eeefSIan Rogers        "BriefDescription": "Number of integer Move Elimination candidate uops that were not eliminated.",
658e0f6eeefSIan Rogers        "EventCode": "0x58",
659e0f6eeefSIan Rogers        "EventName": "MOVE_ELIMINATION.INT_NOT_ELIMINATED",
660e0f6eeefSIan Rogers        "SampleAfterValue": "1000003",
661e0f6eeefSIan Rogers        "UMask": "0x4"
662e0f6eeefSIan Rogers    },
663e0f6eeefSIan Rogers    {
664e0f6eeefSIan Rogers        "BriefDescription": "Number of times any microcode assist is invoked by HW upon uop writeback.",
665e0f6eeefSIan Rogers        "EventCode": "0xC1",
666e0f6eeefSIan Rogers        "EventName": "OTHER_ASSISTS.ANY_WB_ASSIST",
667e0f6eeefSIan Rogers        "SampleAfterValue": "100003",
668e0f6eeefSIan Rogers        "UMask": "0x80"
669e0f6eeefSIan Rogers    },
670e0f6eeefSIan Rogers    {
671e0f6eeefSIan Rogers        "BriefDescription": "Resource-related stall cycles",
672e0f6eeefSIan Rogers        "EventCode": "0xA2",
673e0f6eeefSIan Rogers        "EventName": "RESOURCE_STALLS.ANY",
674e0f6eeefSIan Rogers        "PublicDescription": "Cycles Allocation is stalled due to Resource Related reason.",
675e0f6eeefSIan Rogers        "SampleAfterValue": "2000003",
676e0f6eeefSIan Rogers        "UMask": "0x1"
677e0f6eeefSIan Rogers    },
678e0f6eeefSIan Rogers    {
679e0f6eeefSIan Rogers        "BriefDescription": "Cycles stalled due to re-order buffer full.",
680e0f6eeefSIan Rogers        "EventCode": "0xA2",
681e0f6eeefSIan Rogers        "EventName": "RESOURCE_STALLS.ROB",
682e0f6eeefSIan Rogers        "SampleAfterValue": "2000003",
683e0f6eeefSIan Rogers        "UMask": "0x10"
684e0f6eeefSIan Rogers    },
685e0f6eeefSIan Rogers    {
686e0f6eeefSIan Rogers        "BriefDescription": "Cycles stalled due to no eligible RS entry available.",
687e0f6eeefSIan Rogers        "EventCode": "0xA2",
688e0f6eeefSIan Rogers        "EventName": "RESOURCE_STALLS.RS",
689e0f6eeefSIan Rogers        "SampleAfterValue": "2000003",
690e0f6eeefSIan Rogers        "UMask": "0x4"
691e0f6eeefSIan Rogers    },
692e0f6eeefSIan Rogers    {
693e0f6eeefSIan Rogers        "BriefDescription": "Cycles stalled due to no store buffers available. (not including draining form sync).",
694e0f6eeefSIan Rogers        "EventCode": "0xA2",
695e0f6eeefSIan Rogers        "EventName": "RESOURCE_STALLS.SB",
696e0f6eeefSIan Rogers        "PublicDescription": "Cycles stalled due to no store buffers available (not including draining form sync).",
697e0f6eeefSIan Rogers        "SampleAfterValue": "2000003",
698e0f6eeefSIan Rogers        "UMask": "0x8"
699e0f6eeefSIan Rogers    },
700e0f6eeefSIan Rogers    {
701e0f6eeefSIan Rogers        "BriefDescription": "Count cases of saving new LBR",
702e0f6eeefSIan Rogers        "EventCode": "0xCC",
703e0f6eeefSIan Rogers        "EventName": "ROB_MISC_EVENTS.LBR_INSERTS",
704e0f6eeefSIan Rogers        "PublicDescription": "Count cases of saving new LBR records by hardware.",
705e0f6eeefSIan Rogers        "SampleAfterValue": "2000003",
706e0f6eeefSIan Rogers        "UMask": "0x20"
707e0f6eeefSIan Rogers    },
708e0f6eeefSIan Rogers    {
709e0f6eeefSIan Rogers        "BriefDescription": "Cycles when Reservation Station (RS) is empty for the thread",
710e0f6eeefSIan Rogers        "EventCode": "0x5E",
711e0f6eeefSIan Rogers        "EventName": "RS_EVENTS.EMPTY_CYCLES",
712e0f6eeefSIan Rogers        "PublicDescription": "Cycles the RS is empty for the thread.",
713e0f6eeefSIan Rogers        "SampleAfterValue": "2000003",
714e0f6eeefSIan Rogers        "UMask": "0x1"
715e0f6eeefSIan Rogers    },
716e0f6eeefSIan Rogers    {
717e0f6eeefSIan Rogers        "BriefDescription": "Counts end of periods where the Reservation Station (RS) was empty. Could be useful to precisely locate Frontend Latency Bound issues.",
718e0f6eeefSIan Rogers        "CounterMask": "1",
719e0f6eeefSIan Rogers        "EdgeDetect": "1",
720e0f6eeefSIan Rogers        "EventCode": "0x5E",
721e0f6eeefSIan Rogers        "EventName": "RS_EVENTS.EMPTY_END",
722e0f6eeefSIan Rogers        "Invert": "1",
723e0f6eeefSIan Rogers        "SampleAfterValue": "200003",
724e0f6eeefSIan Rogers        "UMask": "0x1"
725e0f6eeefSIan Rogers    },
726e0f6eeefSIan Rogers    {
727e0f6eeefSIan Rogers        "BriefDescription": "Cycles per thread when uops are dispatched to port 0",
728e0f6eeefSIan Rogers        "EventCode": "0xA1",
729e0f6eeefSIan Rogers        "EventName": "UOPS_DISPATCHED_PORT.PORT_0",
730e0f6eeefSIan Rogers        "PublicDescription": "Cycles which a Uop is dispatched on port 0.",
731e0f6eeefSIan Rogers        "SampleAfterValue": "2000003",
732e0f6eeefSIan Rogers        "UMask": "0x1"
733e0f6eeefSIan Rogers    },
734e0f6eeefSIan Rogers    {
735e0f6eeefSIan Rogers        "AnyThread": "1",
736e0f6eeefSIan Rogers        "BriefDescription": "Cycles per core when uops are dispatched to port 0",
737e0f6eeefSIan Rogers        "EventCode": "0xA1",
738e0f6eeefSIan Rogers        "EventName": "UOPS_DISPATCHED_PORT.PORT_0_CORE",
739e0f6eeefSIan Rogers        "PublicDescription": "Cycles per core when uops are dispatched to port 0.",
740e0f6eeefSIan Rogers        "SampleAfterValue": "2000003",
741e0f6eeefSIan Rogers        "UMask": "0x1"
742e0f6eeefSIan Rogers    },
743e0f6eeefSIan Rogers    {
744e0f6eeefSIan Rogers        "BriefDescription": "Cycles per thread when uops are dispatched to port 1",
745e0f6eeefSIan Rogers        "EventCode": "0xA1",
746e0f6eeefSIan Rogers        "EventName": "UOPS_DISPATCHED_PORT.PORT_1",
747e0f6eeefSIan Rogers        "PublicDescription": "Cycles which a Uop is dispatched on port 1.",
748e0f6eeefSIan Rogers        "SampleAfterValue": "2000003",
749e0f6eeefSIan Rogers        "UMask": "0x2"
750e0f6eeefSIan Rogers    },
751e0f6eeefSIan Rogers    {
752e0f6eeefSIan Rogers        "AnyThread": "1",
753e0f6eeefSIan Rogers        "BriefDescription": "Cycles per core when uops are dispatched to port 1",
754e0f6eeefSIan Rogers        "EventCode": "0xA1",
755e0f6eeefSIan Rogers        "EventName": "UOPS_DISPATCHED_PORT.PORT_1_CORE",
756e0f6eeefSIan Rogers        "PublicDescription": "Cycles per core when uops are dispatched to port 1.",
757e0f6eeefSIan Rogers        "SampleAfterValue": "2000003",
758e0f6eeefSIan Rogers        "UMask": "0x2"
759e0f6eeefSIan Rogers    },
760e0f6eeefSIan Rogers    {
761e0f6eeefSIan Rogers        "BriefDescription": "Cycles per thread when load or STA uops are dispatched to port 2",
762e0f6eeefSIan Rogers        "EventCode": "0xA1",
763e0f6eeefSIan Rogers        "EventName": "UOPS_DISPATCHED_PORT.PORT_2",
764e0f6eeefSIan Rogers        "PublicDescription": "Cycles which a Uop is dispatched on port 2.",
765e0f6eeefSIan Rogers        "SampleAfterValue": "2000003",
766e0f6eeefSIan Rogers        "UMask": "0xc"
767e0f6eeefSIan Rogers    },
768e0f6eeefSIan Rogers    {
769e0f6eeefSIan Rogers        "AnyThread": "1",
770e0f6eeefSIan Rogers        "BriefDescription": "Uops dispatched to port 2, loads and stores per core (speculative and retired).",
771e0f6eeefSIan Rogers        "EventCode": "0xA1",
772e0f6eeefSIan Rogers        "EventName": "UOPS_DISPATCHED_PORT.PORT_2_CORE",
773e0f6eeefSIan Rogers        "SampleAfterValue": "2000003",
774e0f6eeefSIan Rogers        "UMask": "0xc"
775e0f6eeefSIan Rogers    },
776e0f6eeefSIan Rogers    {
777e0f6eeefSIan Rogers        "BriefDescription": "Cycles per thread when load or STA uops are dispatched to port 3",
778e0f6eeefSIan Rogers        "EventCode": "0xA1",
779e0f6eeefSIan Rogers        "EventName": "UOPS_DISPATCHED_PORT.PORT_3",
780e0f6eeefSIan Rogers        "PublicDescription": "Cycles which a Uop is dispatched on port 3.",
781e0f6eeefSIan Rogers        "SampleAfterValue": "2000003",
782e0f6eeefSIan Rogers        "UMask": "0x30"
783e0f6eeefSIan Rogers    },
784e0f6eeefSIan Rogers    {
785e0f6eeefSIan Rogers        "AnyThread": "1",
786e0f6eeefSIan Rogers        "BriefDescription": "Cycles per core when load or STA uops are dispatched to port 3",
787e0f6eeefSIan Rogers        "EventCode": "0xA1",
788e0f6eeefSIan Rogers        "EventName": "UOPS_DISPATCHED_PORT.PORT_3_CORE",
789e0f6eeefSIan Rogers        "PublicDescription": "Cycles per core when load or STA uops are dispatched to port 3.",
790e0f6eeefSIan Rogers        "SampleAfterValue": "2000003",
791e0f6eeefSIan Rogers        "UMask": "0x30"
792e0f6eeefSIan Rogers    },
793e0f6eeefSIan Rogers    {
794e0f6eeefSIan Rogers        "BriefDescription": "Cycles per thread when uops are dispatched to port 4",
795e0f6eeefSIan Rogers        "EventCode": "0xA1",
796e0f6eeefSIan Rogers        "EventName": "UOPS_DISPATCHED_PORT.PORT_4",
797e0f6eeefSIan Rogers        "PublicDescription": "Cycles which a Uop is dispatched on port 4.",
798e0f6eeefSIan Rogers        "SampleAfterValue": "2000003",
799e0f6eeefSIan Rogers        "UMask": "0x40"
800e0f6eeefSIan Rogers    },
801e0f6eeefSIan Rogers    {
802e0f6eeefSIan Rogers        "AnyThread": "1",
803e0f6eeefSIan Rogers        "BriefDescription": "Cycles per core when uops are dispatched to port 4",
804e0f6eeefSIan Rogers        "EventCode": "0xA1",
805e0f6eeefSIan Rogers        "EventName": "UOPS_DISPATCHED_PORT.PORT_4_CORE",
806e0f6eeefSIan Rogers        "PublicDescription": "Cycles per core when uops are dispatched to port 4.",
807e0f6eeefSIan Rogers        "SampleAfterValue": "2000003",
808e0f6eeefSIan Rogers        "UMask": "0x40"
809e0f6eeefSIan Rogers    },
810e0f6eeefSIan Rogers    {
811e0f6eeefSIan Rogers        "BriefDescription": "Cycles per thread when uops are dispatched to port 5",
812e0f6eeefSIan Rogers        "EventCode": "0xA1",
813e0f6eeefSIan Rogers        "EventName": "UOPS_DISPATCHED_PORT.PORT_5",
814e0f6eeefSIan Rogers        "PublicDescription": "Cycles which a Uop is dispatched on port 5.",
815e0f6eeefSIan Rogers        "SampleAfterValue": "2000003",
816e0f6eeefSIan Rogers        "UMask": "0x80"
817e0f6eeefSIan Rogers    },
818e0f6eeefSIan Rogers    {
819e0f6eeefSIan Rogers        "AnyThread": "1",
820e0f6eeefSIan Rogers        "BriefDescription": "Cycles per core when uops are dispatched to port 5",
821e0f6eeefSIan Rogers        "EventCode": "0xA1",
822e0f6eeefSIan Rogers        "EventName": "UOPS_DISPATCHED_PORT.PORT_5_CORE",
823e0f6eeefSIan Rogers        "PublicDescription": "Cycles per core when uops are dispatched to port 5.",
824e0f6eeefSIan Rogers        "SampleAfterValue": "2000003",
825e0f6eeefSIan Rogers        "UMask": "0x80"
826e0f6eeefSIan Rogers    },
827e0f6eeefSIan Rogers    {
828e0f6eeefSIan Rogers        "BriefDescription": "Number of uops executed on the core.",
829e0f6eeefSIan Rogers        "EventCode": "0xB1",
830e0f6eeefSIan Rogers        "EventName": "UOPS_EXECUTED.CORE",
831e0f6eeefSIan Rogers        "PublicDescription": "Counts total number of uops to be executed per-core each cycle.",
832e0f6eeefSIan Rogers        "SampleAfterValue": "2000003",
833e0f6eeefSIan Rogers        "UMask": "0x2"
834e0f6eeefSIan Rogers    },
835e0f6eeefSIan Rogers    {
836e0f6eeefSIan Rogers        "BriefDescription": "Cycles at least 1 micro-op is executed from any thread on physical core",
837e0f6eeefSIan Rogers        "CounterMask": "1",
838e0f6eeefSIan Rogers        "EventCode": "0xB1",
839e0f6eeefSIan Rogers        "EventName": "UOPS_EXECUTED.CORE_CYCLES_GE_1",
840e0f6eeefSIan Rogers        "PublicDescription": "Cycles at least 1 micro-op is executed from any thread on physical core.",
841e0f6eeefSIan Rogers        "SampleAfterValue": "2000003",
842e0f6eeefSIan Rogers        "UMask": "0x2"
843e0f6eeefSIan Rogers    },
844e0f6eeefSIan Rogers    {
845e0f6eeefSIan Rogers        "BriefDescription": "Cycles at least 2 micro-op is executed from any thread on physical core",
846e0f6eeefSIan Rogers        "CounterMask": "2",
847e0f6eeefSIan Rogers        "EventCode": "0xB1",
848e0f6eeefSIan Rogers        "EventName": "UOPS_EXECUTED.CORE_CYCLES_GE_2",
849e0f6eeefSIan Rogers        "PublicDescription": "Cycles at least 2 micro-op is executed from any thread on physical core.",
850e0f6eeefSIan Rogers        "SampleAfterValue": "2000003",
851e0f6eeefSIan Rogers        "UMask": "0x2"
852e0f6eeefSIan Rogers    },
853e0f6eeefSIan Rogers    {
854e0f6eeefSIan Rogers        "BriefDescription": "Cycles at least 3 micro-op is executed from any thread on physical core",
855e0f6eeefSIan Rogers        "CounterMask": "3",
856e0f6eeefSIan Rogers        "EventCode": "0xB1",
857e0f6eeefSIan Rogers        "EventName": "UOPS_EXECUTED.CORE_CYCLES_GE_3",
858e0f6eeefSIan Rogers        "PublicDescription": "Cycles at least 3 micro-op is executed from any thread on physical core.",
859e0f6eeefSIan Rogers        "SampleAfterValue": "2000003",
860e0f6eeefSIan Rogers        "UMask": "0x2"
861e0f6eeefSIan Rogers    },
862e0f6eeefSIan Rogers    {
863e0f6eeefSIan Rogers        "BriefDescription": "Cycles at least 4 micro-op is executed from any thread on physical core",
864e0f6eeefSIan Rogers        "CounterMask": "4",
865e0f6eeefSIan Rogers        "EventCode": "0xB1",
866e0f6eeefSIan Rogers        "EventName": "UOPS_EXECUTED.CORE_CYCLES_GE_4",
867e0f6eeefSIan Rogers        "PublicDescription": "Cycles at least 4 micro-op is executed from any thread on physical core.",
868e0f6eeefSIan Rogers        "SampleAfterValue": "2000003",
869e0f6eeefSIan Rogers        "UMask": "0x2"
870e0f6eeefSIan Rogers    },
871e0f6eeefSIan Rogers    {
872e0f6eeefSIan Rogers        "BriefDescription": "Cycles with no micro-ops executed from any thread on physical core",
873e0f6eeefSIan Rogers        "EventCode": "0xB1",
874e0f6eeefSIan Rogers        "EventName": "UOPS_EXECUTED.CORE_CYCLES_NONE",
875e0f6eeefSIan Rogers        "Invert": "1",
876e0f6eeefSIan Rogers        "PublicDescription": "Cycles with no micro-ops executed from any thread on physical core.",
877e0f6eeefSIan Rogers        "SampleAfterValue": "2000003",
878e0f6eeefSIan Rogers        "UMask": "0x2"
879e0f6eeefSIan Rogers    },
880e0f6eeefSIan Rogers    {
881e0f6eeefSIan Rogers        "BriefDescription": "Cycles where at least 1 uop was executed per-thread",
882e0f6eeefSIan Rogers        "CounterMask": "1",
883e0f6eeefSIan Rogers        "EventCode": "0xB1",
884e0f6eeefSIan Rogers        "EventName": "UOPS_EXECUTED.CYCLES_GE_1_UOP_EXEC",
885e0f6eeefSIan Rogers        "PublicDescription": "Cycles where at least 1 uop was executed per-thread.",
886e0f6eeefSIan Rogers        "SampleAfterValue": "2000003",
887e0f6eeefSIan Rogers        "UMask": "0x1"
888e0f6eeefSIan Rogers    },
889e0f6eeefSIan Rogers    {
890e0f6eeefSIan Rogers        "BriefDescription": "Cycles where at least 2 uops were executed per-thread",
891e0f6eeefSIan Rogers        "CounterMask": "2",
892e0f6eeefSIan Rogers        "EventCode": "0xB1",
893e0f6eeefSIan Rogers        "EventName": "UOPS_EXECUTED.CYCLES_GE_2_UOPS_EXEC",
894e0f6eeefSIan Rogers        "PublicDescription": "Cycles where at least 2 uops were executed per-thread.",
895e0f6eeefSIan Rogers        "SampleAfterValue": "2000003",
896e0f6eeefSIan Rogers        "UMask": "0x1"
897e0f6eeefSIan Rogers    },
898e0f6eeefSIan Rogers    {
899e0f6eeefSIan Rogers        "BriefDescription": "Cycles where at least 3 uops were executed per-thread",
900e0f6eeefSIan Rogers        "CounterMask": "3",
901e0f6eeefSIan Rogers        "EventCode": "0xB1",
902e0f6eeefSIan Rogers        "EventName": "UOPS_EXECUTED.CYCLES_GE_3_UOPS_EXEC",
903e0f6eeefSIan Rogers        "PublicDescription": "Cycles where at least 3 uops were executed per-thread.",
904e0f6eeefSIan Rogers        "SampleAfterValue": "2000003",
905e0f6eeefSIan Rogers        "UMask": "0x1"
906e0f6eeefSIan Rogers    },
907e0f6eeefSIan Rogers    {
908e0f6eeefSIan Rogers        "BriefDescription": "Cycles where at least 4 uops were executed per-thread",
909e0f6eeefSIan Rogers        "CounterMask": "4",
910e0f6eeefSIan Rogers        "EventCode": "0xB1",
911e0f6eeefSIan Rogers        "EventName": "UOPS_EXECUTED.CYCLES_GE_4_UOPS_EXEC",
912e0f6eeefSIan Rogers        "PublicDescription": "Cycles where at least 4 uops were executed per-thread.",
913e0f6eeefSIan Rogers        "SampleAfterValue": "2000003",
914e0f6eeefSIan Rogers        "UMask": "0x1"
915e0f6eeefSIan Rogers    },
916e0f6eeefSIan Rogers    {
917e0f6eeefSIan Rogers        "BriefDescription": "Counts number of cycles no uops were dispatched to be executed on this thread.",
918e0f6eeefSIan Rogers        "CounterMask": "1",
919e0f6eeefSIan Rogers        "EventCode": "0xB1",
920e0f6eeefSIan Rogers        "EventName": "UOPS_EXECUTED.STALL_CYCLES",
921e0f6eeefSIan Rogers        "Invert": "1",
922e0f6eeefSIan Rogers        "SampleAfterValue": "2000003",
923e0f6eeefSIan Rogers        "UMask": "0x1"
924e0f6eeefSIan Rogers    },
925e0f6eeefSIan Rogers    {
926e0f6eeefSIan Rogers        "BriefDescription": "Counts the number of uops to be executed per-thread each cycle.",
927e0f6eeefSIan Rogers        "EventCode": "0xB1",
928e0f6eeefSIan Rogers        "EventName": "UOPS_EXECUTED.THREAD",
929e0f6eeefSIan Rogers        "PublicDescription": "Counts total number of uops to be executed per-thread each cycle. Set Cmask = 1, INV =1 to count stall cycles.",
930e0f6eeefSIan Rogers        "SampleAfterValue": "2000003",
931e0f6eeefSIan Rogers        "UMask": "0x1"
932e0f6eeefSIan Rogers    },
933e0f6eeefSIan Rogers    {
934e0f6eeefSIan Rogers        "BriefDescription": "Uops that Resource Allocation Table (RAT) issues to Reservation Station (RS)",
935e0f6eeefSIan Rogers        "EventCode": "0x0E",
936e0f6eeefSIan Rogers        "EventName": "UOPS_ISSUED.ANY",
937e0f6eeefSIan Rogers        "PublicDescription": "Increments each cycle the # of Uops issued by the RAT to RS. Set Cmask = 1, Inv = 1, Any= 1to count stalled cycles of this core.",
938e0f6eeefSIan Rogers        "SampleAfterValue": "2000003",
939e0f6eeefSIan Rogers        "UMask": "0x1"
940e0f6eeefSIan Rogers    },
941e0f6eeefSIan Rogers    {
942e0f6eeefSIan Rogers        "AnyThread": "1",
943e0f6eeefSIan Rogers        "BriefDescription": "Cycles when Resource Allocation Table (RAT) does not issue Uops to Reservation Station (RS) for all threads",
944e0f6eeefSIan Rogers        "CounterMask": "1",
945e0f6eeefSIan Rogers        "EventCode": "0x0E",
946e0f6eeefSIan Rogers        "EventName": "UOPS_ISSUED.CORE_STALL_CYCLES",
947e0f6eeefSIan Rogers        "Invert": "1",
948e0f6eeefSIan Rogers        "PublicDescription": "Cycles when Resource Allocation Table (RAT) does not issue Uops to Reservation Station (RS) for all threads.",
949e0f6eeefSIan Rogers        "SampleAfterValue": "2000003",
950e0f6eeefSIan Rogers        "UMask": "0x1"
951e0f6eeefSIan Rogers    },
952e0f6eeefSIan Rogers    {
953e0f6eeefSIan Rogers        "BriefDescription": "Number of flags-merge uops being allocated.",
954e0f6eeefSIan Rogers        "EventCode": "0x0E",
955e0f6eeefSIan Rogers        "EventName": "UOPS_ISSUED.FLAGS_MERGE",
956e0f6eeefSIan Rogers        "PublicDescription": "Number of flags-merge uops allocated. Such uops adds delay.",
957e0f6eeefSIan Rogers        "SampleAfterValue": "2000003",
958e0f6eeefSIan Rogers        "UMask": "0x10"
959e0f6eeefSIan Rogers    },
960e0f6eeefSIan Rogers    {
961e0f6eeefSIan Rogers        "BriefDescription": "Number of Multiply packed/scalar single precision uops allocated",
962e0f6eeefSIan Rogers        "EventCode": "0x0E",
963e0f6eeefSIan Rogers        "EventName": "UOPS_ISSUED.SINGLE_MUL",
964e0f6eeefSIan Rogers        "PublicDescription": "Number of multiply packed/scalar single precision uops allocated.",
965e0f6eeefSIan Rogers        "SampleAfterValue": "2000003",
966e0f6eeefSIan Rogers        "UMask": "0x40"
967e0f6eeefSIan Rogers    },
968e0f6eeefSIan Rogers    {
969e0f6eeefSIan Rogers        "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.",
970e0f6eeefSIan Rogers        "EventCode": "0x0E",
971e0f6eeefSIan Rogers        "EventName": "UOPS_ISSUED.SLOW_LEA",
972e0f6eeefSIan Rogers        "PublicDescription": "Number of slow LEA or similar uops allocated. Such uop has 3 sources (e.g. 2 sources + immediate) regardless if as a result of LEA instruction or not.",
973e0f6eeefSIan Rogers        "SampleAfterValue": "2000003",
974e0f6eeefSIan Rogers        "UMask": "0x20"
975e0f6eeefSIan Rogers    },
976e0f6eeefSIan Rogers    {
977e0f6eeefSIan Rogers        "BriefDescription": "Cycles when Resource Allocation Table (RAT) does not issue Uops to Reservation Station (RS) for the thread",
978e0f6eeefSIan Rogers        "CounterMask": "1",
979e0f6eeefSIan Rogers        "EventCode": "0x0E",
980e0f6eeefSIan Rogers        "EventName": "UOPS_ISSUED.STALL_CYCLES",
981e0f6eeefSIan Rogers        "Invert": "1",
982e0f6eeefSIan Rogers        "PublicDescription": "Cycles when Resource Allocation Table (RAT) does not issue Uops to Reservation Station (RS) for the thread.",
983e0f6eeefSIan Rogers        "SampleAfterValue": "2000003",
984e0f6eeefSIan Rogers        "UMask": "0x1"
985e0f6eeefSIan Rogers    },
986e0f6eeefSIan Rogers    {
987e0f6eeefSIan Rogers        "BriefDescription": "Retired uops.",
988e0f6eeefSIan Rogers        "EventCode": "0xC2",
989e0f6eeefSIan Rogers        "EventName": "UOPS_RETIRED.ALL",
990e0f6eeefSIan Rogers        "PEBS": "1",
991e0f6eeefSIan Rogers        "SampleAfterValue": "2000003",
992e0f6eeefSIan Rogers        "UMask": "0x1"
993e0f6eeefSIan Rogers    },
994e0f6eeefSIan Rogers    {
995e0f6eeefSIan Rogers        "AnyThread": "1",
996e0f6eeefSIan Rogers        "BriefDescription": "Cycles without actually retired uops.",
997e0f6eeefSIan Rogers        "CounterMask": "1",
998e0f6eeefSIan Rogers        "EventCode": "0xC2",
999e0f6eeefSIan Rogers        "EventName": "UOPS_RETIRED.CORE_STALL_CYCLES",
1000e0f6eeefSIan Rogers        "Invert": "1",
1001e0f6eeefSIan Rogers        "SampleAfterValue": "2000003",
1002e0f6eeefSIan Rogers        "UMask": "0x1"
1003e0f6eeefSIan Rogers    },
1004e0f6eeefSIan Rogers    {
1005e0f6eeefSIan Rogers        "BriefDescription": "Retirement slots used.",
1006e0f6eeefSIan Rogers        "EventCode": "0xC2",
1007e0f6eeefSIan Rogers        "EventName": "UOPS_RETIRED.RETIRE_SLOTS",
1008e0f6eeefSIan Rogers        "PEBS": "1",
1009e0f6eeefSIan Rogers        "SampleAfterValue": "2000003",
1010e0f6eeefSIan Rogers        "UMask": "0x2"
1011e0f6eeefSIan Rogers    },
1012e0f6eeefSIan Rogers    {
1013e0f6eeefSIan Rogers        "BriefDescription": "Cycles without actually retired uops.",
1014e0f6eeefSIan Rogers        "CounterMask": "1",
1015e0f6eeefSIan Rogers        "EventCode": "0xC2",
1016e0f6eeefSIan Rogers        "EventName": "UOPS_RETIRED.STALL_CYCLES",
1017e0f6eeefSIan Rogers        "Invert": "1",
1018e0f6eeefSIan Rogers        "SampleAfterValue": "2000003",
1019e0f6eeefSIan Rogers        "UMask": "0x1"
1020e0f6eeefSIan Rogers    },
1021e0f6eeefSIan Rogers    {
1022e0f6eeefSIan Rogers        "BriefDescription": "Cycles with less than 10 actually retired uops.",
1023e0f6eeefSIan Rogers        "CounterMask": "10",
1024e0f6eeefSIan Rogers        "EventCode": "0xC2",
1025e0f6eeefSIan Rogers        "EventName": "UOPS_RETIRED.TOTAL_CYCLES",
1026e0f6eeefSIan Rogers        "Invert": "1",
1027e0f6eeefSIan Rogers        "SampleAfterValue": "2000003",
1028e0f6eeefSIan Rogers        "UMask": "0x1"
10294b90798eSAndi Kleen    }
10304b90798eSAndi Kleen]
1031