xref: /linux/tools/perf/pmu-events/arch/x86/broadwell/pipeline.json (revision a1ff5a7d78a036d6c2178ee5acd6ba4946243800)
1b74d1315SAndi Kleen[
2b74d1315SAndi Kleen    {
3b74d1315SAndi Kleen        "BriefDescription": "Cycles when divider is busy executing divide operations",
4*39b8bd16SIan Rogers        "Counter": "0,1,2,3",
510e8d85fSIan Rogers        "EventCode": "0x14",
610e8d85fSIan Rogers        "EventName": "ARITH.FPU_DIV_ACTIVE",
710e8d85fSIan Rogers        "PublicDescription": "This event counts the number of the divide operations executed. Uses edge-detect and a cmask value of 1 on ARITH.FPU_DIV_ACTIVE to get the number of the divide operations executed.",
8b3ab8adcSAndi Kleen        "SampleAfterValue": "2000003",
910e8d85fSIan Rogers        "UMask": "0x1"
10b3ab8adcSAndi Kleen    },
11b3ab8adcSAndi Kleen    {
1210e8d85fSIan Rogers        "BriefDescription": "Speculative and retired  branches",
13*39b8bd16SIan Rogers        "Counter": "0,1,2,3",
1410e8d85fSIan Rogers        "EventCode": "0x88",
1510e8d85fSIan Rogers        "EventName": "BR_INST_EXEC.ALL_BRANCHES",
1610e8d85fSIan Rogers        "PublicDescription": "This event counts both taken and not taken speculative and retired branch instructions.",
1710e8d85fSIan Rogers        "SampleAfterValue": "200003",
1810e8d85fSIan Rogers        "UMask": "0xff"
19b3ab8adcSAndi Kleen    },
20b3ab8adcSAndi Kleen    {
2110e8d85fSIan Rogers        "BriefDescription": "Speculative and retired macro-conditional branches",
22*39b8bd16SIan Rogers        "Counter": "0,1,2,3",
2310e8d85fSIan Rogers        "EventCode": "0x88",
2410e8d85fSIan Rogers        "EventName": "BR_INST_EXEC.ALL_CONDITIONAL",
2510e8d85fSIan Rogers        "PublicDescription": "This event counts both taken and not taken speculative and retired macro-conditional branch instructions.",
2610e8d85fSIan Rogers        "SampleAfterValue": "200003",
2710e8d85fSIan Rogers        "UMask": "0xc1"
28b3ab8adcSAndi Kleen    },
29b3ab8adcSAndi Kleen    {
3010e8d85fSIan Rogers        "BriefDescription": "Speculative and retired macro-unconditional branches excluding calls and indirects",
31*39b8bd16SIan Rogers        "Counter": "0,1,2,3",
3210e8d85fSIan Rogers        "EventCode": "0x88",
3310e8d85fSIan Rogers        "EventName": "BR_INST_EXEC.ALL_DIRECT_JMP",
3410e8d85fSIan Rogers        "PublicDescription": "This event counts both taken and not taken speculative and retired macro-unconditional branch instructions, excluding calls and indirects.",
3510e8d85fSIan Rogers        "SampleAfterValue": "200003",
3610e8d85fSIan Rogers        "UMask": "0xc2"
37b3ab8adcSAndi Kleen    },
38b3ab8adcSAndi Kleen    {
3910e8d85fSIan Rogers        "BriefDescription": "Speculative and retired direct near calls",
40*39b8bd16SIan Rogers        "Counter": "0,1,2,3",
4110e8d85fSIan Rogers        "EventCode": "0x88",
4210e8d85fSIan Rogers        "EventName": "BR_INST_EXEC.ALL_DIRECT_NEAR_CALL",
4310e8d85fSIan Rogers        "PublicDescription": "This event counts both taken and not taken speculative and retired direct near calls.",
4410e8d85fSIan Rogers        "SampleAfterValue": "200003",
4510e8d85fSIan Rogers        "UMask": "0xd0"
46b3ab8adcSAndi Kleen    },
47b3ab8adcSAndi Kleen    {
4810e8d85fSIan Rogers        "BriefDescription": "Speculative and retired indirect branches excluding calls and returns",
49*39b8bd16SIan Rogers        "Counter": "0,1,2,3",
5010e8d85fSIan Rogers        "EventCode": "0x88",
5110e8d85fSIan Rogers        "EventName": "BR_INST_EXEC.ALL_INDIRECT_JUMP_NON_CALL_RET",
5210e8d85fSIan Rogers        "PublicDescription": "This event counts both taken and not taken speculative and retired indirect branches excluding calls and return branches.",
5310e8d85fSIan Rogers        "SampleAfterValue": "200003",
5410e8d85fSIan Rogers        "UMask": "0xc4"
55b3ab8adcSAndi Kleen    },
56b3ab8adcSAndi Kleen    {
5710e8d85fSIan Rogers        "BriefDescription": "Speculative and retired indirect return branches.",
58*39b8bd16SIan Rogers        "Counter": "0,1,2,3",
5910e8d85fSIan Rogers        "EventCode": "0x88",
6010e8d85fSIan Rogers        "EventName": "BR_INST_EXEC.ALL_INDIRECT_NEAR_RETURN",
6110e8d85fSIan Rogers        "PublicDescription": "This event counts both taken and not taken speculative and retired indirect branches that have a return mnemonic.",
6210e8d85fSIan Rogers        "SampleAfterValue": "200003",
6310e8d85fSIan Rogers        "UMask": "0xc8"
64b3ab8adcSAndi Kleen    },
65b3ab8adcSAndi Kleen    {
6610e8d85fSIan Rogers        "BriefDescription": "Not taken macro-conditional branches",
67*39b8bd16SIan Rogers        "Counter": "0,1,2,3",
6810e8d85fSIan Rogers        "EventCode": "0x88",
6910e8d85fSIan Rogers        "EventName": "BR_INST_EXEC.NONTAKEN_CONDITIONAL",
7010e8d85fSIan Rogers        "PublicDescription": "This event counts not taken macro-conditional branch instructions.",
7110e8d85fSIan Rogers        "SampleAfterValue": "200003",
7210e8d85fSIan Rogers        "UMask": "0x41"
7310e8d85fSIan Rogers    },
7410e8d85fSIan Rogers    {
7510e8d85fSIan Rogers        "BriefDescription": "Taken speculative and retired macro-conditional branches",
76*39b8bd16SIan Rogers        "Counter": "0,1,2,3",
7710e8d85fSIan Rogers        "EventCode": "0x88",
7810e8d85fSIan Rogers        "EventName": "BR_INST_EXEC.TAKEN_CONDITIONAL",
7910e8d85fSIan Rogers        "PublicDescription": "This event counts taken speculative and retired macro-conditional branch instructions.",
8010e8d85fSIan Rogers        "SampleAfterValue": "200003",
8110e8d85fSIan Rogers        "UMask": "0x81"
8210e8d85fSIan Rogers    },
8310e8d85fSIan Rogers    {
8410e8d85fSIan Rogers        "BriefDescription": "Taken speculative and retired macro-conditional branch instructions excluding calls and indirects",
85*39b8bd16SIan Rogers        "Counter": "0,1,2,3",
8610e8d85fSIan Rogers        "EventCode": "0x88",
8710e8d85fSIan Rogers        "EventName": "BR_INST_EXEC.TAKEN_DIRECT_JUMP",
8810e8d85fSIan Rogers        "PublicDescription": "This event counts taken speculative and retired macro-conditional branch instructions excluding calls and indirect branches.",
8910e8d85fSIan Rogers        "SampleAfterValue": "200003",
9010e8d85fSIan Rogers        "UMask": "0x82"
9110e8d85fSIan Rogers    },
9210e8d85fSIan Rogers    {
9310e8d85fSIan Rogers        "BriefDescription": "Taken speculative and retired direct near calls",
94*39b8bd16SIan Rogers        "Counter": "0,1,2,3",
9510e8d85fSIan Rogers        "EventCode": "0x88",
9610e8d85fSIan Rogers        "EventName": "BR_INST_EXEC.TAKEN_DIRECT_NEAR_CALL",
9710e8d85fSIan Rogers        "PublicDescription": "This event counts taken speculative and retired direct near calls.",
9810e8d85fSIan Rogers        "SampleAfterValue": "200003",
9910e8d85fSIan Rogers        "UMask": "0x90"
10010e8d85fSIan Rogers    },
10110e8d85fSIan Rogers    {
10210e8d85fSIan Rogers        "BriefDescription": "Taken speculative and retired indirect branches excluding calls and returns",
103*39b8bd16SIan Rogers        "Counter": "0,1,2,3",
10410e8d85fSIan Rogers        "EventCode": "0x88",
10510e8d85fSIan Rogers        "EventName": "BR_INST_EXEC.TAKEN_INDIRECT_JUMP_NON_CALL_RET",
10610e8d85fSIan Rogers        "PublicDescription": "This event counts taken speculative and retired indirect branches excluding calls and return branches.",
10710e8d85fSIan Rogers        "SampleAfterValue": "200003",
10810e8d85fSIan Rogers        "UMask": "0x84"
10910e8d85fSIan Rogers    },
11010e8d85fSIan Rogers    {
11110e8d85fSIan Rogers        "BriefDescription": "Taken speculative and retired indirect calls",
112*39b8bd16SIan Rogers        "Counter": "0,1,2,3",
11310e8d85fSIan Rogers        "EventCode": "0x88",
11410e8d85fSIan Rogers        "EventName": "BR_INST_EXEC.TAKEN_INDIRECT_NEAR_CALL",
11510e8d85fSIan Rogers        "PublicDescription": "This event counts taken speculative and retired indirect calls including both register and memory indirect.",
11610e8d85fSIan Rogers        "SampleAfterValue": "200003",
11710e8d85fSIan Rogers        "UMask": "0xa0"
11810e8d85fSIan Rogers    },
11910e8d85fSIan Rogers    {
12010e8d85fSIan Rogers        "BriefDescription": "Taken speculative and retired indirect branches with return mnemonic",
121*39b8bd16SIan Rogers        "Counter": "0,1,2,3",
12210e8d85fSIan Rogers        "EventCode": "0x88",
12310e8d85fSIan Rogers        "EventName": "BR_INST_EXEC.TAKEN_INDIRECT_NEAR_RETURN",
12410e8d85fSIan Rogers        "PublicDescription": "This event counts taken speculative and retired indirect branches that have a return mnemonic.",
12510e8d85fSIan Rogers        "SampleAfterValue": "200003",
12610e8d85fSIan Rogers        "UMask": "0x88"
12710e8d85fSIan Rogers    },
12810e8d85fSIan Rogers    {
129b3ab8adcSAndi Kleen        "BriefDescription": "All (macro) branch instructions retired.",
130*39b8bd16SIan Rogers        "Counter": "0,1,2,3",
131b3ab8adcSAndi Kleen        "EventCode": "0xC4",
13210e8d85fSIan Rogers        "EventName": "BR_INST_RETIRED.ALL_BRANCHES",
13310e8d85fSIan Rogers        "PublicDescription": "This event counts all (macro) branch instructions retired.",
13410e8d85fSIan Rogers        "SampleAfterValue": "400009"
135b3ab8adcSAndi Kleen    },
136b3ab8adcSAndi Kleen    {
13710e8d85fSIan Rogers        "BriefDescription": "All (macro) branch instructions retired. (Precise Event - PEBS)",
138*39b8bd16SIan Rogers        "Counter": "0,1,2,3",
13910e8d85fSIan Rogers        "Errata": "BDW98",
140b3ab8adcSAndi Kleen        "EventCode": "0xC4",
14110e8d85fSIan Rogers        "EventName": "BR_INST_RETIRED.ALL_BRANCHES_PEBS",
142b3ab8adcSAndi Kleen        "PEBS": "2",
143b3ab8adcSAndi Kleen        "PublicDescription": "This is a precise version of BR_INST_RETIRED.ALL_BRANCHES that counts all (macro) branch instructions retired.",
14410e8d85fSIan Rogers        "SampleAfterValue": "400009",
14510e8d85fSIan Rogers        "UMask": "0x4"
14610e8d85fSIan Rogers    },
14710e8d85fSIan Rogers    {
14810e8d85fSIan Rogers        "BriefDescription": "Conditional branch instructions retired.",
149*39b8bd16SIan Rogers        "Counter": "0,1,2,3",
15010e8d85fSIan Rogers        "EventCode": "0xC4",
15110e8d85fSIan Rogers        "EventName": "BR_INST_RETIRED.CONDITIONAL",
15210e8d85fSIan Rogers        "PEBS": "1",
15310e8d85fSIan Rogers        "PublicDescription": "This event counts conditional branch instructions retired.",
15410e8d85fSIan Rogers        "SampleAfterValue": "400009",
15510e8d85fSIan Rogers        "UMask": "0x1"
15610e8d85fSIan Rogers    },
15710e8d85fSIan Rogers    {
15810e8d85fSIan Rogers        "BriefDescription": "Far branch instructions retired.",
159*39b8bd16SIan Rogers        "Counter": "0,1,2,3",
160b3ab8adcSAndi Kleen        "Errata": "BDW98",
161b3ab8adcSAndi Kleen        "EventCode": "0xC4",
162b3ab8adcSAndi Kleen        "EventName": "BR_INST_RETIRED.FAR_BRANCH",
16310e8d85fSIan Rogers        "PublicDescription": "This event counts far branch instructions retired.",
164b3ab8adcSAndi Kleen        "SampleAfterValue": "100007",
16510e8d85fSIan Rogers        "UMask": "0x40"
166b3ab8adcSAndi Kleen    },
167b3ab8adcSAndi Kleen    {
16810e8d85fSIan Rogers        "BriefDescription": "Direct and indirect near call instructions retired.",
169*39b8bd16SIan Rogers        "Counter": "0,1,2,3",
17010e8d85fSIan Rogers        "EventCode": "0xC4",
17110e8d85fSIan Rogers        "EventName": "BR_INST_RETIRED.NEAR_CALL",
172b3ab8adcSAndi Kleen        "PEBS": "1",
17310e8d85fSIan Rogers        "PublicDescription": "This event counts both direct and indirect near call instructions retired.",
17410e8d85fSIan Rogers        "SampleAfterValue": "100007",
17510e8d85fSIan Rogers        "UMask": "0x2"
176b3ab8adcSAndi Kleen    },
177b3ab8adcSAndi Kleen    {
17810e8d85fSIan Rogers        "BriefDescription": "Direct and indirect macro near call instructions retired (captured in ring 3).",
179*39b8bd16SIan Rogers        "Counter": "0,1,2,3",
18010e8d85fSIan Rogers        "EventCode": "0xC4",
18110e8d85fSIan Rogers        "EventName": "BR_INST_RETIRED.NEAR_CALL_R3",
18210e8d85fSIan Rogers        "PEBS": "1",
18310e8d85fSIan Rogers        "PublicDescription": "This event counts both direct and indirect macro near call instructions retired (captured in ring 3).",
18410e8d85fSIan Rogers        "SampleAfterValue": "100007",
18510e8d85fSIan Rogers        "UMask": "0x2"
18610e8d85fSIan Rogers    },
18710e8d85fSIan Rogers    {
18810e8d85fSIan Rogers        "BriefDescription": "Return instructions retired.",
189*39b8bd16SIan Rogers        "Counter": "0,1,2,3",
19010e8d85fSIan Rogers        "EventCode": "0xC4",
19110e8d85fSIan Rogers        "EventName": "BR_INST_RETIRED.NEAR_RETURN",
19210e8d85fSIan Rogers        "PEBS": "1",
19310e8d85fSIan Rogers        "PublicDescription": "This event counts return instructions retired.",
19410e8d85fSIan Rogers        "SampleAfterValue": "100007",
19510e8d85fSIan Rogers        "UMask": "0x8"
19610e8d85fSIan Rogers    },
19710e8d85fSIan Rogers    {
19810e8d85fSIan Rogers        "BriefDescription": "Taken branch instructions retired.",
199*39b8bd16SIan Rogers        "Counter": "0,1,2,3",
20010e8d85fSIan Rogers        "EventCode": "0xC4",
20110e8d85fSIan Rogers        "EventName": "BR_INST_RETIRED.NEAR_TAKEN",
20210e8d85fSIan Rogers        "PEBS": "1",
20310e8d85fSIan Rogers        "PublicDescription": "This event counts taken branch instructions retired.",
20410e8d85fSIan Rogers        "SampleAfterValue": "400009",
20510e8d85fSIan Rogers        "UMask": "0x20"
20610e8d85fSIan Rogers    },
20710e8d85fSIan Rogers    {
20810e8d85fSIan Rogers        "BriefDescription": "Not taken branch instructions retired.",
209*39b8bd16SIan Rogers        "Counter": "0,1,2,3",
21010e8d85fSIan Rogers        "EventCode": "0xC4",
21110e8d85fSIan Rogers        "EventName": "BR_INST_RETIRED.NOT_TAKEN",
21210e8d85fSIan Rogers        "PublicDescription": "This event counts not taken branch instructions retired.",
21310e8d85fSIan Rogers        "SampleAfterValue": "400009",
21410e8d85fSIan Rogers        "UMask": "0x10"
21510e8d85fSIan Rogers    },
21610e8d85fSIan Rogers    {
21710e8d85fSIan Rogers        "BriefDescription": "Speculative and retired mispredicted macro conditional branches",
218*39b8bd16SIan Rogers        "Counter": "0,1,2,3",
21910e8d85fSIan Rogers        "EventCode": "0x89",
22010e8d85fSIan Rogers        "EventName": "BR_MISP_EXEC.ALL_BRANCHES",
22110e8d85fSIan Rogers        "PublicDescription": "This event counts both taken and not taken speculative and retired mispredicted branch instructions.",
22210e8d85fSIan Rogers        "SampleAfterValue": "200003",
22310e8d85fSIan Rogers        "UMask": "0xff"
22410e8d85fSIan Rogers    },
22510e8d85fSIan Rogers    {
22610e8d85fSIan Rogers        "BriefDescription": "Speculative and retired mispredicted macro conditional branches",
227*39b8bd16SIan Rogers        "Counter": "0,1,2,3",
22810e8d85fSIan Rogers        "EventCode": "0x89",
22910e8d85fSIan Rogers        "EventName": "BR_MISP_EXEC.ALL_CONDITIONAL",
23010e8d85fSIan Rogers        "PublicDescription": "This event counts both taken and not taken speculative and retired mispredicted macro conditional branch instructions.",
23110e8d85fSIan Rogers        "SampleAfterValue": "200003",
23210e8d85fSIan Rogers        "UMask": "0xc1"
23310e8d85fSIan Rogers    },
23410e8d85fSIan Rogers    {
23510e8d85fSIan Rogers        "BriefDescription": "Mispredicted indirect branches excluding calls and returns",
236*39b8bd16SIan Rogers        "Counter": "0,1,2,3",
23710e8d85fSIan Rogers        "EventCode": "0x89",
23810e8d85fSIan Rogers        "EventName": "BR_MISP_EXEC.ALL_INDIRECT_JUMP_NON_CALL_RET",
23910e8d85fSIan Rogers        "PublicDescription": "This event counts both taken and not taken mispredicted indirect branches excluding calls and returns.",
24010e8d85fSIan Rogers        "SampleAfterValue": "200003",
24110e8d85fSIan Rogers        "UMask": "0xc4"
24210e8d85fSIan Rogers    },
24310e8d85fSIan Rogers    {
24478036545SIan Rogers        "BriefDescription": "Speculative mispredicted indirect branches",
245*39b8bd16SIan Rogers        "Counter": "0,1,2,3",
24678036545SIan Rogers        "EventCode": "0x89",
24778036545SIan Rogers        "EventName": "BR_MISP_EXEC.INDIRECT",
24878036545SIan Rogers        "PublicDescription": "Counts speculatively miss-predicted indirect branches at execution time. Counts for indirect near CALL or JMP instructions (RET excluded).",
24978036545SIan Rogers        "SampleAfterValue": "200003",
25078036545SIan Rogers        "UMask": "0xe4"
25178036545SIan Rogers    },
25278036545SIan Rogers    {
25310e8d85fSIan Rogers        "BriefDescription": "Not taken speculative and retired mispredicted macro conditional branches",
254*39b8bd16SIan Rogers        "Counter": "0,1,2,3",
25510e8d85fSIan Rogers        "EventCode": "0x89",
25610e8d85fSIan Rogers        "EventName": "BR_MISP_EXEC.NONTAKEN_CONDITIONAL",
25710e8d85fSIan Rogers        "PublicDescription": "This event counts not taken speculative and retired mispredicted macro conditional branch instructions.",
25810e8d85fSIan Rogers        "SampleAfterValue": "200003",
25910e8d85fSIan Rogers        "UMask": "0x41"
26010e8d85fSIan Rogers    },
26110e8d85fSIan Rogers    {
26210e8d85fSIan Rogers        "BriefDescription": "Taken speculative and retired mispredicted macro conditional branches",
263*39b8bd16SIan Rogers        "Counter": "0,1,2,3",
26410e8d85fSIan Rogers        "EventCode": "0x89",
26510e8d85fSIan Rogers        "EventName": "BR_MISP_EXEC.TAKEN_CONDITIONAL",
26610e8d85fSIan Rogers        "PublicDescription": "This event counts taken speculative and retired mispredicted macro conditional branch instructions.",
26710e8d85fSIan Rogers        "SampleAfterValue": "200003",
26810e8d85fSIan Rogers        "UMask": "0x81"
26910e8d85fSIan Rogers    },
27010e8d85fSIan Rogers    {
27110e8d85fSIan Rogers        "BriefDescription": "Taken speculative and retired mispredicted indirect branches excluding calls and returns",
272*39b8bd16SIan Rogers        "Counter": "0,1,2,3",
27310e8d85fSIan Rogers        "EventCode": "0x89",
27410e8d85fSIan Rogers        "EventName": "BR_MISP_EXEC.TAKEN_INDIRECT_JUMP_NON_CALL_RET",
27510e8d85fSIan Rogers        "PublicDescription": "This event counts taken speculative and retired mispredicted indirect branches excluding calls and returns.",
27610e8d85fSIan Rogers        "SampleAfterValue": "200003",
27710e8d85fSIan Rogers        "UMask": "0x84"
27810e8d85fSIan Rogers    },
27910e8d85fSIan Rogers    {
28010e8d85fSIan Rogers        "BriefDescription": "Taken speculative and retired mispredicted indirect calls.",
281*39b8bd16SIan Rogers        "Counter": "0,1,2,3",
28210e8d85fSIan Rogers        "EventCode": "0x89",
28310e8d85fSIan Rogers        "EventName": "BR_MISP_EXEC.TAKEN_INDIRECT_NEAR_CALL",
28410e8d85fSIan Rogers        "SampleAfterValue": "200003",
28510e8d85fSIan Rogers        "UMask": "0xa0"
28610e8d85fSIan Rogers    },
28710e8d85fSIan Rogers    {
28810e8d85fSIan Rogers        "BriefDescription": "Taken speculative and retired mispredicted indirect branches with return mnemonic",
289*39b8bd16SIan Rogers        "Counter": "0,1,2,3",
29010e8d85fSIan Rogers        "EventCode": "0x89",
29110e8d85fSIan Rogers        "EventName": "BR_MISP_EXEC.TAKEN_RETURN_NEAR",
29210e8d85fSIan Rogers        "PublicDescription": "This event counts taken speculative and retired mispredicted indirect branches that have a return mnemonic.",
29310e8d85fSIan Rogers        "SampleAfterValue": "200003",
29410e8d85fSIan Rogers        "UMask": "0x88"
29510e8d85fSIan Rogers    },
29610e8d85fSIan Rogers    {
29710e8d85fSIan Rogers        "BriefDescription": "All mispredicted macro branch instructions retired.",
298*39b8bd16SIan Rogers        "Counter": "0,1,2,3",
29910e8d85fSIan Rogers        "EventCode": "0xC5",
30010e8d85fSIan Rogers        "EventName": "BR_MISP_RETIRED.ALL_BRANCHES",
30110e8d85fSIan Rogers        "PublicDescription": "This event counts all mispredicted macro branch instructions retired.",
30210e8d85fSIan Rogers        "SampleAfterValue": "400009"
30310e8d85fSIan Rogers    },
30410e8d85fSIan Rogers    {
30510e8d85fSIan Rogers        "BriefDescription": "Mispredicted macro branch instructions retired. (Precise Event - PEBS)",
306*39b8bd16SIan Rogers        "Counter": "0,1,2,3",
30710e8d85fSIan Rogers        "EventCode": "0xC5",
30810e8d85fSIan Rogers        "EventName": "BR_MISP_RETIRED.ALL_BRANCHES_PEBS",
309b3ab8adcSAndi Kleen        "PEBS": "2",
310b3ab8adcSAndi Kleen        "PublicDescription": "This is a precise version of BR_MISP_RETIRED.ALL_BRANCHES that counts all mispredicted macro branch instructions retired.",
311b3ab8adcSAndi Kleen        "SampleAfterValue": "400009",
31210e8d85fSIan Rogers        "UMask": "0x4"
313b3ab8adcSAndi Kleen    },
314b3ab8adcSAndi Kleen    {
31510e8d85fSIan Rogers        "BriefDescription": "Mispredicted conditional branch instructions retired.",
316*39b8bd16SIan Rogers        "Counter": "0,1,2,3",
31710e8d85fSIan Rogers        "EventCode": "0xC5",
31810e8d85fSIan Rogers        "EventName": "BR_MISP_RETIRED.CONDITIONAL",
31910e8d85fSIan Rogers        "PEBS": "1",
32010e8d85fSIan Rogers        "PublicDescription": "This event counts mispredicted conditional branch instructions retired.",
32110e8d85fSIan Rogers        "SampleAfterValue": "400009",
32210e8d85fSIan Rogers        "UMask": "0x1"
323b3ab8adcSAndi Kleen    },
324b3ab8adcSAndi Kleen    {
32510e8d85fSIan Rogers        "BriefDescription": "number of near branch instructions retired that were mispredicted and taken.",
326*39b8bd16SIan Rogers        "Counter": "0,1,2,3",
32710e8d85fSIan Rogers        "EventCode": "0xC5",
328b3ab8adcSAndi Kleen        "EventName": "BR_MISP_RETIRED.NEAR_TAKEN",
32910e8d85fSIan Rogers        "PEBS": "1",
33010e8d85fSIan Rogers        "PublicDescription": "Number of near branch instructions retired that were mispredicted and taken.",
331b3ab8adcSAndi Kleen        "SampleAfterValue": "400009",
33210e8d85fSIan Rogers        "UMask": "0x20"
333b3ab8adcSAndi Kleen    },
334b3ab8adcSAndi Kleen    {
33510e8d85fSIan Rogers        "BriefDescription": "This event counts the number of mispredicted ret instructions retired. Non PEBS",
336*39b8bd16SIan Rogers        "Counter": "0,1,2,3",
33710e8d85fSIan Rogers        "EventCode": "0xC5",
33810e8d85fSIan Rogers        "EventName": "BR_MISP_RETIRED.RET",
33910e8d85fSIan Rogers        "PEBS": "1",
34010e8d85fSIan Rogers        "PublicDescription": "This event counts mispredicted return instructions retired.",
34110e8d85fSIan Rogers        "SampleAfterValue": "100007",
34210e8d85fSIan Rogers        "UMask": "0x8"
343b3ab8adcSAndi Kleen    },
344b3ab8adcSAndi Kleen    {
34510e8d85fSIan Rogers        "BriefDescription": "Count XClk pulses when this thread is unhalted and the other thread is halted.",
346*39b8bd16SIan Rogers        "Counter": "0,1,2,3",
34710e8d85fSIan Rogers        "EventCode": "0x3c",
34810e8d85fSIan Rogers        "EventName": "CPU_CLK_THREAD_UNHALTED.ONE_THREAD_ACTIVE",
349b3ab8adcSAndi Kleen        "SampleAfterValue": "100003",
35010e8d85fSIan Rogers        "UMask": "0x2"
35110e8d85fSIan Rogers    },
35210e8d85fSIan Rogers    {
35310e8d85fSIan Rogers        "BriefDescription": "Reference cycles when the thread is unhalted (counts at 100 MHz rate)",
354*39b8bd16SIan Rogers        "Counter": "0,1,2,3",
35510e8d85fSIan Rogers        "EventCode": "0x3C",
35610e8d85fSIan Rogers        "EventName": "CPU_CLK_THREAD_UNHALTED.REF_XCLK",
35710e8d85fSIan Rogers        "PublicDescription": "This is a fixed-frequency event programmed to general counters. It counts when the core is unhalted at 100 Mhz.",
35810e8d85fSIan Rogers        "SampleAfterValue": "100003",
35910e8d85fSIan Rogers        "UMask": "0x1"
36010e8d85fSIan Rogers    },
36110e8d85fSIan Rogers    {
36210e8d85fSIan Rogers        "AnyThread": "1",
36310e8d85fSIan Rogers        "BriefDescription": "Reference cycles when the at least one thread on the physical core is unhalted (counts at 100 MHz rate).",
364*39b8bd16SIan Rogers        "Counter": "0,1,2,3",
36510e8d85fSIan Rogers        "EventCode": "0x3C",
36610e8d85fSIan Rogers        "EventName": "CPU_CLK_THREAD_UNHALTED.REF_XCLK_ANY",
36710e8d85fSIan Rogers        "SampleAfterValue": "100003",
36810e8d85fSIan Rogers        "UMask": "0x1"
36910e8d85fSIan Rogers    },
37010e8d85fSIan Rogers    {
37110e8d85fSIan Rogers        "BriefDescription": "Count XClk pulses when this thread is unhalted and the other thread is halted.",
372*39b8bd16SIan Rogers        "Counter": "0,1,2,3",
37310e8d85fSIan Rogers        "EventCode": "0x3C",
37410e8d85fSIan Rogers        "EventName": "CPU_CLK_UNHALTED.ONE_THREAD_ACTIVE",
37510e8d85fSIan Rogers        "SampleAfterValue": "100003",
37610e8d85fSIan Rogers        "UMask": "0x2"
37710e8d85fSIan Rogers    },
37810e8d85fSIan Rogers    {
37910e8d85fSIan Rogers        "BriefDescription": "Reference cycles when the core is not in halt state.",
380*39b8bd16SIan Rogers        "Counter": "Fixed counter 2",
38110e8d85fSIan Rogers        "EventName": "CPU_CLK_UNHALTED.REF_TSC",
38210e8d85fSIan Rogers        "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. This event has a constant ratio with the CPU_CLK_UNHALTED.REF_XCLK event. It is counted on a dedicated fixed counter, leaving the four (eight when Hyperthreading is disabled) programmable counters available for other events. \nNote: On all current platforms this event stops counting during 'throttling (TM)' states duty off periods the processor is 'halted'.  This event is clocked by base clock (100 Mhz) on Sandy Bridge. The counter update is done at a lower clock rate then the core clock the overflow status bit for this counter may appear 'sticky'.  After the counter has overflowed and software clears the overflow status bit and resets the counter to less than MAX. The reset value to the counter is not clocked immediately so the overflow status bit will flip 'high (1)' and generate another PMI (if enabled) after which the reset value gets clocked into the counter. Therefore, software will get the interrupt, read the overflow status bit '1 for bit 34 while the counter value is less than MAX. Software should ignore this case.",
38310e8d85fSIan Rogers        "SampleAfterValue": "2000003",
38410e8d85fSIan Rogers        "UMask": "0x3"
38510e8d85fSIan Rogers    },
38610e8d85fSIan Rogers    {
38710e8d85fSIan Rogers        "BriefDescription": "Reference cycles when the thread is unhalted (counts at 100 MHz rate)",
388*39b8bd16SIan Rogers        "Counter": "0,1,2,3",
38910e8d85fSIan Rogers        "EventCode": "0x3C",
39010e8d85fSIan Rogers        "EventName": "CPU_CLK_UNHALTED.REF_XCLK",
39110e8d85fSIan Rogers        "PublicDescription": "Reference cycles when the thread is unhalted (counts at 100 MHz rate).",
39210e8d85fSIan Rogers        "SampleAfterValue": "100003",
39310e8d85fSIan Rogers        "UMask": "0x1"
39410e8d85fSIan Rogers    },
39510e8d85fSIan Rogers    {
39610e8d85fSIan Rogers        "AnyThread": "1",
39710e8d85fSIan Rogers        "BriefDescription": "Reference cycles when the at least one thread on the physical core is unhalted (counts at 100 MHz rate).",
398*39b8bd16SIan Rogers        "Counter": "0,1,2,3",
39910e8d85fSIan Rogers        "EventCode": "0x3C",
40010e8d85fSIan Rogers        "EventName": "CPU_CLK_UNHALTED.REF_XCLK_ANY",
40110e8d85fSIan Rogers        "SampleAfterValue": "100003",
40210e8d85fSIan Rogers        "UMask": "0x1"
40310e8d85fSIan Rogers    },
40410e8d85fSIan Rogers    {
40510e8d85fSIan Rogers        "BriefDescription": "Core cycles when the thread is not in halt state",
406*39b8bd16SIan Rogers        "Counter": "Fixed counter 1",
40710e8d85fSIan Rogers        "EventName": "CPU_CLK_UNHALTED.THREAD",
40810e8d85fSIan Rogers        "PublicDescription": "This event counts the number of core cycles while the thread is not in a halt state. The thread enters the halt state when it is running the HLT instruction. This event is a component in many key event ratios. The core frequency may change from time to time due to transitions associated with Enhanced Intel SpeedStep Technology or TM2. For this reason this event may have a changing ratio with regards to time. When the core frequency is constant, this event can approximate elapsed time while the core was not in the halt state. It is counted on a dedicated fixed counter, leaving the four (eight when Hyperthreading is disabled) programmable counters available for other events.",
40910e8d85fSIan Rogers        "SampleAfterValue": "2000003",
41010e8d85fSIan Rogers        "UMask": "0x2"
41110e8d85fSIan Rogers    },
41210e8d85fSIan Rogers    {
41310e8d85fSIan Rogers        "AnyThread": "1",
41410e8d85fSIan Rogers        "BriefDescription": "Core cycles when at least one thread on the physical core is not in halt state.",
415*39b8bd16SIan Rogers        "Counter": "Fixed counter 1",
41610e8d85fSIan Rogers        "EventName": "CPU_CLK_UNHALTED.THREAD_ANY",
41710e8d85fSIan Rogers        "SampleAfterValue": "2000003",
41810e8d85fSIan Rogers        "UMask": "0x2"
41910e8d85fSIan Rogers    },
42010e8d85fSIan Rogers    {
42110e8d85fSIan Rogers        "BriefDescription": "Thread cycles when thread is not in halt state",
422*39b8bd16SIan Rogers        "Counter": "0,1,2,3",
42310e8d85fSIan Rogers        "EventCode": "0x3C",
42410e8d85fSIan Rogers        "EventName": "CPU_CLK_UNHALTED.THREAD_P",
42510e8d85fSIan Rogers        "PublicDescription": "This is an architectural event that 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. For this reason, this event may have a changing ratio with regards to wall clock time.",
42610e8d85fSIan Rogers        "SampleAfterValue": "2000003"
42710e8d85fSIan Rogers    },
42810e8d85fSIan Rogers    {
42910e8d85fSIan Rogers        "AnyThread": "1",
43010e8d85fSIan Rogers        "BriefDescription": "Core cycles when at least one thread on the physical core is not in halt state.",
431*39b8bd16SIan Rogers        "Counter": "0,1,2,3",
43210e8d85fSIan Rogers        "EventCode": "0x3C",
43310e8d85fSIan Rogers        "EventName": "CPU_CLK_UNHALTED.THREAD_P_ANY",
43410e8d85fSIan Rogers        "SampleAfterValue": "2000003"
43510e8d85fSIan Rogers    },
43610e8d85fSIan Rogers    {
43710e8d85fSIan Rogers        "BriefDescription": "Cycles while L1 cache miss demand load is outstanding.",
438*39b8bd16SIan Rogers        "Counter": "2",
43910e8d85fSIan Rogers        "CounterMask": "8",
44010e8d85fSIan Rogers        "EventCode": "0xA3",
44110e8d85fSIan Rogers        "EventName": "CYCLE_ACTIVITY.CYCLES_L1D_MISS",
44210e8d85fSIan Rogers        "SampleAfterValue": "2000003",
44310e8d85fSIan Rogers        "UMask": "0x8"
44410e8d85fSIan Rogers    },
44510e8d85fSIan Rogers    {
44610e8d85fSIan Rogers        "BriefDescription": "Cycles while L1 cache miss demand load is outstanding.",
447*39b8bd16SIan Rogers        "Counter": "2",
44810e8d85fSIan Rogers        "CounterMask": "8",
44910e8d85fSIan Rogers        "EventCode": "0xA3",
45010e8d85fSIan Rogers        "EventName": "CYCLE_ACTIVITY.CYCLES_L1D_PENDING",
45110e8d85fSIan Rogers        "PublicDescription": "Counts number of cycles the CPU has at least one pending  demand load request missing the L1 data cache.",
45210e8d85fSIan Rogers        "SampleAfterValue": "2000003",
45310e8d85fSIan Rogers        "UMask": "0x8"
45410e8d85fSIan Rogers    },
45510e8d85fSIan Rogers    {
45610e8d85fSIan Rogers        "BriefDescription": "Cycles while L2 cache miss demand load is outstanding.",
457*39b8bd16SIan Rogers        "Counter": "0,1,2,3",
45810e8d85fSIan Rogers        "CounterMask": "1",
45910e8d85fSIan Rogers        "EventCode": "0xA3",
46010e8d85fSIan Rogers        "EventName": "CYCLE_ACTIVITY.CYCLES_L2_MISS",
46110e8d85fSIan Rogers        "SampleAfterValue": "2000003",
46210e8d85fSIan Rogers        "UMask": "0x1"
46310e8d85fSIan Rogers    },
46410e8d85fSIan Rogers    {
46510e8d85fSIan Rogers        "BriefDescription": "Cycles while L2 cache miss demand load is outstanding.",
466*39b8bd16SIan Rogers        "Counter": "0,1,2,3",
46710e8d85fSIan Rogers        "CounterMask": "1",
46810e8d85fSIan Rogers        "EventCode": "0xA3",
46910e8d85fSIan Rogers        "EventName": "CYCLE_ACTIVITY.CYCLES_L2_PENDING",
47010e8d85fSIan Rogers        "PublicDescription": "Counts number of cycles the CPU has at least one pending  demand* load request missing the L2 cache.",
47110e8d85fSIan Rogers        "SampleAfterValue": "2000003",
47210e8d85fSIan Rogers        "UMask": "0x1"
47310e8d85fSIan Rogers    },
47410e8d85fSIan Rogers    {
47510e8d85fSIan Rogers        "BriefDescription": "Cycles while memory subsystem has an outstanding load.",
476*39b8bd16SIan Rogers        "Counter": "0,1,2,3",
47710e8d85fSIan Rogers        "CounterMask": "2",
47810e8d85fSIan Rogers        "EventCode": "0xA3",
47910e8d85fSIan Rogers        "EventName": "CYCLE_ACTIVITY.CYCLES_LDM_PENDING",
48010e8d85fSIan Rogers        "PublicDescription": "Counts number of cycles the CPU has at least one pending  demand load request (that is cycles with non-completed load waiting for its data from memory subsystem).",
48110e8d85fSIan Rogers        "SampleAfterValue": "2000003",
48210e8d85fSIan Rogers        "UMask": "0x2"
48310e8d85fSIan Rogers    },
48410e8d85fSIan Rogers    {
48510e8d85fSIan Rogers        "BriefDescription": "Cycles while memory subsystem has an outstanding load.",
486*39b8bd16SIan Rogers        "Counter": "0,1,2,3",
48710e8d85fSIan Rogers        "CounterMask": "2",
48810e8d85fSIan Rogers        "EventCode": "0xA3",
48910e8d85fSIan Rogers        "EventName": "CYCLE_ACTIVITY.CYCLES_MEM_ANY",
49010e8d85fSIan Rogers        "SampleAfterValue": "2000003",
49110e8d85fSIan Rogers        "UMask": "0x2"
49210e8d85fSIan Rogers    },
49310e8d85fSIan Rogers    {
49410e8d85fSIan Rogers        "BriefDescription": "This event increments by 1 for every cycle where there was no execute for this thread.",
495*39b8bd16SIan Rogers        "Counter": "0,1,2,3",
49610e8d85fSIan Rogers        "CounterMask": "4",
49710e8d85fSIan Rogers        "EventCode": "0xA3",
49810e8d85fSIan Rogers        "EventName": "CYCLE_ACTIVITY.CYCLES_NO_EXECUTE",
49910e8d85fSIan Rogers        "PublicDescription": "Counts number of cycles nothing is executed on any execution port.",
50010e8d85fSIan Rogers        "SampleAfterValue": "2000003",
50110e8d85fSIan Rogers        "UMask": "0x4"
50210e8d85fSIan Rogers    },
50310e8d85fSIan Rogers    {
50410e8d85fSIan Rogers        "BriefDescription": "Execution stalls while L1 cache miss demand load is outstanding.",
505*39b8bd16SIan Rogers        "Counter": "2",
50610e8d85fSIan Rogers        "CounterMask": "12",
50710e8d85fSIan Rogers        "EventCode": "0xA3",
50810e8d85fSIan Rogers        "EventName": "CYCLE_ACTIVITY.STALLS_L1D_MISS",
50910e8d85fSIan Rogers        "SampleAfterValue": "2000003",
51010e8d85fSIan Rogers        "UMask": "0xc"
51110e8d85fSIan Rogers    },
51210e8d85fSIan Rogers    {
51310e8d85fSIan Rogers        "BriefDescription": "Execution stalls while L1 cache miss demand load is outstanding.",
514*39b8bd16SIan Rogers        "Counter": "2",
51510e8d85fSIan Rogers        "CounterMask": "12",
51610e8d85fSIan Rogers        "EventCode": "0xA3",
51710e8d85fSIan Rogers        "EventName": "CYCLE_ACTIVITY.STALLS_L1D_PENDING",
51810e8d85fSIan Rogers        "PublicDescription": "Counts number of cycles nothing is executed on any execution port, while there was at least one pending demand load request missing the L1 data cache.",
51910e8d85fSIan Rogers        "SampleAfterValue": "2000003",
52010e8d85fSIan Rogers        "UMask": "0xc"
52110e8d85fSIan Rogers    },
52210e8d85fSIan Rogers    {
52310e8d85fSIan Rogers        "BriefDescription": "Execution stalls while L2 cache miss demand load is outstanding.",
524*39b8bd16SIan Rogers        "Counter": "0,1,2,3",
52510e8d85fSIan Rogers        "CounterMask": "5",
52610e8d85fSIan Rogers        "EventCode": "0xA3",
52710e8d85fSIan Rogers        "EventName": "CYCLE_ACTIVITY.STALLS_L2_MISS",
52810e8d85fSIan Rogers        "SampleAfterValue": "2000003",
52910e8d85fSIan Rogers        "UMask": "0x5"
53010e8d85fSIan Rogers    },
53110e8d85fSIan Rogers    {
53210e8d85fSIan Rogers        "BriefDescription": "Execution stalls while L2 cache miss demand load is outstanding.",
533*39b8bd16SIan Rogers        "Counter": "0,1,2,3",
53410e8d85fSIan Rogers        "CounterMask": "5",
53510e8d85fSIan Rogers        "EventCode": "0xA3",
53610e8d85fSIan Rogers        "EventName": "CYCLE_ACTIVITY.STALLS_L2_PENDING",
53710e8d85fSIan Rogers        "PublicDescription": "Counts number of cycles nothing is executed on any execution port, while there was at least one pending demand* load request missing the L2 cache.(as a footprint) * includes also L1 HW prefetch requests that may or may not be required by demands.",
53810e8d85fSIan Rogers        "SampleAfterValue": "2000003",
53910e8d85fSIan Rogers        "UMask": "0x5"
54010e8d85fSIan Rogers    },
54110e8d85fSIan Rogers    {
54210e8d85fSIan Rogers        "BriefDescription": "Execution stalls while memory subsystem has an outstanding load.",
543*39b8bd16SIan Rogers        "Counter": "0,1,2,3",
54410e8d85fSIan Rogers        "CounterMask": "6",
54510e8d85fSIan Rogers        "EventCode": "0xA3",
54610e8d85fSIan Rogers        "EventName": "CYCLE_ACTIVITY.STALLS_LDM_PENDING",
54710e8d85fSIan Rogers        "PublicDescription": "Counts number of cycles nothing is executed on any execution port, while there was at least one pending demand load request.",
54810e8d85fSIan Rogers        "SampleAfterValue": "2000003",
54910e8d85fSIan Rogers        "UMask": "0x6"
55010e8d85fSIan Rogers    },
55110e8d85fSIan Rogers    {
55210e8d85fSIan Rogers        "BriefDescription": "Execution stalls while memory subsystem has an outstanding load.",
553*39b8bd16SIan Rogers        "Counter": "0,1,2,3",
55410e8d85fSIan Rogers        "CounterMask": "6",
55510e8d85fSIan Rogers        "EventCode": "0xA3",
55610e8d85fSIan Rogers        "EventName": "CYCLE_ACTIVITY.STALLS_MEM_ANY",
55710e8d85fSIan Rogers        "SampleAfterValue": "2000003",
55810e8d85fSIan Rogers        "UMask": "0x6"
55910e8d85fSIan Rogers    },
56010e8d85fSIan Rogers    {
56110e8d85fSIan Rogers        "BriefDescription": "Total execution stalls.",
562*39b8bd16SIan Rogers        "Counter": "0,1,2,3",
56310e8d85fSIan Rogers        "CounterMask": "4",
56410e8d85fSIan Rogers        "EventCode": "0xA3",
56510e8d85fSIan Rogers        "EventName": "CYCLE_ACTIVITY.STALLS_TOTAL",
56610e8d85fSIan Rogers        "SampleAfterValue": "2000003",
56710e8d85fSIan Rogers        "UMask": "0x4"
56810e8d85fSIan Rogers    },
56910e8d85fSIan Rogers    {
57010e8d85fSIan Rogers        "BriefDescription": "Stalls caused by changing prefix length of the instruction.",
571*39b8bd16SIan Rogers        "Counter": "0,1,2,3",
57210e8d85fSIan Rogers        "EventCode": "0x87",
57310e8d85fSIan Rogers        "EventName": "ILD_STALL.LCP",
57478036545SIan Rogers        "PublicDescription": "This event counts stalls occurred due to changing prefix length (66, 67 or REX.W when they change the length of the decoded instruction). Occurrences counting is proportional to the number of prefixes in a 16B-line. This may result in the following penalties: three-cycle penalty for each LCP in a 16-byte chunk.",
57510e8d85fSIan Rogers        "SampleAfterValue": "2000003",
57610e8d85fSIan Rogers        "UMask": "0x1"
57710e8d85fSIan Rogers    },
57810e8d85fSIan Rogers    {
57910e8d85fSIan Rogers        "BriefDescription": "Instructions retired from execution.",
580*39b8bd16SIan Rogers        "Counter": "Fixed counter 0",
58110e8d85fSIan Rogers        "EventName": "INST_RETIRED.ANY",
58210e8d85fSIan Rogers        "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. \nNotes: INST_RETIRED.ANY is counted by a designated fixed counter, leaving the four (eight when Hyperthreading is disabled) programmable counters available for other events. INST_RETIRED.ANY_P is counted by a programmable counter and it is an architectural performance event. \nCounting: Faulting executions of GETSEC/VM entry/VM Exit/MWait will not count as retired instructions.",
58310e8d85fSIan Rogers        "SampleAfterValue": "2000003",
58410e8d85fSIan Rogers        "UMask": "0x1"
58510e8d85fSIan Rogers    },
58610e8d85fSIan Rogers    {
58710e8d85fSIan Rogers        "BriefDescription": "Number of instructions retired. General Counter   - architectural event",
588*39b8bd16SIan Rogers        "Counter": "0,1,2,3",
58910e8d85fSIan Rogers        "Errata": "BDM61",
59010e8d85fSIan Rogers        "EventCode": "0xC0",
59110e8d85fSIan Rogers        "EventName": "INST_RETIRED.ANY_P",
59210e8d85fSIan Rogers        "PublicDescription": "This event counts the number of instructions (EOMs) retired. Counting covers macro-fused instructions individually (that is, increments by two).",
59310e8d85fSIan Rogers        "SampleAfterValue": "2000003"
59410e8d85fSIan Rogers    },
59510e8d85fSIan Rogers    {
59610e8d85fSIan Rogers        "BriefDescription": "Precise instruction retired event with HW to reduce effect of PEBS shadow in IP distribution",
597*39b8bd16SIan Rogers        "Counter": "1",
59810e8d85fSIan Rogers        "Errata": "BDM11, BDM55",
59910e8d85fSIan Rogers        "EventCode": "0xC0",
60010e8d85fSIan Rogers        "EventName": "INST_RETIRED.PREC_DIST",
60110e8d85fSIan Rogers        "PEBS": "2",
60210e8d85fSIan Rogers        "PublicDescription": "This is a precise version (that is, uses PEBS) of the event that counts instructions retired.",
60310e8d85fSIan Rogers        "SampleAfterValue": "2000003",
60410e8d85fSIan Rogers        "UMask": "0x1"
60510e8d85fSIan Rogers    },
60610e8d85fSIan Rogers    {
60710e8d85fSIan Rogers        "BriefDescription": "FP operations  retired. X87 FP operations that have no exceptions:",
608*39b8bd16SIan Rogers        "Counter": "0,1,2,3",
60910e8d85fSIan Rogers        "EventCode": "0xC0",
61010e8d85fSIan Rogers        "EventName": "INST_RETIRED.X87",
61110e8d85fSIan Rogers        "PublicDescription": "This event 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.",
61210e8d85fSIan Rogers        "SampleAfterValue": "2000003",
61310e8d85fSIan Rogers        "UMask": "0x2"
61410e8d85fSIan Rogers    },
61510e8d85fSIan Rogers    {
61610e8d85fSIan Rogers        "BriefDescription": "Cycles when Resource Allocation Table (RAT) external stall is sent to Instruction Decode Queue (IDQ) for the thread",
617*39b8bd16SIan Rogers        "Counter": "0,1,2,3",
61810e8d85fSIan Rogers        "EventCode": "0x0D",
61910e8d85fSIan Rogers        "EventName": "INT_MISC.RAT_STALL_CYCLES",
62010e8d85fSIan Rogers        "PublicDescription": "This event counts the number of cycles during which Resource Allocation Table (RAT) external stall is sent to Instruction Decode Queue (IDQ) for the current thread. This also includes the cycles during which the Allocator is serving another thread.",
62110e8d85fSIan Rogers        "SampleAfterValue": "2000003",
62210e8d85fSIan Rogers        "UMask": "0x8"
62310e8d85fSIan Rogers    },
62410e8d85fSIan Rogers    {
62510e8d85fSIan Rogers        "BriefDescription": "Core cycles the allocator was stalled due to recovery from earlier clear event for this thread (e.g. misprediction or memory nuke)",
626*39b8bd16SIan Rogers        "Counter": "0,1,2,3",
62710e8d85fSIan Rogers        "CounterMask": "1",
62810e8d85fSIan Rogers        "EventCode": "0x0D",
62910e8d85fSIan Rogers        "EventName": "INT_MISC.RECOVERY_CYCLES",
63010e8d85fSIan Rogers        "PublicDescription": "Cycles checkpoints in Resource Allocation Table (RAT) are recovering from JEClear or machine clear.",
63110e8d85fSIan Rogers        "SampleAfterValue": "2000003",
63210e8d85fSIan Rogers        "UMask": "0x3"
63310e8d85fSIan Rogers    },
63410e8d85fSIan Rogers    {
63510e8d85fSIan Rogers        "AnyThread": "1",
63610e8d85fSIan 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).",
637*39b8bd16SIan Rogers        "Counter": "0,1,2,3",
63810e8d85fSIan Rogers        "CounterMask": "1",
63910e8d85fSIan Rogers        "EventCode": "0x0D",
64010e8d85fSIan Rogers        "EventName": "INT_MISC.RECOVERY_CYCLES_ANY",
64110e8d85fSIan Rogers        "SampleAfterValue": "2000003",
64210e8d85fSIan Rogers        "UMask": "0x3"
64310e8d85fSIan Rogers    },
64410e8d85fSIan Rogers    {
64510e8d85fSIan 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.",
646*39b8bd16SIan Rogers        "Counter": "0,1,2,3",
64710e8d85fSIan Rogers        "EventCode": "0x03",
64810e8d85fSIan Rogers        "EventName": "LD_BLOCKS.NO_SR",
64910e8d85fSIan Rogers        "SampleAfterValue": "100003",
65010e8d85fSIan Rogers        "UMask": "0x8"
65110e8d85fSIan Rogers    },
65210e8d85fSIan Rogers    {
65310e8d85fSIan Rogers        "BriefDescription": "Cases when loads get true Block-on-Store blocking code preventing store forwarding",
654*39b8bd16SIan Rogers        "Counter": "0,1,2,3",
65510e8d85fSIan Rogers        "EventCode": "0x03",
65610e8d85fSIan Rogers        "EventName": "LD_BLOCKS.STORE_FORWARD",
65710e8d85fSIan Rogers        "PublicDescription": "This event counts how many times the load operation got the true Block-on-Store blocking code preventing store forwarding. This includes cases when:\n - preceding store conflicts with the load (incomplete overlap);\n - store forwarding is impossible due to u-arch limitations;\n - preceding lock RMW operations are not forwarded;\n - store has the no-forward bit set (uncacheable/page-split/masked stores);\n - all-blocking stores are used (mostly, fences and port I/O);\nand others.\nThe most common case is a load blocked due to its address range overlapping with a preceding smaller uncompleted store. Note: This event does not take into account cases of out-of-SW-control (for example, SbTailHit), unknown physical STA, and cases of blocking loads on store due to being non-WB memory type or a lock. These cases are covered by other events.\nSee the table of not supported store forwards in the Optimization Guide.",
65810e8d85fSIan Rogers        "SampleAfterValue": "100003",
65910e8d85fSIan Rogers        "UMask": "0x2"
66010e8d85fSIan Rogers    },
66110e8d85fSIan Rogers    {
66210e8d85fSIan Rogers        "BriefDescription": "False dependencies in MOB due to partial compare",
663*39b8bd16SIan Rogers        "Counter": "0,1,2,3",
66410e8d85fSIan Rogers        "EventCode": "0x07",
66510e8d85fSIan Rogers        "EventName": "LD_BLOCKS_PARTIAL.ADDRESS_ALIAS",
66610e8d85fSIan Rogers        "PublicDescription": "This event counts false dependencies in MOB when the partial comparison upon loose net check and dependency was resolved by the Enhanced Loose net mechanism. This may not result in high performance penalties. Loose net checks can fail when loads and stores are 4k aliased.",
66710e8d85fSIan Rogers        "SampleAfterValue": "100003",
66810e8d85fSIan Rogers        "UMask": "0x1"
66910e8d85fSIan Rogers    },
67010e8d85fSIan Rogers    {
67110e8d85fSIan Rogers        "BriefDescription": "Not software-prefetch load dispatches that hit FB allocated for hardware prefetch",
672*39b8bd16SIan Rogers        "Counter": "0,1,2,3",
67310e8d85fSIan Rogers        "EventCode": "0x4C",
67410e8d85fSIan Rogers        "EventName": "LOAD_HIT_PRE.HW_PF",
67510e8d85fSIan Rogers        "PublicDescription": "This event counts all not software-prefetch load dispatches that hit the fill buffer (FB) allocated for the hardware prefetch.",
67610e8d85fSIan Rogers        "SampleAfterValue": "100003",
67710e8d85fSIan Rogers        "UMask": "0x2"
67810e8d85fSIan Rogers    },
67910e8d85fSIan Rogers    {
68010e8d85fSIan Rogers        "BriefDescription": "Not software-prefetch load dispatches that hit FB allocated for software prefetch",
681*39b8bd16SIan Rogers        "Counter": "0,1,2,3",
68210e8d85fSIan Rogers        "EventCode": "0x4c",
68310e8d85fSIan Rogers        "EventName": "LOAD_HIT_PRE.SW_PF",
68410e8d85fSIan Rogers        "PublicDescription": "This event counts all not software-prefetch load dispatches that hit the fill buffer (FB) allocated for the software prefetch. It can also be incremented by some lock instructions. So it should only be used with profiling so that the locks can be excluded by asm inspection of the nearby instructions.",
68510e8d85fSIan Rogers        "SampleAfterValue": "100003",
68610e8d85fSIan Rogers        "UMask": "0x1"
68710e8d85fSIan Rogers    },
68810e8d85fSIan Rogers    {
68910e8d85fSIan Rogers        "BriefDescription": "Cycles 4 Uops delivered by the LSD, but didn't come from the decoder.",
690*39b8bd16SIan Rogers        "Counter": "0,1,2,3",
69110e8d85fSIan Rogers        "CounterMask": "4",
69210e8d85fSIan Rogers        "EventCode": "0xA8",
69310e8d85fSIan Rogers        "EventName": "LSD.CYCLES_4_UOPS",
69410e8d85fSIan Rogers        "SampleAfterValue": "2000003",
69510e8d85fSIan Rogers        "UMask": "0x1"
69610e8d85fSIan Rogers    },
69710e8d85fSIan Rogers    {
69810e8d85fSIan Rogers        "BriefDescription": "Cycles Uops delivered by the LSD, but didn't come from the decoder.",
699*39b8bd16SIan Rogers        "Counter": "0,1,2,3",
70010e8d85fSIan Rogers        "CounterMask": "1",
70110e8d85fSIan Rogers        "EventCode": "0xA8",
70210e8d85fSIan Rogers        "EventName": "LSD.CYCLES_ACTIVE",
70310e8d85fSIan Rogers        "SampleAfterValue": "2000003",
70410e8d85fSIan Rogers        "UMask": "0x1"
70510e8d85fSIan Rogers    },
70610e8d85fSIan Rogers    {
70710e8d85fSIan Rogers        "BriefDescription": "Number of Uops delivered by the LSD.",
708*39b8bd16SIan Rogers        "Counter": "0,1,2,3",
70910e8d85fSIan Rogers        "EventCode": "0xA8",
71010e8d85fSIan Rogers        "EventName": "LSD.UOPS",
71110e8d85fSIan Rogers        "SampleAfterValue": "2000003",
71210e8d85fSIan Rogers        "UMask": "0x1"
71310e8d85fSIan Rogers    },
71410e8d85fSIan Rogers    {
71510e8d85fSIan Rogers        "BriefDescription": "Number of machine clears (nukes) of any type.",
716*39b8bd16SIan Rogers        "Counter": "0,1,2,3",
71710e8d85fSIan Rogers        "CounterMask": "1",
71810e8d85fSIan Rogers        "EdgeDetect": "1",
71910e8d85fSIan Rogers        "EventCode": "0xC3",
72010e8d85fSIan Rogers        "EventName": "MACHINE_CLEARS.COUNT",
72110e8d85fSIan Rogers        "SampleAfterValue": "100003",
72210e8d85fSIan Rogers        "UMask": "0x1"
72310e8d85fSIan Rogers    },
72410e8d85fSIan Rogers    {
72510e8d85fSIan Rogers        "BriefDescription": "Cycles there was a Nuke. Account for both thread-specific and All Thread Nukes.",
726*39b8bd16SIan Rogers        "Counter": "0,1,2,3",
72710e8d85fSIan Rogers        "EventCode": "0xC3",
72810e8d85fSIan Rogers        "EventName": "MACHINE_CLEARS.CYCLES",
72910e8d85fSIan Rogers        "PublicDescription": "This event counts both thread-specific (TS) and all-thread (AT) nukes.",
73010e8d85fSIan Rogers        "SampleAfterValue": "2000003",
73110e8d85fSIan Rogers        "UMask": "0x1"
73210e8d85fSIan Rogers    },
73310e8d85fSIan Rogers    {
73410e8d85fSIan Rogers        "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.",
735*39b8bd16SIan Rogers        "Counter": "0,1,2,3",
73610e8d85fSIan Rogers        "EventCode": "0xC3",
73710e8d85fSIan Rogers        "EventName": "MACHINE_CLEARS.MASKMOV",
73810e8d85fSIan Rogers        "PublicDescription": "Maskmov false fault - counts number of time ucode passes through Maskmov flow due to instruction's mask being 0 while the flow was completed without raising a fault.",
73910e8d85fSIan Rogers        "SampleAfterValue": "100003",
74010e8d85fSIan Rogers        "UMask": "0x20"
74110e8d85fSIan Rogers    },
74210e8d85fSIan Rogers    {
74310e8d85fSIan Rogers        "BriefDescription": "Self-modifying code (SMC) detected.",
744*39b8bd16SIan Rogers        "Counter": "0,1,2,3",
74510e8d85fSIan Rogers        "EventCode": "0xC3",
74610e8d85fSIan Rogers        "EventName": "MACHINE_CLEARS.SMC",
74710e8d85fSIan Rogers        "PublicDescription": "This event counts self-modifying code (SMC) detected, which causes a machine clear.",
74810e8d85fSIan Rogers        "SampleAfterValue": "100003",
74910e8d85fSIan Rogers        "UMask": "0x4"
75010e8d85fSIan Rogers    },
75110e8d85fSIan Rogers    {
75210e8d85fSIan Rogers        "BriefDescription": "Number of integer Move Elimination candidate uops that were eliminated.",
753*39b8bd16SIan Rogers        "Counter": "0,1,2,3",
75410e8d85fSIan Rogers        "EventCode": "0x58",
75510e8d85fSIan Rogers        "EventName": "MOVE_ELIMINATION.INT_ELIMINATED",
75610e8d85fSIan Rogers        "SampleAfterValue": "1000003",
75710e8d85fSIan Rogers        "UMask": "0x1"
75810e8d85fSIan Rogers    },
75910e8d85fSIan Rogers    {
76010e8d85fSIan Rogers        "BriefDescription": "Number of integer Move Elimination candidate uops that were not eliminated.",
761*39b8bd16SIan Rogers        "Counter": "0,1,2,3",
76210e8d85fSIan Rogers        "EventCode": "0x58",
76310e8d85fSIan Rogers        "EventName": "MOVE_ELIMINATION.INT_NOT_ELIMINATED",
76410e8d85fSIan Rogers        "SampleAfterValue": "1000003",
76510e8d85fSIan Rogers        "UMask": "0x4"
76610e8d85fSIan Rogers    },
76710e8d85fSIan Rogers    {
76810e8d85fSIan Rogers        "BriefDescription": "Number of times any microcode assist is invoked by HW upon uop writeback.",
769*39b8bd16SIan Rogers        "Counter": "0,1,2,3",
77010e8d85fSIan Rogers        "EventCode": "0xC1",
77110e8d85fSIan Rogers        "EventName": "OTHER_ASSISTS.ANY_WB_ASSIST",
77210e8d85fSIan Rogers        "SampleAfterValue": "100003",
77310e8d85fSIan Rogers        "UMask": "0x40"
77410e8d85fSIan Rogers    },
77510e8d85fSIan Rogers    {
77610e8d85fSIan Rogers        "BriefDescription": "Resource-related stall cycles",
777*39b8bd16SIan Rogers        "Counter": "0,1,2,3",
77810e8d85fSIan Rogers        "EventCode": "0xa2",
77910e8d85fSIan Rogers        "EventName": "RESOURCE_STALLS.ANY",
78010e8d85fSIan Rogers        "PublicDescription": "This event counts resource-related stall cycles.",
78110e8d85fSIan Rogers        "SampleAfterValue": "2000003",
78210e8d85fSIan Rogers        "UMask": "0x1"
78310e8d85fSIan Rogers    },
78410e8d85fSIan Rogers    {
78510e8d85fSIan Rogers        "BriefDescription": "Cycles stalled due to re-order buffer full.",
786*39b8bd16SIan Rogers        "Counter": "0,1,2,3",
78710e8d85fSIan Rogers        "EventCode": "0xA2",
78810e8d85fSIan Rogers        "EventName": "RESOURCE_STALLS.ROB",
78910e8d85fSIan Rogers        "PublicDescription": "This event counts ROB full stall cycles. This counts cycles that the pipeline backend blocked uop delivery from the front end.",
79010e8d85fSIan Rogers        "SampleAfterValue": "2000003",
79110e8d85fSIan Rogers        "UMask": "0x10"
79210e8d85fSIan Rogers    },
79310e8d85fSIan Rogers    {
79410e8d85fSIan Rogers        "BriefDescription": "Cycles stalled due to no eligible RS entry available.",
795*39b8bd16SIan Rogers        "Counter": "0,1,2,3",
79610e8d85fSIan Rogers        "EventCode": "0xA2",
79710e8d85fSIan Rogers        "EventName": "RESOURCE_STALLS.RS",
79810e8d85fSIan Rogers        "PublicDescription": "This event counts stall cycles caused by absence of eligible entries in the reservation station (RS). This may result from RS overflow, or from RS deallocation because of the RS array Write Port allocation scheme (each RS entry has two write ports instead of four. As a result, empty entries could not be used, although RS is not really full). This counts cycles that the pipeline backend blocked uop delivery from the front end.",
79910e8d85fSIan Rogers        "SampleAfterValue": "2000003",
80010e8d85fSIan Rogers        "UMask": "0x4"
80110e8d85fSIan Rogers    },
80210e8d85fSIan Rogers    {
80310e8d85fSIan Rogers        "BriefDescription": "Cycles stalled due to no store buffers available. (not including draining form sync).",
804*39b8bd16SIan Rogers        "Counter": "0,1,2,3",
80510e8d85fSIan Rogers        "EventCode": "0xA2",
80610e8d85fSIan Rogers        "EventName": "RESOURCE_STALLS.SB",
80710e8d85fSIan Rogers        "PublicDescription": "This event counts stall cycles caused by the store buffer (SB) overflow (excluding draining from synch). This counts cycles that the pipeline backend blocked uop delivery from the front end.",
80810e8d85fSIan Rogers        "SampleAfterValue": "2000003",
80910e8d85fSIan Rogers        "UMask": "0x8"
81010e8d85fSIan Rogers    },
81110e8d85fSIan Rogers    {
81210e8d85fSIan Rogers        "BriefDescription": "Count cases of saving new LBR",
813*39b8bd16SIan Rogers        "Counter": "0,1,2,3",
81410e8d85fSIan Rogers        "EventCode": "0xCC",
81510e8d85fSIan Rogers        "EventName": "ROB_MISC_EVENTS.LBR_INSERTS",
81610e8d85fSIan Rogers        "PublicDescription": "This event counts cases of saving new LBR records by hardware. This assumes proper enabling of LBRs and takes into account LBR filtering done by the LBR_SELECT register.",
81710e8d85fSIan Rogers        "SampleAfterValue": "2000003",
81810e8d85fSIan Rogers        "UMask": "0x20"
81910e8d85fSIan Rogers    },
82010e8d85fSIan Rogers    {
82110e8d85fSIan Rogers        "BriefDescription": "Cycles when Reservation Station (RS) is empty for the thread",
822*39b8bd16SIan Rogers        "Counter": "0,1,2,3",
82310e8d85fSIan Rogers        "EventCode": "0x5E",
82410e8d85fSIan Rogers        "EventName": "RS_EVENTS.EMPTY_CYCLES",
82510e8d85fSIan Rogers        "PublicDescription": "This event counts cycles during which the reservation station (RS) is empty for the thread.\nNote: In ST-mode, not active thread should drive 0. This is usually caused by severely costly branch mispredictions, or allocator/FE issues.",
82610e8d85fSIan Rogers        "SampleAfterValue": "2000003",
82710e8d85fSIan Rogers        "UMask": "0x1"
82810e8d85fSIan Rogers    },
82910e8d85fSIan Rogers    {
83010e8d85fSIan Rogers        "BriefDescription": "Counts end of periods where the Reservation Station (RS) was empty. Could be useful to precisely locate Frontend Latency Bound issues.",
831*39b8bd16SIan Rogers        "Counter": "0,1,2,3",
83210e8d85fSIan Rogers        "CounterMask": "1",
83310e8d85fSIan Rogers        "EdgeDetect": "1",
83410e8d85fSIan Rogers        "EventCode": "0x5E",
83510e8d85fSIan Rogers        "EventName": "RS_EVENTS.EMPTY_END",
83610e8d85fSIan Rogers        "Invert": "1",
83710e8d85fSIan Rogers        "SampleAfterValue": "200003",
83810e8d85fSIan Rogers        "UMask": "0x1"
83910e8d85fSIan Rogers    },
84010e8d85fSIan Rogers    {
84110e8d85fSIan Rogers        "BriefDescription": "Cycles per thread when uops are executed in port 0",
842*39b8bd16SIan Rogers        "Counter": "0,1,2,3",
84310e8d85fSIan Rogers        "EventCode": "0xA1",
84410e8d85fSIan Rogers        "EventName": "UOPS_DISPATCHED_PORT.PORT_0",
84510e8d85fSIan Rogers        "PublicDescription": "This event counts, on the per-thread basis, cycles during which uops are dispatched from the Reservation Station (RS) to port 0.",
84610e8d85fSIan Rogers        "SampleAfterValue": "2000003",
84710e8d85fSIan Rogers        "UMask": "0x1"
84810e8d85fSIan Rogers    },
84910e8d85fSIan Rogers    {
85010e8d85fSIan Rogers        "BriefDescription": "Cycles per thread when uops are executed in port 1",
851*39b8bd16SIan Rogers        "Counter": "0,1,2,3",
85210e8d85fSIan Rogers        "EventCode": "0xA1",
85310e8d85fSIan Rogers        "EventName": "UOPS_DISPATCHED_PORT.PORT_1",
85410e8d85fSIan Rogers        "PublicDescription": "This event counts, on the per-thread basis, cycles during which uops are dispatched from the Reservation Station (RS) to port 1.",
85510e8d85fSIan Rogers        "SampleAfterValue": "2000003",
85610e8d85fSIan Rogers        "UMask": "0x2"
85710e8d85fSIan Rogers    },
85810e8d85fSIan Rogers    {
85910e8d85fSIan Rogers        "BriefDescription": "Cycles per thread when uops are executed in port 2",
860*39b8bd16SIan Rogers        "Counter": "0,1,2,3",
86110e8d85fSIan Rogers        "EventCode": "0xA1",
86210e8d85fSIan Rogers        "EventName": "UOPS_DISPATCHED_PORT.PORT_2",
86310e8d85fSIan Rogers        "PublicDescription": "This event counts, on the per-thread basis, cycles during which uops are dispatched from the Reservation Station (RS) to port 2.",
86410e8d85fSIan Rogers        "SampleAfterValue": "2000003",
86510e8d85fSIan Rogers        "UMask": "0x4"
86610e8d85fSIan Rogers    },
86710e8d85fSIan Rogers    {
86810e8d85fSIan Rogers        "BriefDescription": "Cycles per thread when uops are executed in port 3",
869*39b8bd16SIan Rogers        "Counter": "0,1,2,3",
87010e8d85fSIan Rogers        "EventCode": "0xA1",
87110e8d85fSIan Rogers        "EventName": "UOPS_DISPATCHED_PORT.PORT_3",
87210e8d85fSIan Rogers        "PublicDescription": "This event counts, on the per-thread basis, cycles during which uops are dispatched from the Reservation Station (RS) to port 3.",
87310e8d85fSIan Rogers        "SampleAfterValue": "2000003",
87410e8d85fSIan Rogers        "UMask": "0x8"
87510e8d85fSIan Rogers    },
87610e8d85fSIan Rogers    {
87710e8d85fSIan Rogers        "BriefDescription": "Cycles per thread when uops are executed in port 4",
878*39b8bd16SIan Rogers        "Counter": "0,1,2,3",
87910e8d85fSIan Rogers        "EventCode": "0xA1",
88010e8d85fSIan Rogers        "EventName": "UOPS_DISPATCHED_PORT.PORT_4",
88110e8d85fSIan Rogers        "PublicDescription": "This event counts, on the per-thread basis, cycles during which uops are dispatched from the Reservation Station (RS) to port 4.",
88210e8d85fSIan Rogers        "SampleAfterValue": "2000003",
88310e8d85fSIan Rogers        "UMask": "0x10"
88410e8d85fSIan Rogers    },
88510e8d85fSIan Rogers    {
88610e8d85fSIan Rogers        "BriefDescription": "Cycles per thread when uops are executed in port 5",
887*39b8bd16SIan Rogers        "Counter": "0,1,2,3",
88810e8d85fSIan Rogers        "EventCode": "0xA1",
88910e8d85fSIan Rogers        "EventName": "UOPS_DISPATCHED_PORT.PORT_5",
89010e8d85fSIan Rogers        "PublicDescription": "This event counts, on the per-thread basis, cycles during which uops are dispatched from the Reservation Station (RS) to port 5.",
89110e8d85fSIan Rogers        "SampleAfterValue": "2000003",
89210e8d85fSIan Rogers        "UMask": "0x20"
89310e8d85fSIan Rogers    },
89410e8d85fSIan Rogers    {
89510e8d85fSIan Rogers        "BriefDescription": "Cycles per thread when uops are executed in port 6",
896*39b8bd16SIan Rogers        "Counter": "0,1,2,3",
89710e8d85fSIan Rogers        "EventCode": "0xA1",
89810e8d85fSIan Rogers        "EventName": "UOPS_DISPATCHED_PORT.PORT_6",
89910e8d85fSIan Rogers        "PublicDescription": "This event counts, on the per-thread basis, cycles during which uops are dispatched from the Reservation Station (RS) to port 6.",
90010e8d85fSIan Rogers        "SampleAfterValue": "2000003",
90110e8d85fSIan Rogers        "UMask": "0x40"
90210e8d85fSIan Rogers    },
90310e8d85fSIan Rogers    {
90410e8d85fSIan Rogers        "BriefDescription": "Cycles per thread when uops are executed in port 7",
905*39b8bd16SIan Rogers        "Counter": "0,1,2,3",
90610e8d85fSIan Rogers        "EventCode": "0xA1",
90710e8d85fSIan Rogers        "EventName": "UOPS_DISPATCHED_PORT.PORT_7",
90810e8d85fSIan Rogers        "PublicDescription": "This event counts, on the per-thread basis, cycles during which uops are dispatched from the Reservation Station (RS) to port 7.",
90910e8d85fSIan Rogers        "SampleAfterValue": "2000003",
91010e8d85fSIan Rogers        "UMask": "0x80"
91110e8d85fSIan Rogers    },
91210e8d85fSIan Rogers    {
91310e8d85fSIan Rogers        "BriefDescription": "Number of uops executed on the core.",
914*39b8bd16SIan Rogers        "Counter": "0,1,2,3",
91510e8d85fSIan Rogers        "EventCode": "0xB1",
91610e8d85fSIan Rogers        "EventName": "UOPS_EXECUTED.CORE",
91710e8d85fSIan Rogers        "PublicDescription": "Number of uops executed from any thread.",
91810e8d85fSIan Rogers        "SampleAfterValue": "2000003",
91910e8d85fSIan Rogers        "UMask": "0x2"
92010e8d85fSIan Rogers    },
92110e8d85fSIan Rogers    {
92210e8d85fSIan Rogers        "BriefDescription": "Cycles at least 1 micro-op is executed from any thread on physical core.",
923*39b8bd16SIan Rogers        "Counter": "0,1,2,3",
92410e8d85fSIan Rogers        "CounterMask": "1",
92510e8d85fSIan Rogers        "EventCode": "0xb1",
92610e8d85fSIan Rogers        "EventName": "UOPS_EXECUTED.CORE_CYCLES_GE_1",
92710e8d85fSIan Rogers        "SampleAfterValue": "2000003",
92810e8d85fSIan Rogers        "UMask": "0x2"
92910e8d85fSIan Rogers    },
93010e8d85fSIan Rogers    {
93110e8d85fSIan Rogers        "BriefDescription": "Cycles at least 2 micro-op is executed from any thread on physical core.",
932*39b8bd16SIan Rogers        "Counter": "0,1,2,3",
93310e8d85fSIan Rogers        "CounterMask": "2",
93410e8d85fSIan Rogers        "EventCode": "0xb1",
93510e8d85fSIan Rogers        "EventName": "UOPS_EXECUTED.CORE_CYCLES_GE_2",
93610e8d85fSIan Rogers        "SampleAfterValue": "2000003",
93710e8d85fSIan Rogers        "UMask": "0x2"
93810e8d85fSIan Rogers    },
93910e8d85fSIan Rogers    {
94010e8d85fSIan Rogers        "BriefDescription": "Cycles at least 3 micro-op is executed from any thread on physical core.",
941*39b8bd16SIan Rogers        "Counter": "0,1,2,3",
94210e8d85fSIan Rogers        "CounterMask": "3",
94310e8d85fSIan Rogers        "EventCode": "0xb1",
94410e8d85fSIan Rogers        "EventName": "UOPS_EXECUTED.CORE_CYCLES_GE_3",
94510e8d85fSIan Rogers        "SampleAfterValue": "2000003",
94610e8d85fSIan Rogers        "UMask": "0x2"
94710e8d85fSIan Rogers    },
94810e8d85fSIan Rogers    {
94910e8d85fSIan Rogers        "BriefDescription": "Cycles at least 4 micro-op is executed from any thread on physical core.",
950*39b8bd16SIan Rogers        "Counter": "0,1,2,3",
95110e8d85fSIan Rogers        "CounterMask": "4",
95210e8d85fSIan Rogers        "EventCode": "0xb1",
95310e8d85fSIan Rogers        "EventName": "UOPS_EXECUTED.CORE_CYCLES_GE_4",
95410e8d85fSIan Rogers        "SampleAfterValue": "2000003",
95510e8d85fSIan Rogers        "UMask": "0x2"
95610e8d85fSIan Rogers    },
95710e8d85fSIan Rogers    {
95810e8d85fSIan Rogers        "BriefDescription": "Cycles with no micro-ops executed from any thread on physical core.",
959*39b8bd16SIan Rogers        "Counter": "0,1,2,3",
96010e8d85fSIan Rogers        "EventCode": "0xb1",
96110e8d85fSIan Rogers        "EventName": "UOPS_EXECUTED.CORE_CYCLES_NONE",
96210e8d85fSIan Rogers        "Invert": "1",
96310e8d85fSIan Rogers        "SampleAfterValue": "2000003",
96410e8d85fSIan Rogers        "UMask": "0x2"
96510e8d85fSIan Rogers    },
96610e8d85fSIan Rogers    {
96710e8d85fSIan Rogers        "BriefDescription": "Cycles where at least 1 uop was executed per-thread.",
968*39b8bd16SIan Rogers        "Counter": "0,1,2,3",
96910e8d85fSIan Rogers        "CounterMask": "1",
97010e8d85fSIan Rogers        "EventCode": "0xB1",
97110e8d85fSIan Rogers        "EventName": "UOPS_EXECUTED.CYCLES_GE_1_UOP_EXEC",
97210e8d85fSIan Rogers        "SampleAfterValue": "2000003",
97310e8d85fSIan Rogers        "UMask": "0x1"
97410e8d85fSIan Rogers    },
97510e8d85fSIan Rogers    {
97610e8d85fSIan Rogers        "BriefDescription": "Cycles where at least 2 uops were executed per-thread.",
977*39b8bd16SIan Rogers        "Counter": "0,1,2,3",
97810e8d85fSIan Rogers        "CounterMask": "2",
97910e8d85fSIan Rogers        "EventCode": "0xB1",
98010e8d85fSIan Rogers        "EventName": "UOPS_EXECUTED.CYCLES_GE_2_UOPS_EXEC",
98110e8d85fSIan Rogers        "SampleAfterValue": "2000003",
98210e8d85fSIan Rogers        "UMask": "0x1"
98310e8d85fSIan Rogers    },
98410e8d85fSIan Rogers    {
98510e8d85fSIan Rogers        "BriefDescription": "Cycles where at least 3 uops were executed per-thread.",
986*39b8bd16SIan Rogers        "Counter": "0,1,2,3",
98710e8d85fSIan Rogers        "CounterMask": "3",
98810e8d85fSIan Rogers        "EventCode": "0xB1",
98910e8d85fSIan Rogers        "EventName": "UOPS_EXECUTED.CYCLES_GE_3_UOPS_EXEC",
99010e8d85fSIan Rogers        "SampleAfterValue": "2000003",
99110e8d85fSIan Rogers        "UMask": "0x1"
99210e8d85fSIan Rogers    },
99310e8d85fSIan Rogers    {
99410e8d85fSIan Rogers        "BriefDescription": "Cycles where at least 4 uops were executed per-thread.",
995*39b8bd16SIan Rogers        "Counter": "0,1,2,3",
99610e8d85fSIan Rogers        "CounterMask": "4",
99710e8d85fSIan Rogers        "EventCode": "0xB1",
99810e8d85fSIan Rogers        "EventName": "UOPS_EXECUTED.CYCLES_GE_4_UOPS_EXEC",
99910e8d85fSIan Rogers        "SampleAfterValue": "2000003",
100010e8d85fSIan Rogers        "UMask": "0x1"
100110e8d85fSIan Rogers    },
100210e8d85fSIan Rogers    {
100310e8d85fSIan Rogers        "BriefDescription": "Counts number of cycles no uops were dispatched to be executed on this thread.",
1004*39b8bd16SIan Rogers        "Counter": "0,1,2,3",
100510e8d85fSIan Rogers        "CounterMask": "1",
100610e8d85fSIan Rogers        "EventCode": "0xB1",
100710e8d85fSIan Rogers        "EventName": "UOPS_EXECUTED.STALL_CYCLES",
100810e8d85fSIan Rogers        "Invert": "1",
100910e8d85fSIan Rogers        "PublicDescription": "This event counts cycles during which no uops were dispatched from the Reservation Station (RS) per thread.",
101010e8d85fSIan Rogers        "SampleAfterValue": "2000003",
101110e8d85fSIan Rogers        "UMask": "0x1"
101210e8d85fSIan Rogers    },
101310e8d85fSIan Rogers    {
101410e8d85fSIan Rogers        "BriefDescription": "Counts the number of uops to be executed per-thread each cycle.",
1015*39b8bd16SIan Rogers        "Counter": "0,1,2,3",
101610e8d85fSIan Rogers        "EventCode": "0xB1",
101710e8d85fSIan Rogers        "EventName": "UOPS_EXECUTED.THREAD",
101810e8d85fSIan Rogers        "PublicDescription": "Number of uops to be executed per-thread each cycle.",
101910e8d85fSIan Rogers        "SampleAfterValue": "2000003",
102010e8d85fSIan Rogers        "UMask": "0x1"
102110e8d85fSIan Rogers    },
102210e8d85fSIan Rogers    {
102310e8d85fSIan Rogers        "BriefDescription": "Cycles per thread when uops are executed in port 0",
1024*39b8bd16SIan Rogers        "Counter": "0,1,2,3",
102510e8d85fSIan Rogers        "EventCode": "0xA1",
102610e8d85fSIan Rogers        "EventName": "UOPS_EXECUTED_PORT.PORT_0",
102710e8d85fSIan Rogers        "PublicDescription": "This event counts, on the per-thread basis, cycles during which uops are dispatched from the Reservation Station (RS) to port 0.",
102810e8d85fSIan Rogers        "SampleAfterValue": "2000003",
102910e8d85fSIan Rogers        "UMask": "0x1"
103010e8d85fSIan Rogers    },
103110e8d85fSIan Rogers    {
103210e8d85fSIan Rogers        "AnyThread": "1",
103378036545SIan Rogers        "BriefDescription": "Cycles per core when uops are executed in port 0.",
1034*39b8bd16SIan Rogers        "Counter": "0,1,2,3",
103510e8d85fSIan Rogers        "EventCode": "0xA1",
103610e8d85fSIan Rogers        "EventName": "UOPS_EXECUTED_PORT.PORT_0_CORE",
103710e8d85fSIan Rogers        "SampleAfterValue": "2000003",
103810e8d85fSIan Rogers        "UMask": "0x1"
103910e8d85fSIan Rogers    },
104010e8d85fSIan Rogers    {
104110e8d85fSIan Rogers        "BriefDescription": "Cycles per thread when uops are executed in port 1",
1042*39b8bd16SIan Rogers        "Counter": "0,1,2,3",
104310e8d85fSIan Rogers        "EventCode": "0xA1",
104410e8d85fSIan Rogers        "EventName": "UOPS_EXECUTED_PORT.PORT_1",
104510e8d85fSIan Rogers        "PublicDescription": "This event counts, on the per-thread basis, cycles during which uops are dispatched from the Reservation Station (RS) to port 1.",
104610e8d85fSIan Rogers        "SampleAfterValue": "2000003",
104710e8d85fSIan Rogers        "UMask": "0x2"
104810e8d85fSIan Rogers    },
104910e8d85fSIan Rogers    {
105010e8d85fSIan Rogers        "AnyThread": "1",
105178036545SIan Rogers        "BriefDescription": "Cycles per core when uops are executed in port 1.",
1052*39b8bd16SIan Rogers        "Counter": "0,1,2,3",
105310e8d85fSIan Rogers        "EventCode": "0xA1",
105410e8d85fSIan Rogers        "EventName": "UOPS_EXECUTED_PORT.PORT_1_CORE",
105510e8d85fSIan Rogers        "SampleAfterValue": "2000003",
105610e8d85fSIan Rogers        "UMask": "0x2"
105710e8d85fSIan Rogers    },
105810e8d85fSIan Rogers    {
105910e8d85fSIan Rogers        "BriefDescription": "Cycles per thread when uops are executed in port 2",
1060*39b8bd16SIan Rogers        "Counter": "0,1,2,3",
106110e8d85fSIan Rogers        "EventCode": "0xA1",
106210e8d85fSIan Rogers        "EventName": "UOPS_EXECUTED_PORT.PORT_2",
106310e8d85fSIan Rogers        "PublicDescription": "This event counts, on the per-thread basis, cycles during which uops are dispatched from the Reservation Station (RS) to port 2.",
106410e8d85fSIan Rogers        "SampleAfterValue": "2000003",
106510e8d85fSIan Rogers        "UMask": "0x4"
106610e8d85fSIan Rogers    },
106710e8d85fSIan Rogers    {
106810e8d85fSIan Rogers        "AnyThread": "1",
106910e8d85fSIan Rogers        "BriefDescription": "Cycles per core when uops are dispatched to port 2.",
1070*39b8bd16SIan Rogers        "Counter": "0,1,2,3",
107110e8d85fSIan Rogers        "EventCode": "0xA1",
107210e8d85fSIan Rogers        "EventName": "UOPS_EXECUTED_PORT.PORT_2_CORE",
107310e8d85fSIan Rogers        "SampleAfterValue": "2000003",
107410e8d85fSIan Rogers        "UMask": "0x4"
107510e8d85fSIan Rogers    },
107610e8d85fSIan Rogers    {
107710e8d85fSIan Rogers        "BriefDescription": "Cycles per thread when uops are executed in port 3",
1078*39b8bd16SIan Rogers        "Counter": "0,1,2,3",
107910e8d85fSIan Rogers        "EventCode": "0xA1",
108010e8d85fSIan Rogers        "EventName": "UOPS_EXECUTED_PORT.PORT_3",
108110e8d85fSIan Rogers        "PublicDescription": "This event counts, on the per-thread basis, cycles during which uops are dispatched from the Reservation Station (RS) to port 3.",
108210e8d85fSIan Rogers        "SampleAfterValue": "2000003",
108310e8d85fSIan Rogers        "UMask": "0x8"
108410e8d85fSIan Rogers    },
108510e8d85fSIan Rogers    {
108610e8d85fSIan Rogers        "AnyThread": "1",
108710e8d85fSIan Rogers        "BriefDescription": "Cycles per core when uops are dispatched to port 3.",
1088*39b8bd16SIan Rogers        "Counter": "0,1,2,3",
108910e8d85fSIan Rogers        "EventCode": "0xA1",
109010e8d85fSIan Rogers        "EventName": "UOPS_EXECUTED_PORT.PORT_3_CORE",
109110e8d85fSIan Rogers        "SampleAfterValue": "2000003",
109210e8d85fSIan Rogers        "UMask": "0x8"
109310e8d85fSIan Rogers    },
109410e8d85fSIan Rogers    {
109510e8d85fSIan Rogers        "BriefDescription": "Cycles per thread when uops are executed in port 4",
1096*39b8bd16SIan Rogers        "Counter": "0,1,2,3",
109710e8d85fSIan Rogers        "EventCode": "0xA1",
109810e8d85fSIan Rogers        "EventName": "UOPS_EXECUTED_PORT.PORT_4",
109910e8d85fSIan Rogers        "PublicDescription": "This event counts, on the per-thread basis, cycles during which uops are dispatched from the Reservation Station (RS) to port 4.",
110010e8d85fSIan Rogers        "SampleAfterValue": "2000003",
110110e8d85fSIan Rogers        "UMask": "0x10"
110210e8d85fSIan Rogers    },
110310e8d85fSIan Rogers    {
110410e8d85fSIan Rogers        "AnyThread": "1",
110578036545SIan Rogers        "BriefDescription": "Cycles per core when uops are executed in port 4.",
1106*39b8bd16SIan Rogers        "Counter": "0,1,2,3",
110710e8d85fSIan Rogers        "EventCode": "0xA1",
110810e8d85fSIan Rogers        "EventName": "UOPS_EXECUTED_PORT.PORT_4_CORE",
110910e8d85fSIan Rogers        "SampleAfterValue": "2000003",
111010e8d85fSIan Rogers        "UMask": "0x10"
111110e8d85fSIan Rogers    },
111210e8d85fSIan Rogers    {
111310e8d85fSIan Rogers        "BriefDescription": "Cycles per thread when uops are executed in port 5",
1114*39b8bd16SIan Rogers        "Counter": "0,1,2,3",
111510e8d85fSIan Rogers        "EventCode": "0xA1",
111610e8d85fSIan Rogers        "EventName": "UOPS_EXECUTED_PORT.PORT_5",
111710e8d85fSIan Rogers        "PublicDescription": "This event counts, on the per-thread basis, cycles during which uops are dispatched from the Reservation Station (RS) to port 5.",
111810e8d85fSIan Rogers        "SampleAfterValue": "2000003",
111910e8d85fSIan Rogers        "UMask": "0x20"
112010e8d85fSIan Rogers    },
112110e8d85fSIan Rogers    {
112210e8d85fSIan Rogers        "AnyThread": "1",
112378036545SIan Rogers        "BriefDescription": "Cycles per core when uops are executed in port 5.",
1124*39b8bd16SIan Rogers        "Counter": "0,1,2,3",
112510e8d85fSIan Rogers        "EventCode": "0xA1",
112610e8d85fSIan Rogers        "EventName": "UOPS_EXECUTED_PORT.PORT_5_CORE",
112710e8d85fSIan Rogers        "SampleAfterValue": "2000003",
112810e8d85fSIan Rogers        "UMask": "0x20"
112910e8d85fSIan Rogers    },
113010e8d85fSIan Rogers    {
113110e8d85fSIan Rogers        "BriefDescription": "Cycles per thread when uops are executed in port 6",
1132*39b8bd16SIan Rogers        "Counter": "0,1,2,3",
113310e8d85fSIan Rogers        "EventCode": "0xA1",
113410e8d85fSIan Rogers        "EventName": "UOPS_EXECUTED_PORT.PORT_6",
113510e8d85fSIan Rogers        "PublicDescription": "This event counts, on the per-thread basis, cycles during which uops are dispatched from the Reservation Station (RS) to port 6.",
113610e8d85fSIan Rogers        "SampleAfterValue": "2000003",
113710e8d85fSIan Rogers        "UMask": "0x40"
113810e8d85fSIan Rogers    },
113910e8d85fSIan Rogers    {
114010e8d85fSIan Rogers        "AnyThread": "1",
114178036545SIan Rogers        "BriefDescription": "Cycles per core when uops are executed in port 6.",
1142*39b8bd16SIan Rogers        "Counter": "0,1,2,3",
114310e8d85fSIan Rogers        "EventCode": "0xA1",
114410e8d85fSIan Rogers        "EventName": "UOPS_EXECUTED_PORT.PORT_6_CORE",
114510e8d85fSIan Rogers        "SampleAfterValue": "2000003",
114610e8d85fSIan Rogers        "UMask": "0x40"
114710e8d85fSIan Rogers    },
114810e8d85fSIan Rogers    {
114910e8d85fSIan Rogers        "BriefDescription": "Cycles per thread when uops are executed in port 7",
1150*39b8bd16SIan Rogers        "Counter": "0,1,2,3",
115110e8d85fSIan Rogers        "EventCode": "0xA1",
115210e8d85fSIan Rogers        "EventName": "UOPS_EXECUTED_PORT.PORT_7",
115310e8d85fSIan Rogers        "PublicDescription": "This event counts, on the per-thread basis, cycles during which uops are dispatched from the Reservation Station (RS) to port 7.",
115410e8d85fSIan Rogers        "SampleAfterValue": "2000003",
115510e8d85fSIan Rogers        "UMask": "0x80"
115610e8d85fSIan Rogers    },
115710e8d85fSIan Rogers    {
115810e8d85fSIan Rogers        "AnyThread": "1",
115910e8d85fSIan Rogers        "BriefDescription": "Cycles per core when uops are dispatched to port 7.",
1160*39b8bd16SIan Rogers        "Counter": "0,1,2,3",
116110e8d85fSIan Rogers        "EventCode": "0xA1",
116210e8d85fSIan Rogers        "EventName": "UOPS_EXECUTED_PORT.PORT_7_CORE",
116310e8d85fSIan Rogers        "SampleAfterValue": "2000003",
116410e8d85fSIan Rogers        "UMask": "0x80"
116510e8d85fSIan Rogers    },
116610e8d85fSIan Rogers    {
116710e8d85fSIan Rogers        "BriefDescription": "Uops that Resource Allocation Table (RAT) issues to Reservation Station (RS)",
1168*39b8bd16SIan Rogers        "Counter": "0,1,2,3",
116910e8d85fSIan Rogers        "EventCode": "0x0E",
117010e8d85fSIan Rogers        "EventName": "UOPS_ISSUED.ANY",
117110e8d85fSIan Rogers        "PublicDescription": "This event counts the number of Uops issued by the Resource Allocation Table (RAT) to the reservation station (RS).",
117210e8d85fSIan Rogers        "SampleAfterValue": "2000003",
117310e8d85fSIan Rogers        "UMask": "0x1"
117410e8d85fSIan Rogers    },
117510e8d85fSIan Rogers    {
117610e8d85fSIan Rogers        "BriefDescription": "Number of flags-merge uops being allocated. Such uops considered perf sensitive; added by GSR u-arch.",
1177*39b8bd16SIan Rogers        "Counter": "0,1,2,3",
117810e8d85fSIan Rogers        "EventCode": "0x0E",
117910e8d85fSIan Rogers        "EventName": "UOPS_ISSUED.FLAGS_MERGE",
118010e8d85fSIan Rogers        "PublicDescription": "Number of flags-merge uops being allocated. Such uops considered perf sensitive\n added by GSR u-arch.",
118110e8d85fSIan Rogers        "SampleAfterValue": "2000003",
118210e8d85fSIan Rogers        "UMask": "0x10"
118310e8d85fSIan Rogers    },
118410e8d85fSIan Rogers    {
118510e8d85fSIan Rogers        "BriefDescription": "Number of Multiply packed/scalar single precision uops allocated.",
1186*39b8bd16SIan Rogers        "Counter": "0,1,2,3",
118710e8d85fSIan Rogers        "EventCode": "0x0E",
118810e8d85fSIan Rogers        "EventName": "UOPS_ISSUED.SINGLE_MUL",
118910e8d85fSIan Rogers        "SampleAfterValue": "2000003",
119010e8d85fSIan Rogers        "UMask": "0x40"
119110e8d85fSIan Rogers    },
119210e8d85fSIan Rogers    {
119310e8d85fSIan 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.",
1194*39b8bd16SIan Rogers        "Counter": "0,1,2,3",
119510e8d85fSIan Rogers        "EventCode": "0x0E",
119610e8d85fSIan Rogers        "EventName": "UOPS_ISSUED.SLOW_LEA",
119710e8d85fSIan Rogers        "SampleAfterValue": "2000003",
119810e8d85fSIan Rogers        "UMask": "0x20"
119910e8d85fSIan Rogers    },
120010e8d85fSIan Rogers    {
120110e8d85fSIan Rogers        "BriefDescription": "Cycles when Resource Allocation Table (RAT) does not issue Uops to Reservation Station (RS) for the thread",
1202*39b8bd16SIan Rogers        "Counter": "0,1,2,3",
120310e8d85fSIan Rogers        "CounterMask": "1",
120410e8d85fSIan Rogers        "EventCode": "0x0E",
120510e8d85fSIan Rogers        "EventName": "UOPS_ISSUED.STALL_CYCLES",
120610e8d85fSIan Rogers        "Invert": "1",
120710e8d85fSIan Rogers        "PublicDescription": "This event counts cycles during which the Resource Allocation Table (RAT) does not issue any Uops to the reservation station (RS) for the current thread.",
120810e8d85fSIan Rogers        "SampleAfterValue": "2000003",
120910e8d85fSIan Rogers        "UMask": "0x1"
121010e8d85fSIan Rogers    },
121110e8d85fSIan Rogers    {
121210e8d85fSIan Rogers        "BriefDescription": "Actually retired uops.",
1213*39b8bd16SIan Rogers        "Counter": "0,1,2,3",
121410e8d85fSIan Rogers        "EventCode": "0xC2",
121510e8d85fSIan Rogers        "EventName": "UOPS_RETIRED.ALL",
121610e8d85fSIan Rogers        "PEBS": "1",
121710e8d85fSIan Rogers        "PublicDescription": "This event counts all actually retired uops. Counting increments by two for micro-fused uops, and by one for macro-fused and other uops. Maximal increment value for one cycle is eight.",
121810e8d85fSIan Rogers        "SampleAfterValue": "2000003",
121910e8d85fSIan Rogers        "UMask": "0x1"
122010e8d85fSIan Rogers    },
122110e8d85fSIan Rogers    {
122210e8d85fSIan Rogers        "BriefDescription": "Retirement slots used.",
1223*39b8bd16SIan Rogers        "Counter": "0,1,2,3",
122410e8d85fSIan Rogers        "EventCode": "0xC2",
122510e8d85fSIan Rogers        "EventName": "UOPS_RETIRED.RETIRE_SLOTS",
122610e8d85fSIan Rogers        "PEBS": "1",
122710e8d85fSIan Rogers        "PublicDescription": "This event counts the number of retirement slots used.",
122810e8d85fSIan Rogers        "SampleAfterValue": "2000003",
122910e8d85fSIan Rogers        "UMask": "0x2"
123010e8d85fSIan Rogers    },
123110e8d85fSIan Rogers    {
123210e8d85fSIan Rogers        "BriefDescription": "Cycles without actually retired uops.",
1233*39b8bd16SIan Rogers        "Counter": "0,1,2,3",
123410e8d85fSIan Rogers        "CounterMask": "1",
123510e8d85fSIan Rogers        "EventCode": "0xC2",
123610e8d85fSIan Rogers        "EventName": "UOPS_RETIRED.STALL_CYCLES",
123710e8d85fSIan Rogers        "Invert": "1",
123810e8d85fSIan Rogers        "PublicDescription": "This event counts cycles without actually retired uops.",
123910e8d85fSIan Rogers        "SampleAfterValue": "2000003",
124010e8d85fSIan Rogers        "UMask": "0x1"
124110e8d85fSIan Rogers    },
124210e8d85fSIan Rogers    {
124310e8d85fSIan Rogers        "BriefDescription": "Cycles with less than 10 actually retired uops.",
1244*39b8bd16SIan Rogers        "Counter": "0,1,2,3",
124578036545SIan Rogers        "CounterMask": "16",
124610e8d85fSIan Rogers        "EventCode": "0xC2",
124710e8d85fSIan Rogers        "EventName": "UOPS_RETIRED.TOTAL_CYCLES",
124810e8d85fSIan Rogers        "Invert": "1",
124910e8d85fSIan Rogers        "PublicDescription": "Number of cycles using always true condition (uops_ret < 16) applied to non PEBS uops retired event.",
125010e8d85fSIan Rogers        "SampleAfterValue": "2000003",
125110e8d85fSIan Rogers        "UMask": "0x1"
1252b74d1315SAndi Kleen    }
1253b74d1315SAndi Kleen]
1254