119c0389bSAndi Kleen[
219c0389bSAndi Kleen    {
319c0389bSAndi Kleen        "BriefDescription": "Cycles when divider is busy executing divide operations",
456f57cffSIan Rogers        "EventCode": "0x14",
519c0389bSAndi Kleen        "EventName": "ARITH.FPU_DIV_ACTIVE",
619c0389bSAndi Kleen        "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.",
719c0389bSAndi Kleen        "SampleAfterValue": "2000003",
856f57cffSIan Rogers        "UMask": "0x1"
919c0389bSAndi Kleen    },
1019c0389bSAndi Kleen    {
1119c0389bSAndi Kleen        "BriefDescription": "Speculative and retired  branches",
1256f57cffSIan Rogers        "EventCode": "0x88",
1319c0389bSAndi Kleen        "EventName": "BR_INST_EXEC.ALL_BRANCHES",
1419c0389bSAndi Kleen        "PublicDescription": "This event counts both taken and not taken speculative and retired branch instructions.",
1519c0389bSAndi Kleen        "SampleAfterValue": "200003",
1656f57cffSIan Rogers        "UMask": "0xff"
1719c0389bSAndi Kleen    },
1819c0389bSAndi Kleen    {
1956f57cffSIan Rogers        "BriefDescription": "Speculative and retired macro-conditional branches",
2056f57cffSIan Rogers        "EventCode": "0x88",
2156f57cffSIan Rogers        "EventName": "BR_INST_EXEC.ALL_CONDITIONAL",
2256f57cffSIan Rogers        "PublicDescription": "This event counts both taken and not taken speculative and retired macro-conditional branch instructions.",
2319c0389bSAndi Kleen        "SampleAfterValue": "200003",
2456f57cffSIan Rogers        "UMask": "0xc1"
2519c0389bSAndi Kleen    },
2619c0389bSAndi Kleen    {
2756f57cffSIan Rogers        "BriefDescription": "Speculative and retired macro-unconditional branches excluding calls and indirects",
2856f57cffSIan Rogers        "EventCode": "0x88",
2956f57cffSIan Rogers        "EventName": "BR_INST_EXEC.ALL_DIRECT_JMP",
3056f57cffSIan Rogers        "PublicDescription": "This event counts both taken and not taken speculative and retired macro-unconditional branch instructions, excluding calls and indirects.",
3119c0389bSAndi Kleen        "SampleAfterValue": "200003",
3256f57cffSIan Rogers        "UMask": "0xc2"
3319c0389bSAndi Kleen    },
3419c0389bSAndi Kleen    {
3556f57cffSIan Rogers        "BriefDescription": "Speculative and retired direct near calls",
3656f57cffSIan Rogers        "EventCode": "0x88",
3756f57cffSIan Rogers        "EventName": "BR_INST_EXEC.ALL_DIRECT_NEAR_CALL",
3856f57cffSIan Rogers        "PublicDescription": "This event counts both taken and not taken speculative and retired direct near calls.",
3919c0389bSAndi Kleen        "SampleAfterValue": "200003",
4056f57cffSIan Rogers        "UMask": "0xd0"
4119c0389bSAndi Kleen    },
4219c0389bSAndi Kleen    {
4356f57cffSIan Rogers        "BriefDescription": "Speculative and retired indirect branches excluding calls and returns",
4456f57cffSIan Rogers        "EventCode": "0x88",
4556f57cffSIan Rogers        "EventName": "BR_INST_EXEC.ALL_INDIRECT_JUMP_NON_CALL_RET",
4656f57cffSIan Rogers        "PublicDescription": "This event counts both taken and not taken speculative and retired indirect branches excluding calls and return branches.",
4719c0389bSAndi Kleen        "SampleAfterValue": "200003",
4856f57cffSIan Rogers        "UMask": "0xc4"
4919c0389bSAndi Kleen    },
5019c0389bSAndi Kleen    {
5156f57cffSIan Rogers        "BriefDescription": "Speculative and retired indirect return branches.",
5256f57cffSIan Rogers        "EventCode": "0x88",
5356f57cffSIan Rogers        "EventName": "BR_INST_EXEC.ALL_INDIRECT_NEAR_RETURN",
5456f57cffSIan Rogers        "PublicDescription": "This event counts both taken and not taken speculative and retired indirect branches that have a return mnemonic.",
5597d00f2dSAndi Kleen        "SampleAfterValue": "200003",
5656f57cffSIan Rogers        "UMask": "0xc8"
5797d00f2dSAndi Kleen    },
5897d00f2dSAndi Kleen    {
5956f57cffSIan Rogers        "BriefDescription": "Not taken macro-conditional branches",
6056f57cffSIan Rogers        "EventCode": "0x88",
6156f57cffSIan Rogers        "EventName": "BR_INST_EXEC.NONTAKEN_CONDITIONAL",
6256f57cffSIan Rogers        "PublicDescription": "This event counts not taken macro-conditional branch instructions.",
6319c0389bSAndi Kleen        "SampleAfterValue": "200003",
6456f57cffSIan Rogers        "UMask": "0x41"
6519c0389bSAndi Kleen    },
6619c0389bSAndi Kleen    {
6756f57cffSIan Rogers        "BriefDescription": "Taken speculative and retired macro-conditional branches",
6856f57cffSIan Rogers        "EventCode": "0x88",
6956f57cffSIan Rogers        "EventName": "BR_INST_EXEC.TAKEN_CONDITIONAL",
7056f57cffSIan Rogers        "PublicDescription": "This event counts taken speculative and retired macro-conditional branch instructions.",
7119c0389bSAndi Kleen        "SampleAfterValue": "200003",
7256f57cffSIan Rogers        "UMask": "0x81"
7319c0389bSAndi Kleen    },
7419c0389bSAndi Kleen    {
7556f57cffSIan Rogers        "BriefDescription": "Taken speculative and retired macro-conditional branch instructions excluding calls and indirects",
7656f57cffSIan Rogers        "EventCode": "0x88",
7756f57cffSIan Rogers        "EventName": "BR_INST_EXEC.TAKEN_DIRECT_JUMP",
7856f57cffSIan Rogers        "PublicDescription": "This event counts taken speculative and retired macro-conditional branch instructions excluding calls and indirect branches.",
7919c0389bSAndi Kleen        "SampleAfterValue": "200003",
8056f57cffSIan Rogers        "UMask": "0x82"
8119c0389bSAndi Kleen    },
8219c0389bSAndi Kleen    {
8356f57cffSIan Rogers        "BriefDescription": "Taken speculative and retired direct near calls",
8456f57cffSIan Rogers        "EventCode": "0x88",
8556f57cffSIan Rogers        "EventName": "BR_INST_EXEC.TAKEN_DIRECT_NEAR_CALL",
8656f57cffSIan Rogers        "PublicDescription": "This event counts taken speculative and retired direct near calls.",
8756f57cffSIan Rogers        "SampleAfterValue": "200003",
8856f57cffSIan Rogers        "UMask": "0x90"
8997d00f2dSAndi Kleen    },
9097d00f2dSAndi Kleen    {
9156f57cffSIan Rogers        "BriefDescription": "Taken speculative and retired indirect branches excluding calls and returns",
9256f57cffSIan Rogers        "EventCode": "0x88",
9356f57cffSIan Rogers        "EventName": "BR_INST_EXEC.TAKEN_INDIRECT_JUMP_NON_CALL_RET",
9456f57cffSIan Rogers        "PublicDescription": "This event counts taken speculative and retired indirect branches excluding calls and return branches.",
9556f57cffSIan Rogers        "SampleAfterValue": "200003",
9656f57cffSIan Rogers        "UMask": "0x84"
9719c0389bSAndi Kleen    },
9819c0389bSAndi Kleen    {
9956f57cffSIan Rogers        "BriefDescription": "Taken speculative and retired indirect calls",
10056f57cffSIan Rogers        "EventCode": "0x88",
10156f57cffSIan Rogers        "EventName": "BR_INST_EXEC.TAKEN_INDIRECT_NEAR_CALL",
10256f57cffSIan Rogers        "PublicDescription": "This event counts taken speculative and retired indirect calls including both register and memory indirect.",
10356f57cffSIan Rogers        "SampleAfterValue": "200003",
10456f57cffSIan Rogers        "UMask": "0xa0"
10597d00f2dSAndi Kleen    },
10697d00f2dSAndi Kleen    {
10756f57cffSIan Rogers        "BriefDescription": "Taken speculative and retired indirect branches with return mnemonic",
10856f57cffSIan Rogers        "EventCode": "0x88",
10956f57cffSIan Rogers        "EventName": "BR_INST_EXEC.TAKEN_INDIRECT_NEAR_RETURN",
11056f57cffSIan Rogers        "PublicDescription": "This event counts taken speculative and retired indirect branches that have a return mnemonic.",
11156f57cffSIan Rogers        "SampleAfterValue": "200003",
11256f57cffSIan Rogers        "UMask": "0x88"
11397d00f2dSAndi Kleen    },
11497d00f2dSAndi Kleen    {
11597d00f2dSAndi Kleen        "BriefDescription": "All (macro) branch instructions retired.",
11656f57cffSIan Rogers        "EventCode": "0xC4",
11797d00f2dSAndi Kleen        "EventName": "BR_INST_RETIRED.ALL_BRANCHES",
11897d00f2dSAndi Kleen        "PublicDescription": "This event counts all (macro) branch instructions retired.",
11956f57cffSIan Rogers        "SampleAfterValue": "400009"
12097d00f2dSAndi Kleen    },
12197d00f2dSAndi Kleen    {
12297d00f2dSAndi Kleen        "BriefDescription": "All (macro) branch instructions retired. (Precise Event - PEBS)",
12397d00f2dSAndi Kleen        "Errata": "BDW98",
12456f57cffSIan Rogers        "EventCode": "0xC4",
12556f57cffSIan Rogers        "EventName": "BR_INST_RETIRED.ALL_BRANCHES_PEBS",
12656f57cffSIan Rogers        "PEBS": "2",
12797d00f2dSAndi Kleen        "PublicDescription": "This is a precise version of BR_INST_RETIRED.ALL_BRANCHES that counts all (macro) branch instructions retired.",
12897d00f2dSAndi Kleen        "SampleAfterValue": "400009",
12956f57cffSIan Rogers        "UMask": "0x4"
13097d00f2dSAndi Kleen    },
13197d00f2dSAndi Kleen    {
13256f57cffSIan Rogers        "BriefDescription": "Conditional branch instructions retired.",
13356f57cffSIan Rogers        "EventCode": "0xC4",
13456f57cffSIan Rogers        "EventName": "BR_INST_RETIRED.CONDITIONAL",
13556f57cffSIan Rogers        "PEBS": "1",
13656f57cffSIan Rogers        "PublicDescription": "This event counts conditional branch instructions retired.",
13756f57cffSIan Rogers        "SampleAfterValue": "400009",
13856f57cffSIan Rogers        "UMask": "0x1"
13956f57cffSIan Rogers    },
14056f57cffSIan Rogers    {
14156f57cffSIan Rogers        "BriefDescription": "Far branch instructions retired.",
14256f57cffSIan Rogers        "Errata": "BDW98",
14356f57cffSIan Rogers        "EventCode": "0xC4",
14456f57cffSIan Rogers        "EventName": "BR_INST_RETIRED.FAR_BRANCH",
14556f57cffSIan Rogers        "PublicDescription": "This event counts far branch instructions retired.",
14656f57cffSIan Rogers        "SampleAfterValue": "100007",
14756f57cffSIan Rogers        "UMask": "0x40"
14856f57cffSIan Rogers    },
14956f57cffSIan Rogers    {
15056f57cffSIan Rogers        "BriefDescription": "Direct and indirect near call instructions retired.",
15156f57cffSIan Rogers        "EventCode": "0xC4",
15256f57cffSIan Rogers        "EventName": "BR_INST_RETIRED.NEAR_CALL",
15356f57cffSIan Rogers        "PEBS": "1",
15456f57cffSIan Rogers        "PublicDescription": "This event counts both direct and indirect near call instructions retired.",
15556f57cffSIan Rogers        "SampleAfterValue": "100007",
15656f57cffSIan Rogers        "UMask": "0x2"
15756f57cffSIan Rogers    },
15856f57cffSIan Rogers    {
15956f57cffSIan Rogers        "BriefDescription": "Direct and indirect macro near call instructions retired (captured in ring 3).",
16056f57cffSIan Rogers        "EventCode": "0xC4",
16156f57cffSIan Rogers        "EventName": "BR_INST_RETIRED.NEAR_CALL_R3",
16256f57cffSIan Rogers        "PEBS": "1",
16356f57cffSIan Rogers        "PublicDescription": "This event counts both direct and indirect macro near call instructions retired (captured in ring 3).",
16456f57cffSIan Rogers        "SampleAfterValue": "100007",
16556f57cffSIan Rogers        "UMask": "0x2"
16656f57cffSIan Rogers    },
16756f57cffSIan Rogers    {
16856f57cffSIan Rogers        "BriefDescription": "Return instructions retired.",
16956f57cffSIan Rogers        "EventCode": "0xC4",
17097d00f2dSAndi Kleen        "EventName": "BR_INST_RETIRED.NEAR_RETURN",
17156f57cffSIan Rogers        "PEBS": "1",
1729f0f4a24SAndi Kleen        "PublicDescription": "This event counts return instructions retired.",
17397d00f2dSAndi Kleen        "SampleAfterValue": "100007",
17456f57cffSIan Rogers        "UMask": "0x8"
17597d00f2dSAndi Kleen    },
17697d00f2dSAndi Kleen    {
17756f57cffSIan Rogers        "BriefDescription": "Taken branch instructions retired.",
17897d00f2dSAndi Kleen        "EventCode": "0xC4",
17956f57cffSIan Rogers        "EventName": "BR_INST_RETIRED.NEAR_TAKEN",
18056f57cffSIan Rogers        "PEBS": "1",
18156f57cffSIan Rogers        "PublicDescription": "This event counts taken branch instructions retired.",
18256f57cffSIan Rogers        "SampleAfterValue": "400009",
18356f57cffSIan Rogers        "UMask": "0x20"
18456f57cffSIan Rogers    },
18556f57cffSIan Rogers    {
18697d00f2dSAndi Kleen        "BriefDescription": "Not taken branch instructions retired.",
18756f57cffSIan Rogers        "EventCode": "0xC4",
18897d00f2dSAndi Kleen        "EventName": "BR_INST_RETIRED.NOT_TAKEN",
18997d00f2dSAndi Kleen        "PublicDescription": "This event counts not taken branch instructions retired.",
19097d00f2dSAndi Kleen        "SampleAfterValue": "400009",
19156f57cffSIan Rogers        "UMask": "0x10"
19297d00f2dSAndi Kleen    },
19397d00f2dSAndi Kleen    {
19456f57cffSIan Rogers        "BriefDescription": "Speculative and retired mispredicted macro conditional branches",
19556f57cffSIan Rogers        "EventCode": "0x89",
19656f57cffSIan Rogers        "EventName": "BR_MISP_EXEC.ALL_BRANCHES",
19756f57cffSIan Rogers        "PublicDescription": "This event counts both taken and not taken speculative and retired mispredicted branch instructions.",
19856f57cffSIan Rogers        "SampleAfterValue": "200003",
19956f57cffSIan Rogers        "UMask": "0xff"
20097d00f2dSAndi Kleen    },
20197d00f2dSAndi Kleen    {
20256f57cffSIan Rogers        "BriefDescription": "Speculative and retired mispredicted macro conditional branches",
20356f57cffSIan Rogers        "EventCode": "0x89",
20456f57cffSIan Rogers        "EventName": "BR_MISP_EXEC.ALL_CONDITIONAL",
20556f57cffSIan Rogers        "PublicDescription": "This event counts both taken and not taken speculative and retired mispredicted macro conditional branch instructions.",
20656f57cffSIan Rogers        "SampleAfterValue": "200003",
20756f57cffSIan Rogers        "UMask": "0xc1"
20897d00f2dSAndi Kleen    },
20997d00f2dSAndi Kleen    {
21056f57cffSIan Rogers        "BriefDescription": "Mispredicted indirect branches excluding calls and returns",
21156f57cffSIan Rogers        "EventCode": "0x89",
21256f57cffSIan Rogers        "EventName": "BR_MISP_EXEC.ALL_INDIRECT_JUMP_NON_CALL_RET",
21356f57cffSIan Rogers        "PublicDescription": "This event counts both taken and not taken mispredicted indirect branches excluding calls and returns.",
21456f57cffSIan Rogers        "SampleAfterValue": "200003",
21556f57cffSIan Rogers        "UMask": "0xc4"
21656f57cffSIan Rogers    },
21756f57cffSIan Rogers    {
218*74a87b6aSIan Rogers        "BriefDescription": "Speculative mispredicted indirect branches",
219*74a87b6aSIan Rogers        "EventCode": "0x89",
220*74a87b6aSIan Rogers        "EventName": "BR_MISP_EXEC.INDIRECT",
221*74a87b6aSIan Rogers        "PublicDescription": "Counts speculatively miss-predicted indirect branches at execution time. Counts for indirect near CALL or JMP instructions (RET excluded).",
222*74a87b6aSIan Rogers        "SampleAfterValue": "200003",
223*74a87b6aSIan Rogers        "UMask": "0xe4"
224*74a87b6aSIan Rogers    },
225*74a87b6aSIan Rogers    {
22656f57cffSIan Rogers        "BriefDescription": "Not taken speculative and retired mispredicted macro conditional branches",
22756f57cffSIan Rogers        "EventCode": "0x89",
22856f57cffSIan Rogers        "EventName": "BR_MISP_EXEC.NONTAKEN_CONDITIONAL",
22956f57cffSIan Rogers        "PublicDescription": "This event counts not taken speculative and retired mispredicted macro conditional branch instructions.",
23056f57cffSIan Rogers        "SampleAfterValue": "200003",
23156f57cffSIan Rogers        "UMask": "0x41"
23256f57cffSIan Rogers    },
23356f57cffSIan Rogers    {
23456f57cffSIan Rogers        "BriefDescription": "Taken speculative and retired mispredicted macro conditional branches",
23556f57cffSIan Rogers        "EventCode": "0x89",
23656f57cffSIan Rogers        "EventName": "BR_MISP_EXEC.TAKEN_CONDITIONAL",
23756f57cffSIan Rogers        "PublicDescription": "This event counts taken speculative and retired mispredicted macro conditional branch instructions.",
23856f57cffSIan Rogers        "SampleAfterValue": "200003",
23956f57cffSIan Rogers        "UMask": "0x81"
24056f57cffSIan Rogers    },
24156f57cffSIan Rogers    {
24256f57cffSIan Rogers        "BriefDescription": "Taken speculative and retired mispredicted indirect branches excluding calls and returns",
24356f57cffSIan Rogers        "EventCode": "0x89",
24456f57cffSIan Rogers        "EventName": "BR_MISP_EXEC.TAKEN_INDIRECT_JUMP_NON_CALL_RET",
24556f57cffSIan Rogers        "PublicDescription": "This event counts taken speculative and retired mispredicted indirect branches excluding calls and returns.",
24656f57cffSIan Rogers        "SampleAfterValue": "200003",
24756f57cffSIan Rogers        "UMask": "0x84"
24856f57cffSIan Rogers    },
24956f57cffSIan Rogers    {
25056f57cffSIan Rogers        "BriefDescription": "Taken speculative and retired mispredicted indirect calls.",
25156f57cffSIan Rogers        "EventCode": "0x89",
25256f57cffSIan Rogers        "EventName": "BR_MISP_EXEC.TAKEN_INDIRECT_NEAR_CALL",
25356f57cffSIan Rogers        "SampleAfterValue": "200003",
25456f57cffSIan Rogers        "UMask": "0xa0"
25556f57cffSIan Rogers    },
25656f57cffSIan Rogers    {
25756f57cffSIan Rogers        "BriefDescription": "Taken speculative and retired mispredicted indirect branches with return mnemonic",
25856f57cffSIan Rogers        "EventCode": "0x89",
25956f57cffSIan Rogers        "EventName": "BR_MISP_EXEC.TAKEN_RETURN_NEAR",
26056f57cffSIan Rogers        "PublicDescription": "This event counts taken speculative and retired mispredicted indirect branches that have a return mnemonic.",
26156f57cffSIan Rogers        "SampleAfterValue": "200003",
26256f57cffSIan Rogers        "UMask": "0x88"
26356f57cffSIan Rogers    },
26456f57cffSIan Rogers    {
26597d00f2dSAndi Kleen        "BriefDescription": "All mispredicted macro branch instructions retired.",
26656f57cffSIan Rogers        "EventCode": "0xC5",
26797d00f2dSAndi Kleen        "EventName": "BR_MISP_RETIRED.ALL_BRANCHES",
26897d00f2dSAndi Kleen        "PublicDescription": "This event counts all mispredicted macro branch instructions retired.",
26956f57cffSIan Rogers        "SampleAfterValue": "400009"
27097d00f2dSAndi Kleen    },
27197d00f2dSAndi Kleen    {
27297d00f2dSAndi Kleen        "BriefDescription": "Mispredicted macro branch instructions retired. (Precise Event - PEBS)",
27356f57cffSIan Rogers        "EventCode": "0xC5",
27497d00f2dSAndi Kleen        "EventName": "BR_MISP_RETIRED.ALL_BRANCHES_PEBS",
27556f57cffSIan Rogers        "PEBS": "2",
27697d00f2dSAndi Kleen        "PublicDescription": "This is a precise version of BR_MISP_RETIRED.ALL_BRANCHES that counts all mispredicted macro branch instructions retired.",
27797d00f2dSAndi Kleen        "SampleAfterValue": "400009",
27856f57cffSIan Rogers        "UMask": "0x4"
27997d00f2dSAndi Kleen    },
28097d00f2dSAndi Kleen    {
28156f57cffSIan Rogers        "BriefDescription": "Mispredicted conditional branch instructions retired.",
28256f57cffSIan Rogers        "EventCode": "0xC5",
28356f57cffSIan Rogers        "EventName": "BR_MISP_RETIRED.CONDITIONAL",
28456f57cffSIan Rogers        "PEBS": "1",
28556f57cffSIan Rogers        "PublicDescription": "This event counts mispredicted conditional branch instructions retired.",
28656f57cffSIan Rogers        "SampleAfterValue": "400009",
28756f57cffSIan Rogers        "UMask": "0x1"
28897d00f2dSAndi Kleen    },
28997d00f2dSAndi Kleen    {
2909f0f4a24SAndi Kleen        "BriefDescription": "number of near branch instructions retired that were mispredicted and taken.",
29156f57cffSIan Rogers        "EventCode": "0xC5",
29297d00f2dSAndi Kleen        "EventName": "BR_MISP_RETIRED.NEAR_TAKEN",
29356f57cffSIan Rogers        "PEBS": "1",
2949f0f4a24SAndi Kleen        "PublicDescription": "Number of near branch instructions retired that were mispredicted and taken.",
29597d00f2dSAndi Kleen        "SampleAfterValue": "400009",
29656f57cffSIan Rogers        "UMask": "0x20"
29797d00f2dSAndi Kleen    },
29897d00f2dSAndi Kleen    {
29956f57cffSIan Rogers        "BriefDescription": "This event counts the number of mispredicted ret instructions retired. Non PEBS",
30056f57cffSIan Rogers        "EventCode": "0xC5",
30156f57cffSIan Rogers        "EventName": "BR_MISP_RETIRED.RET",
30256f57cffSIan Rogers        "PEBS": "1",
30356f57cffSIan Rogers        "PublicDescription": "This event counts mispredicted return instructions retired.",
30456f57cffSIan Rogers        "SampleAfterValue": "100007",
30556f57cffSIan Rogers        "UMask": "0x8"
30656f57cffSIan Rogers    },
30756f57cffSIan Rogers    {
30856f57cffSIan Rogers        "BriefDescription": "Count XClk pulses when this thread is unhalted and the other thread is halted.",
30956f57cffSIan Rogers        "EventCode": "0x3c",
31056f57cffSIan Rogers        "EventName": "CPU_CLK_THREAD_UNHALTED.ONE_THREAD_ACTIVE",
31156f57cffSIan Rogers        "SampleAfterValue": "100003",
31256f57cffSIan Rogers        "UMask": "0x2"
31356f57cffSIan Rogers    },
31456f57cffSIan Rogers    {
31556f57cffSIan Rogers        "BriefDescription": "Reference cycles when the thread is unhalted (counts at 100 MHz rate)",
31656f57cffSIan Rogers        "EventCode": "0x3C",
31756f57cffSIan Rogers        "EventName": "CPU_CLK_THREAD_UNHALTED.REF_XCLK",
31856f57cffSIan Rogers        "PublicDescription": "This is a fixed-frequency event programmed to general counters. It counts when the core is unhalted at 100 Mhz.",
31956f57cffSIan Rogers        "SampleAfterValue": "100003",
32056f57cffSIan Rogers        "UMask": "0x1"
32156f57cffSIan Rogers    },
32256f57cffSIan Rogers    {
32356f57cffSIan Rogers        "AnyThread": "1",
32456f57cffSIan Rogers        "BriefDescription": "Reference cycles when the at least one thread on the physical core is unhalted (counts at 100 MHz rate).",
32556f57cffSIan Rogers        "EventCode": "0x3C",
32656f57cffSIan Rogers        "EventName": "CPU_CLK_THREAD_UNHALTED.REF_XCLK_ANY",
32756f57cffSIan Rogers        "SampleAfterValue": "100003",
32856f57cffSIan Rogers        "UMask": "0x1"
32956f57cffSIan Rogers    },
33056f57cffSIan Rogers    {
33156f57cffSIan Rogers        "BriefDescription": "Count XClk pulses when this thread is unhalted and the other thread is halted.",
33256f57cffSIan Rogers        "EventCode": "0x3C",
33356f57cffSIan Rogers        "EventName": "CPU_CLK_UNHALTED.ONE_THREAD_ACTIVE",
33456f57cffSIan Rogers        "SampleAfterValue": "100003",
33556f57cffSIan Rogers        "UMask": "0x2"
33656f57cffSIan Rogers    },
33756f57cffSIan Rogers    {
33856f57cffSIan Rogers        "BriefDescription": "Reference cycles when the core is not in halt state.",
33956f57cffSIan Rogers        "EventName": "CPU_CLK_UNHALTED.REF_TSC",
34056f57cffSIan 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.",
34156f57cffSIan Rogers        "SampleAfterValue": "2000003",
34256f57cffSIan Rogers        "UMask": "0x3"
34356f57cffSIan Rogers    },
34456f57cffSIan Rogers    {
34556f57cffSIan Rogers        "BriefDescription": "Reference cycles when the thread is unhalted (counts at 100 MHz rate)",
34656f57cffSIan Rogers        "EventCode": "0x3C",
34756f57cffSIan Rogers        "EventName": "CPU_CLK_UNHALTED.REF_XCLK",
34856f57cffSIan Rogers        "PublicDescription": "Reference cycles when the thread is unhalted (counts at 100 MHz rate).",
34956f57cffSIan Rogers        "SampleAfterValue": "100003",
35056f57cffSIan Rogers        "UMask": "0x1"
35156f57cffSIan Rogers    },
35256f57cffSIan Rogers    {
35356f57cffSIan Rogers        "AnyThread": "1",
35456f57cffSIan Rogers        "BriefDescription": "Reference cycles when the at least one thread on the physical core is unhalted (counts at 100 MHz rate).",
35556f57cffSIan Rogers        "EventCode": "0x3C",
35656f57cffSIan Rogers        "EventName": "CPU_CLK_UNHALTED.REF_XCLK_ANY",
35756f57cffSIan Rogers        "SampleAfterValue": "100003",
35856f57cffSIan Rogers        "UMask": "0x1"
35956f57cffSIan Rogers    },
36056f57cffSIan Rogers    {
36156f57cffSIan Rogers        "BriefDescription": "Core cycles when the thread is not in halt state",
36256f57cffSIan Rogers        "EventName": "CPU_CLK_UNHALTED.THREAD",
36356f57cffSIan 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.",
36456f57cffSIan Rogers        "SampleAfterValue": "2000003",
36556f57cffSIan Rogers        "UMask": "0x2"
36656f57cffSIan Rogers    },
36756f57cffSIan Rogers    {
36856f57cffSIan Rogers        "AnyThread": "1",
36956f57cffSIan Rogers        "BriefDescription": "Core cycles when at least one thread on the physical core is not in halt state.",
37056f57cffSIan Rogers        "EventName": "CPU_CLK_UNHALTED.THREAD_ANY",
37156f57cffSIan Rogers        "SampleAfterValue": "2000003",
37256f57cffSIan Rogers        "UMask": "0x2"
37356f57cffSIan Rogers    },
37456f57cffSIan Rogers    {
37556f57cffSIan Rogers        "BriefDescription": "Thread cycles when thread is not in halt state",
37656f57cffSIan Rogers        "EventCode": "0x3C",
37756f57cffSIan Rogers        "EventName": "CPU_CLK_UNHALTED.THREAD_P",
37856f57cffSIan 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.",
37956f57cffSIan Rogers        "SampleAfterValue": "2000003"
38056f57cffSIan Rogers    },
38156f57cffSIan Rogers    {
38256f57cffSIan Rogers        "AnyThread": "1",
38356f57cffSIan Rogers        "BriefDescription": "Core cycles when at least one thread on the physical core is not in halt state.",
38456f57cffSIan Rogers        "EventCode": "0x3C",
38556f57cffSIan Rogers        "EventName": "CPU_CLK_UNHALTED.THREAD_P_ANY",
38656f57cffSIan Rogers        "SampleAfterValue": "2000003"
38756f57cffSIan Rogers    },
38856f57cffSIan Rogers    {
38956f57cffSIan Rogers        "BriefDescription": "Cycles while L1 cache miss demand load is outstanding.",
39056f57cffSIan Rogers        "CounterMask": "8",
39156f57cffSIan Rogers        "EventCode": "0xA3",
39256f57cffSIan Rogers        "EventName": "CYCLE_ACTIVITY.CYCLES_L1D_MISS",
39356f57cffSIan Rogers        "SampleAfterValue": "2000003",
39456f57cffSIan Rogers        "UMask": "0x8"
39556f57cffSIan Rogers    },
39656f57cffSIan Rogers    {
39756f57cffSIan Rogers        "BriefDescription": "Cycles while L1 cache miss demand load is outstanding.",
39856f57cffSIan Rogers        "CounterMask": "8",
39956f57cffSIan Rogers        "EventCode": "0xA3",
40056f57cffSIan Rogers        "EventName": "CYCLE_ACTIVITY.CYCLES_L1D_PENDING",
40156f57cffSIan Rogers        "PublicDescription": "Counts number of cycles the CPU has at least one pending  demand load request missing the L1 data cache.",
40256f57cffSIan Rogers        "SampleAfterValue": "2000003",
40356f57cffSIan Rogers        "UMask": "0x8"
40456f57cffSIan Rogers    },
40556f57cffSIan Rogers    {
40656f57cffSIan Rogers        "BriefDescription": "Cycles while L2 cache miss demand load is outstanding.",
40756f57cffSIan Rogers        "CounterMask": "1",
40856f57cffSIan Rogers        "EventCode": "0xA3",
40956f57cffSIan Rogers        "EventName": "CYCLE_ACTIVITY.CYCLES_L2_MISS",
41056f57cffSIan Rogers        "SampleAfterValue": "2000003",
41156f57cffSIan Rogers        "UMask": "0x1"
41256f57cffSIan Rogers    },
41356f57cffSIan Rogers    {
41456f57cffSIan Rogers        "BriefDescription": "Cycles while L2 cache miss demand load is outstanding.",
41556f57cffSIan Rogers        "CounterMask": "1",
41656f57cffSIan Rogers        "EventCode": "0xA3",
41756f57cffSIan Rogers        "EventName": "CYCLE_ACTIVITY.CYCLES_L2_PENDING",
41856f57cffSIan Rogers        "PublicDescription": "Counts number of cycles the CPU has at least one pending  demand* load request missing the L2 cache.",
41956f57cffSIan Rogers        "SampleAfterValue": "2000003",
42056f57cffSIan Rogers        "UMask": "0x1"
42156f57cffSIan Rogers    },
42256f57cffSIan Rogers    {
42356f57cffSIan Rogers        "BriefDescription": "Cycles while memory subsystem has an outstanding load.",
42456f57cffSIan Rogers        "CounterMask": "2",
42556f57cffSIan Rogers        "EventCode": "0xA3",
42656f57cffSIan Rogers        "EventName": "CYCLE_ACTIVITY.CYCLES_LDM_PENDING",
42756f57cffSIan 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).",
42856f57cffSIan Rogers        "SampleAfterValue": "2000003",
42956f57cffSIan Rogers        "UMask": "0x2"
43056f57cffSIan Rogers    },
43156f57cffSIan Rogers    {
43256f57cffSIan Rogers        "BriefDescription": "Cycles while memory subsystem has an outstanding load.",
43356f57cffSIan Rogers        "CounterMask": "2",
43456f57cffSIan Rogers        "EventCode": "0xA3",
43556f57cffSIan Rogers        "EventName": "CYCLE_ACTIVITY.CYCLES_MEM_ANY",
43656f57cffSIan Rogers        "SampleAfterValue": "2000003",
43756f57cffSIan Rogers        "UMask": "0x2"
43856f57cffSIan Rogers    },
43956f57cffSIan Rogers    {
44056f57cffSIan Rogers        "BriefDescription": "This event increments by 1 for every cycle where there was no execute for this thread.",
44156f57cffSIan Rogers        "CounterMask": "4",
44256f57cffSIan Rogers        "EventCode": "0xA3",
44356f57cffSIan Rogers        "EventName": "CYCLE_ACTIVITY.CYCLES_NO_EXECUTE",
44456f57cffSIan Rogers        "PublicDescription": "Counts number of cycles nothing is executed on any execution port.",
44556f57cffSIan Rogers        "SampleAfterValue": "2000003",
44656f57cffSIan Rogers        "UMask": "0x4"
44756f57cffSIan Rogers    },
44856f57cffSIan Rogers    {
44956f57cffSIan Rogers        "BriefDescription": "Execution stalls while L1 cache miss demand load is outstanding.",
45056f57cffSIan Rogers        "CounterMask": "12",
45156f57cffSIan Rogers        "EventCode": "0xA3",
45256f57cffSIan Rogers        "EventName": "CYCLE_ACTIVITY.STALLS_L1D_MISS",
45356f57cffSIan Rogers        "SampleAfterValue": "2000003",
45456f57cffSIan Rogers        "UMask": "0xc"
45556f57cffSIan Rogers    },
45656f57cffSIan Rogers    {
45756f57cffSIan Rogers        "BriefDescription": "Execution stalls while L1 cache miss demand load is outstanding.",
45856f57cffSIan Rogers        "CounterMask": "12",
45956f57cffSIan Rogers        "EventCode": "0xA3",
46056f57cffSIan Rogers        "EventName": "CYCLE_ACTIVITY.STALLS_L1D_PENDING",
46156f57cffSIan 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.",
46256f57cffSIan Rogers        "SampleAfterValue": "2000003",
46356f57cffSIan Rogers        "UMask": "0xc"
46456f57cffSIan Rogers    },
46556f57cffSIan Rogers    {
46656f57cffSIan Rogers        "BriefDescription": "Execution stalls while L2 cache miss demand load is outstanding.",
46756f57cffSIan Rogers        "CounterMask": "5",
46856f57cffSIan Rogers        "EventCode": "0xA3",
46956f57cffSIan Rogers        "EventName": "CYCLE_ACTIVITY.STALLS_L2_MISS",
47056f57cffSIan Rogers        "SampleAfterValue": "2000003",
47156f57cffSIan Rogers        "UMask": "0x5"
47256f57cffSIan Rogers    },
47356f57cffSIan Rogers    {
47456f57cffSIan Rogers        "BriefDescription": "Execution stalls while L2 cache miss demand load is outstanding.",
47556f57cffSIan Rogers        "CounterMask": "5",
47656f57cffSIan Rogers        "EventCode": "0xA3",
47756f57cffSIan Rogers        "EventName": "CYCLE_ACTIVITY.STALLS_L2_PENDING",
47856f57cffSIan 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.",
47956f57cffSIan Rogers        "SampleAfterValue": "2000003",
48056f57cffSIan Rogers        "UMask": "0x5"
48156f57cffSIan Rogers    },
48256f57cffSIan Rogers    {
48356f57cffSIan Rogers        "BriefDescription": "Execution stalls while memory subsystem has an outstanding load.",
48456f57cffSIan Rogers        "CounterMask": "6",
48556f57cffSIan Rogers        "EventCode": "0xA3",
48656f57cffSIan Rogers        "EventName": "CYCLE_ACTIVITY.STALLS_LDM_PENDING",
48756f57cffSIan Rogers        "PublicDescription": "Counts number of cycles nothing is executed on any execution port, while there was at least one pending demand load request.",
48856f57cffSIan Rogers        "SampleAfterValue": "2000003",
48956f57cffSIan Rogers        "UMask": "0x6"
49056f57cffSIan Rogers    },
49156f57cffSIan Rogers    {
49256f57cffSIan Rogers        "BriefDescription": "Execution stalls while memory subsystem has an outstanding load.",
49356f57cffSIan Rogers        "CounterMask": "6",
49456f57cffSIan Rogers        "EventCode": "0xA3",
49556f57cffSIan Rogers        "EventName": "CYCLE_ACTIVITY.STALLS_MEM_ANY",
49656f57cffSIan Rogers        "SampleAfterValue": "2000003",
49756f57cffSIan Rogers        "UMask": "0x6"
49856f57cffSIan Rogers    },
49956f57cffSIan Rogers    {
50056f57cffSIan Rogers        "BriefDescription": "Total execution stalls.",
50156f57cffSIan Rogers        "CounterMask": "4",
50256f57cffSIan Rogers        "EventCode": "0xA3",
50356f57cffSIan Rogers        "EventName": "CYCLE_ACTIVITY.STALLS_TOTAL",
50456f57cffSIan Rogers        "SampleAfterValue": "2000003",
50556f57cffSIan Rogers        "UMask": "0x4"
50656f57cffSIan Rogers    },
50756f57cffSIan Rogers    {
50856f57cffSIan Rogers        "BriefDescription": "Stalls caused by changing prefix length of the instruction.",
50956f57cffSIan Rogers        "EventCode": "0x87",
51056f57cffSIan Rogers        "EventName": "ILD_STALL.LCP",
511*74a87b6aSIan 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.",
51256f57cffSIan Rogers        "SampleAfterValue": "2000003",
51356f57cffSIan Rogers        "UMask": "0x1"
51456f57cffSIan Rogers    },
51556f57cffSIan Rogers    {
51656f57cffSIan Rogers        "BriefDescription": "Instructions retired from execution.",
51756f57cffSIan Rogers        "EventName": "INST_RETIRED.ANY",
51856f57cffSIan 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.",
51956f57cffSIan Rogers        "SampleAfterValue": "2000003",
52056f57cffSIan Rogers        "UMask": "0x1"
52156f57cffSIan Rogers    },
52256f57cffSIan Rogers    {
52356f57cffSIan Rogers        "BriefDescription": "Number of instructions retired. General Counter   - architectural event",
52456f57cffSIan Rogers        "Errata": "BDM61",
52556f57cffSIan Rogers        "EventCode": "0xC0",
52656f57cffSIan Rogers        "EventName": "INST_RETIRED.ANY_P",
52756f57cffSIan Rogers        "PublicDescription": "This event counts the number of instructions (EOMs) retired. Counting covers macro-fused instructions individually (that is, increments by two).",
52856f57cffSIan Rogers        "SampleAfterValue": "2000003"
52956f57cffSIan Rogers    },
53056f57cffSIan Rogers    {
53156f57cffSIan Rogers        "BriefDescription": "Precise instruction retired event with HW to reduce effect of PEBS shadow in IP distribution",
53256f57cffSIan Rogers        "Errata": "BDM11, BDM55",
53356f57cffSIan Rogers        "EventCode": "0xC0",
53456f57cffSIan Rogers        "EventName": "INST_RETIRED.PREC_DIST",
53556f57cffSIan Rogers        "PEBS": "2",
53656f57cffSIan Rogers        "PublicDescription": "This is a precise version (that is, uses PEBS) of the event that counts instructions retired.",
53756f57cffSIan Rogers        "SampleAfterValue": "2000003",
53856f57cffSIan Rogers        "UMask": "0x1"
53956f57cffSIan Rogers    },
54056f57cffSIan Rogers    {
54156f57cffSIan Rogers        "BriefDescription": "FP operations  retired. X87 FP operations that have no exceptions:",
54256f57cffSIan Rogers        "EventCode": "0xC0",
54356f57cffSIan Rogers        "EventName": "INST_RETIRED.X87",
54456f57cffSIan 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.",
54556f57cffSIan Rogers        "SampleAfterValue": "2000003",
54656f57cffSIan Rogers        "UMask": "0x2"
54756f57cffSIan Rogers    },
54856f57cffSIan Rogers    {
54956f57cffSIan Rogers        "BriefDescription": "Cycles when Resource Allocation Table (RAT) external stall is sent to Instruction Decode Queue (IDQ) for the thread",
55056f57cffSIan Rogers        "EventCode": "0x0D",
55156f57cffSIan Rogers        "EventName": "INT_MISC.RAT_STALL_CYCLES",
55256f57cffSIan 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.",
55356f57cffSIan Rogers        "SampleAfterValue": "2000003",
55456f57cffSIan Rogers        "UMask": "0x8"
55556f57cffSIan Rogers    },
55656f57cffSIan Rogers    {
55756f57cffSIan Rogers        "BriefDescription": "Core cycles the allocator was stalled due to recovery from earlier clear event for this thread (e.g. misprediction or memory nuke)",
55856f57cffSIan Rogers        "CounterMask": "1",
55956f57cffSIan Rogers        "EventCode": "0x0D",
56056f57cffSIan Rogers        "EventName": "INT_MISC.RECOVERY_CYCLES",
56156f57cffSIan Rogers        "PublicDescription": "Cycles checkpoints in Resource Allocation Table (RAT) are recovering from JEClear or machine clear.",
56256f57cffSIan Rogers        "SampleAfterValue": "2000003",
56356f57cffSIan Rogers        "UMask": "0x3"
56456f57cffSIan Rogers    },
56556f57cffSIan Rogers    {
56656f57cffSIan Rogers        "AnyThread": "1",
56756f57cffSIan 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).",
56856f57cffSIan Rogers        "CounterMask": "1",
56956f57cffSIan Rogers        "EventCode": "0x0D",
57056f57cffSIan Rogers        "EventName": "INT_MISC.RECOVERY_CYCLES_ANY",
57156f57cffSIan Rogers        "SampleAfterValue": "2000003",
57256f57cffSIan Rogers        "UMask": "0x3"
57356f57cffSIan Rogers    },
57456f57cffSIan Rogers    {
57556f57cffSIan 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.",
57656f57cffSIan Rogers        "EventCode": "0x03",
57756f57cffSIan Rogers        "EventName": "LD_BLOCKS.NO_SR",
57856f57cffSIan Rogers        "SampleAfterValue": "100003",
57956f57cffSIan Rogers        "UMask": "0x8"
58056f57cffSIan Rogers    },
58156f57cffSIan Rogers    {
58256f57cffSIan Rogers        "BriefDescription": "Cases when loads get true Block-on-Store blocking code preventing store forwarding",
58356f57cffSIan Rogers        "EventCode": "0x03",
58456f57cffSIan Rogers        "EventName": "LD_BLOCKS.STORE_FORWARD",
58556f57cffSIan 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.",
58656f57cffSIan Rogers        "SampleAfterValue": "100003",
58756f57cffSIan Rogers        "UMask": "0x2"
58856f57cffSIan Rogers    },
58956f57cffSIan Rogers    {
59056f57cffSIan Rogers        "BriefDescription": "False dependencies in MOB due to partial compare",
59156f57cffSIan Rogers        "EventCode": "0x07",
59256f57cffSIan Rogers        "EventName": "LD_BLOCKS_PARTIAL.ADDRESS_ALIAS",
59356f57cffSIan 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.",
59456f57cffSIan Rogers        "SampleAfterValue": "100003",
59556f57cffSIan Rogers        "UMask": "0x1"
59656f57cffSIan Rogers    },
59756f57cffSIan Rogers    {
59856f57cffSIan Rogers        "BriefDescription": "Not software-prefetch load dispatches that hit FB allocated for hardware prefetch",
59956f57cffSIan Rogers        "EventCode": "0x4C",
60056f57cffSIan Rogers        "EventName": "LOAD_HIT_PRE.HW_PF",
60156f57cffSIan Rogers        "PublicDescription": "This event counts all not software-prefetch load dispatches that hit the fill buffer (FB) allocated for the hardware prefetch.",
60256f57cffSIan Rogers        "SampleAfterValue": "100003",
60356f57cffSIan Rogers        "UMask": "0x2"
60456f57cffSIan Rogers    },
60556f57cffSIan Rogers    {
60656f57cffSIan Rogers        "BriefDescription": "Not software-prefetch load dispatches that hit FB allocated for software prefetch",
60756f57cffSIan Rogers        "EventCode": "0x4c",
60856f57cffSIan Rogers        "EventName": "LOAD_HIT_PRE.SW_PF",
60956f57cffSIan 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.",
61056f57cffSIan Rogers        "SampleAfterValue": "100003",
61156f57cffSIan Rogers        "UMask": "0x1"
61256f57cffSIan Rogers    },
61356f57cffSIan Rogers    {
61456f57cffSIan Rogers        "BriefDescription": "Cycles 4 Uops delivered by the LSD, but didn't come from the decoder.",
61556f57cffSIan Rogers        "CounterMask": "4",
61656f57cffSIan Rogers        "EventCode": "0xA8",
61756f57cffSIan Rogers        "EventName": "LSD.CYCLES_4_UOPS",
61856f57cffSIan Rogers        "SampleAfterValue": "2000003",
61956f57cffSIan Rogers        "UMask": "0x1"
62056f57cffSIan Rogers    },
62156f57cffSIan Rogers    {
62256f57cffSIan Rogers        "BriefDescription": "Cycles Uops delivered by the LSD, but didn't come from the decoder.",
62356f57cffSIan Rogers        "CounterMask": "1",
62456f57cffSIan Rogers        "EventCode": "0xA8",
62556f57cffSIan Rogers        "EventName": "LSD.CYCLES_ACTIVE",
62656f57cffSIan Rogers        "SampleAfterValue": "2000003",
62756f57cffSIan Rogers        "UMask": "0x1"
62856f57cffSIan Rogers    },
62956f57cffSIan Rogers    {
63056f57cffSIan Rogers        "BriefDescription": "Number of Uops delivered by the LSD.",
63156f57cffSIan Rogers        "EventCode": "0xA8",
63256f57cffSIan Rogers        "EventName": "LSD.UOPS",
63356f57cffSIan Rogers        "SampleAfterValue": "2000003",
63456f57cffSIan Rogers        "UMask": "0x1"
63556f57cffSIan Rogers    },
63656f57cffSIan Rogers    {
63756f57cffSIan Rogers        "BriefDescription": "Number of machine clears (nukes) of any type.",
63856f57cffSIan Rogers        "CounterMask": "1",
63956f57cffSIan Rogers        "EdgeDetect": "1",
64056f57cffSIan Rogers        "EventCode": "0xC3",
64156f57cffSIan Rogers        "EventName": "MACHINE_CLEARS.COUNT",
64256f57cffSIan Rogers        "SampleAfterValue": "100003",
64356f57cffSIan Rogers        "UMask": "0x1"
64456f57cffSIan Rogers    },
64556f57cffSIan Rogers    {
64656f57cffSIan Rogers        "BriefDescription": "Cycles there was a Nuke. Account for both thread-specific and All Thread Nukes.",
64756f57cffSIan Rogers        "EventCode": "0xC3",
64856f57cffSIan Rogers        "EventName": "MACHINE_CLEARS.CYCLES",
64956f57cffSIan Rogers        "PublicDescription": "This event counts both thread-specific (TS) and all-thread (AT) nukes.",
65056f57cffSIan Rogers        "SampleAfterValue": "2000003",
65156f57cffSIan Rogers        "UMask": "0x1"
65256f57cffSIan Rogers    },
65356f57cffSIan Rogers    {
65456f57cffSIan 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.",
65556f57cffSIan Rogers        "EventCode": "0xC3",
65656f57cffSIan Rogers        "EventName": "MACHINE_CLEARS.MASKMOV",
65756f57cffSIan 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.",
65856f57cffSIan Rogers        "SampleAfterValue": "100003",
65956f57cffSIan Rogers        "UMask": "0x20"
66056f57cffSIan Rogers    },
66156f57cffSIan Rogers    {
66256f57cffSIan Rogers        "BriefDescription": "Self-modifying code (SMC) detected.",
66356f57cffSIan Rogers        "EventCode": "0xC3",
66456f57cffSIan Rogers        "EventName": "MACHINE_CLEARS.SMC",
66556f57cffSIan Rogers        "PublicDescription": "This event counts self-modifying code (SMC) detected, which causes a machine clear.",
66656f57cffSIan Rogers        "SampleAfterValue": "100003",
66756f57cffSIan Rogers        "UMask": "0x4"
66856f57cffSIan Rogers    },
66956f57cffSIan Rogers    {
67056f57cffSIan Rogers        "BriefDescription": "Number of integer Move Elimination candidate uops that were eliminated.",
67156f57cffSIan Rogers        "EventCode": "0x58",
67256f57cffSIan Rogers        "EventName": "MOVE_ELIMINATION.INT_ELIMINATED",
67356f57cffSIan Rogers        "SampleAfterValue": "1000003",
67456f57cffSIan Rogers        "UMask": "0x1"
67556f57cffSIan Rogers    },
67656f57cffSIan Rogers    {
67756f57cffSIan Rogers        "BriefDescription": "Number of integer Move Elimination candidate uops that were not eliminated.",
67856f57cffSIan Rogers        "EventCode": "0x58",
67956f57cffSIan Rogers        "EventName": "MOVE_ELIMINATION.INT_NOT_ELIMINATED",
68056f57cffSIan Rogers        "SampleAfterValue": "1000003",
68156f57cffSIan Rogers        "UMask": "0x4"
68256f57cffSIan Rogers    },
68356f57cffSIan Rogers    {
68456f57cffSIan Rogers        "BriefDescription": "Number of times any microcode assist is invoked by HW upon uop writeback.",
68556f57cffSIan Rogers        "EventCode": "0xC1",
68656f57cffSIan Rogers        "EventName": "OTHER_ASSISTS.ANY_WB_ASSIST",
68756f57cffSIan Rogers        "SampleAfterValue": "100003",
68856f57cffSIan Rogers        "UMask": "0x40"
68956f57cffSIan Rogers    },
69056f57cffSIan Rogers    {
69156f57cffSIan Rogers        "BriefDescription": "Resource-related stall cycles",
69256f57cffSIan Rogers        "EventCode": "0xa2",
69356f57cffSIan Rogers        "EventName": "RESOURCE_STALLS.ANY",
69456f57cffSIan Rogers        "PublicDescription": "This event counts resource-related stall cycles.",
69556f57cffSIan Rogers        "SampleAfterValue": "2000003",
69656f57cffSIan Rogers        "UMask": "0x1"
69756f57cffSIan Rogers    },
69856f57cffSIan Rogers    {
69956f57cffSIan Rogers        "BriefDescription": "Cycles stalled due to re-order buffer full.",
70056f57cffSIan Rogers        "EventCode": "0xA2",
70156f57cffSIan Rogers        "EventName": "RESOURCE_STALLS.ROB",
70256f57cffSIan Rogers        "PublicDescription": "This event counts ROB full stall cycles. This counts cycles that the pipeline backend blocked uop delivery from the front end.",
70356f57cffSIan Rogers        "SampleAfterValue": "2000003",
70456f57cffSIan Rogers        "UMask": "0x10"
70556f57cffSIan Rogers    },
70656f57cffSIan Rogers    {
70756f57cffSIan Rogers        "BriefDescription": "Cycles stalled due to no eligible RS entry available.",
70856f57cffSIan Rogers        "EventCode": "0xA2",
70956f57cffSIan Rogers        "EventName": "RESOURCE_STALLS.RS",
71056f57cffSIan 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.",
71156f57cffSIan Rogers        "SampleAfterValue": "2000003",
71256f57cffSIan Rogers        "UMask": "0x4"
71356f57cffSIan Rogers    },
71456f57cffSIan Rogers    {
71556f57cffSIan Rogers        "BriefDescription": "Cycles stalled due to no store buffers available. (not including draining form sync).",
71656f57cffSIan Rogers        "EventCode": "0xA2",
71756f57cffSIan Rogers        "EventName": "RESOURCE_STALLS.SB",
71856f57cffSIan 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.",
71956f57cffSIan Rogers        "SampleAfterValue": "2000003",
72056f57cffSIan Rogers        "UMask": "0x8"
72156f57cffSIan Rogers    },
72256f57cffSIan Rogers    {
72397d00f2dSAndi Kleen        "BriefDescription": "Count cases of saving new LBR",
72456f57cffSIan Rogers        "EventCode": "0xCC",
72597d00f2dSAndi Kleen        "EventName": "ROB_MISC_EVENTS.LBR_INSERTS",
72697d00f2dSAndi Kleen        "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.",
72797d00f2dSAndi Kleen        "SampleAfterValue": "2000003",
72856f57cffSIan Rogers        "UMask": "0x20"
72997d00f2dSAndi Kleen    },
73097d00f2dSAndi Kleen    {
73156f57cffSIan Rogers        "BriefDescription": "Cycles when Reservation Station (RS) is empty for the thread",
73256f57cffSIan Rogers        "EventCode": "0x5E",
73356f57cffSIan Rogers        "EventName": "RS_EVENTS.EMPTY_CYCLES",
73456f57cffSIan 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.",
73556f57cffSIan Rogers        "SampleAfterValue": "2000003",
73656f57cffSIan Rogers        "UMask": "0x1"
73756f57cffSIan Rogers    },
73856f57cffSIan Rogers    {
73956f57cffSIan Rogers        "BriefDescription": "Counts end of periods where the Reservation Station (RS) was empty. Could be useful to precisely locate Frontend Latency Bound issues.",
74056f57cffSIan Rogers        "CounterMask": "1",
74156f57cffSIan Rogers        "EdgeDetect": "1",
74256f57cffSIan Rogers        "EventCode": "0x5E",
74356f57cffSIan Rogers        "EventName": "RS_EVENTS.EMPTY_END",
74456f57cffSIan Rogers        "Invert": "1",
74556f57cffSIan Rogers        "SampleAfterValue": "200003",
74656f57cffSIan Rogers        "UMask": "0x1"
74756f57cffSIan Rogers    },
74856f57cffSIan Rogers    {
74956f57cffSIan Rogers        "BriefDescription": "Cycles per thread when uops are executed in port 0",
75056f57cffSIan Rogers        "EventCode": "0xA1",
75156f57cffSIan Rogers        "EventName": "UOPS_DISPATCHED_PORT.PORT_0",
75256f57cffSIan Rogers        "PublicDescription": "This event counts, on the per-thread basis, cycles during which uops are dispatched from the Reservation Station (RS) to port 0.",
75356f57cffSIan Rogers        "SampleAfterValue": "2000003",
75456f57cffSIan Rogers        "UMask": "0x1"
75556f57cffSIan Rogers    },
75656f57cffSIan Rogers    {
75756f57cffSIan Rogers        "BriefDescription": "Cycles per thread when uops are executed in port 1",
75856f57cffSIan Rogers        "EventCode": "0xA1",
75956f57cffSIan Rogers        "EventName": "UOPS_DISPATCHED_PORT.PORT_1",
76056f57cffSIan Rogers        "PublicDescription": "This event counts, on the per-thread basis, cycles during which uops are dispatched from the Reservation Station (RS) to port 1.",
76156f57cffSIan Rogers        "SampleAfterValue": "2000003",
76256f57cffSIan Rogers        "UMask": "0x2"
76356f57cffSIan Rogers    },
76456f57cffSIan Rogers    {
76556f57cffSIan Rogers        "BriefDescription": "Cycles per thread when uops are executed in port 2",
76656f57cffSIan Rogers        "EventCode": "0xA1",
76756f57cffSIan Rogers        "EventName": "UOPS_DISPATCHED_PORT.PORT_2",
76856f57cffSIan Rogers        "PublicDescription": "This event counts, on the per-thread basis, cycles during which uops are dispatched from the Reservation Station (RS) to port 2.",
76956f57cffSIan Rogers        "SampleAfterValue": "2000003",
77056f57cffSIan Rogers        "UMask": "0x4"
77156f57cffSIan Rogers    },
77256f57cffSIan Rogers    {
77356f57cffSIan Rogers        "BriefDescription": "Cycles per thread when uops are executed in port 3",
77456f57cffSIan Rogers        "EventCode": "0xA1",
77556f57cffSIan Rogers        "EventName": "UOPS_DISPATCHED_PORT.PORT_3",
77656f57cffSIan Rogers        "PublicDescription": "This event counts, on the per-thread basis, cycles during which uops are dispatched from the Reservation Station (RS) to port 3.",
77756f57cffSIan Rogers        "SampleAfterValue": "2000003",
77856f57cffSIan Rogers        "UMask": "0x8"
77956f57cffSIan Rogers    },
78056f57cffSIan Rogers    {
78156f57cffSIan Rogers        "BriefDescription": "Cycles per thread when uops are executed in port 4",
78256f57cffSIan Rogers        "EventCode": "0xA1",
78356f57cffSIan Rogers        "EventName": "UOPS_DISPATCHED_PORT.PORT_4",
78456f57cffSIan Rogers        "PublicDescription": "This event counts, on the per-thread basis, cycles during which uops are dispatched from the Reservation Station (RS) to port 4.",
78556f57cffSIan Rogers        "SampleAfterValue": "2000003",
78656f57cffSIan Rogers        "UMask": "0x10"
78756f57cffSIan Rogers    },
78856f57cffSIan Rogers    {
78956f57cffSIan Rogers        "BriefDescription": "Cycles per thread when uops are executed in port 5",
79056f57cffSIan Rogers        "EventCode": "0xA1",
79156f57cffSIan Rogers        "EventName": "UOPS_DISPATCHED_PORT.PORT_5",
79256f57cffSIan Rogers        "PublicDescription": "This event counts, on the per-thread basis, cycles during which uops are dispatched from the Reservation Station (RS) to port 5.",
79356f57cffSIan Rogers        "SampleAfterValue": "2000003",
79456f57cffSIan Rogers        "UMask": "0x20"
79556f57cffSIan Rogers    },
79656f57cffSIan Rogers    {
79756f57cffSIan Rogers        "BriefDescription": "Cycles per thread when uops are executed in port 6",
79856f57cffSIan Rogers        "EventCode": "0xA1",
79956f57cffSIan Rogers        "EventName": "UOPS_DISPATCHED_PORT.PORT_6",
80056f57cffSIan Rogers        "PublicDescription": "This event counts, on the per-thread basis, cycles during which uops are dispatched from the Reservation Station (RS) to port 6.",
80156f57cffSIan Rogers        "SampleAfterValue": "2000003",
80256f57cffSIan Rogers        "UMask": "0x40"
80356f57cffSIan Rogers    },
80456f57cffSIan Rogers    {
80556f57cffSIan Rogers        "BriefDescription": "Cycles per thread when uops are executed in port 7",
80656f57cffSIan Rogers        "EventCode": "0xA1",
80756f57cffSIan Rogers        "EventName": "UOPS_DISPATCHED_PORT.PORT_7",
80856f57cffSIan Rogers        "PublicDescription": "This event counts, on the per-thread basis, cycles during which uops are dispatched from the Reservation Station (RS) to port 7.",
80956f57cffSIan Rogers        "SampleAfterValue": "2000003",
81056f57cffSIan Rogers        "UMask": "0x80"
81156f57cffSIan Rogers    },
81256f57cffSIan Rogers    {
81356f57cffSIan Rogers        "BriefDescription": "Number of uops executed on the core.",
81456f57cffSIan Rogers        "EventCode": "0xB1",
81556f57cffSIan Rogers        "EventName": "UOPS_EXECUTED.CORE",
81656f57cffSIan Rogers        "PublicDescription": "Number of uops executed from any thread.",
81756f57cffSIan Rogers        "SampleAfterValue": "2000003",
81856f57cffSIan Rogers        "UMask": "0x2"
81956f57cffSIan Rogers    },
82056f57cffSIan Rogers    {
82156f57cffSIan Rogers        "BriefDescription": "Cycles at least 1 micro-op is executed from any thread on physical core.",
82256f57cffSIan Rogers        "CounterMask": "1",
82356f57cffSIan Rogers        "EventCode": "0xb1",
82456f57cffSIan Rogers        "EventName": "UOPS_EXECUTED.CORE_CYCLES_GE_1",
82556f57cffSIan Rogers        "SampleAfterValue": "2000003",
82656f57cffSIan Rogers        "UMask": "0x2"
82756f57cffSIan Rogers    },
82856f57cffSIan Rogers    {
82956f57cffSIan Rogers        "BriefDescription": "Cycles at least 2 micro-op is executed from any thread on physical core.",
83056f57cffSIan Rogers        "CounterMask": "2",
83156f57cffSIan Rogers        "EventCode": "0xb1",
83256f57cffSIan Rogers        "EventName": "UOPS_EXECUTED.CORE_CYCLES_GE_2",
83356f57cffSIan Rogers        "SampleAfterValue": "2000003",
83456f57cffSIan Rogers        "UMask": "0x2"
83556f57cffSIan Rogers    },
83656f57cffSIan Rogers    {
83756f57cffSIan Rogers        "BriefDescription": "Cycles at least 3 micro-op is executed from any thread on physical core.",
83856f57cffSIan Rogers        "CounterMask": "3",
83956f57cffSIan Rogers        "EventCode": "0xb1",
84056f57cffSIan Rogers        "EventName": "UOPS_EXECUTED.CORE_CYCLES_GE_3",
84156f57cffSIan Rogers        "SampleAfterValue": "2000003",
84256f57cffSIan Rogers        "UMask": "0x2"
84356f57cffSIan Rogers    },
84456f57cffSIan Rogers    {
84556f57cffSIan Rogers        "BriefDescription": "Cycles at least 4 micro-op is executed from any thread on physical core.",
84656f57cffSIan Rogers        "CounterMask": "4",
84756f57cffSIan Rogers        "EventCode": "0xb1",
84856f57cffSIan Rogers        "EventName": "UOPS_EXECUTED.CORE_CYCLES_GE_4",
84956f57cffSIan Rogers        "SampleAfterValue": "2000003",
85056f57cffSIan Rogers        "UMask": "0x2"
85156f57cffSIan Rogers    },
85256f57cffSIan Rogers    {
85356f57cffSIan Rogers        "BriefDescription": "Cycles with no micro-ops executed from any thread on physical core.",
85456f57cffSIan Rogers        "EventCode": "0xb1",
85556f57cffSIan Rogers        "EventName": "UOPS_EXECUTED.CORE_CYCLES_NONE",
85656f57cffSIan Rogers        "Invert": "1",
85756f57cffSIan Rogers        "SampleAfterValue": "2000003",
85856f57cffSIan Rogers        "UMask": "0x2"
85956f57cffSIan Rogers    },
86056f57cffSIan Rogers    {
86156f57cffSIan Rogers        "BriefDescription": "Cycles where at least 1 uop was executed per-thread.",
86256f57cffSIan Rogers        "CounterMask": "1",
86356f57cffSIan Rogers        "EventCode": "0xB1",
86456f57cffSIan Rogers        "EventName": "UOPS_EXECUTED.CYCLES_GE_1_UOP_EXEC",
86556f57cffSIan Rogers        "SampleAfterValue": "2000003",
86656f57cffSIan Rogers        "UMask": "0x1"
86756f57cffSIan Rogers    },
86856f57cffSIan Rogers    {
86956f57cffSIan Rogers        "BriefDescription": "Cycles where at least 2 uops were executed per-thread.",
87056f57cffSIan Rogers        "CounterMask": "2",
87156f57cffSIan Rogers        "EventCode": "0xB1",
87256f57cffSIan Rogers        "EventName": "UOPS_EXECUTED.CYCLES_GE_2_UOPS_EXEC",
87356f57cffSIan Rogers        "SampleAfterValue": "2000003",
87456f57cffSIan Rogers        "UMask": "0x1"
87556f57cffSIan Rogers    },
87656f57cffSIan Rogers    {
87756f57cffSIan Rogers        "BriefDescription": "Cycles where at least 3 uops were executed per-thread.",
87856f57cffSIan Rogers        "CounterMask": "3",
87956f57cffSIan Rogers        "EventCode": "0xB1",
88056f57cffSIan Rogers        "EventName": "UOPS_EXECUTED.CYCLES_GE_3_UOPS_EXEC",
88156f57cffSIan Rogers        "SampleAfterValue": "2000003",
88256f57cffSIan Rogers        "UMask": "0x1"
88356f57cffSIan Rogers    },
88456f57cffSIan Rogers    {
88556f57cffSIan Rogers        "BriefDescription": "Cycles where at least 4 uops were executed per-thread.",
88656f57cffSIan Rogers        "CounterMask": "4",
88756f57cffSIan Rogers        "EventCode": "0xB1",
88856f57cffSIan Rogers        "EventName": "UOPS_EXECUTED.CYCLES_GE_4_UOPS_EXEC",
88956f57cffSIan Rogers        "SampleAfterValue": "2000003",
89056f57cffSIan Rogers        "UMask": "0x1"
89156f57cffSIan Rogers    },
89256f57cffSIan Rogers    {
89356f57cffSIan Rogers        "BriefDescription": "Counts number of cycles no uops were dispatched to be executed on this thread.",
89456f57cffSIan Rogers        "CounterMask": "1",
89556f57cffSIan Rogers        "EventCode": "0xB1",
89656f57cffSIan Rogers        "EventName": "UOPS_EXECUTED.STALL_CYCLES",
89756f57cffSIan Rogers        "Invert": "1",
89856f57cffSIan Rogers        "PublicDescription": "This event counts cycles during which no uops were dispatched from the Reservation Station (RS) per thread.",
89956f57cffSIan Rogers        "SampleAfterValue": "2000003",
90056f57cffSIan Rogers        "UMask": "0x1"
90156f57cffSIan Rogers    },
90256f57cffSIan Rogers    {
90356f57cffSIan Rogers        "BriefDescription": "Counts the number of uops to be executed per-thread each cycle.",
90456f57cffSIan Rogers        "EventCode": "0xB1",
90556f57cffSIan Rogers        "EventName": "UOPS_EXECUTED.THREAD",
90656f57cffSIan Rogers        "PublicDescription": "Number of uops to be executed per-thread each cycle.",
90756f57cffSIan Rogers        "SampleAfterValue": "2000003",
90856f57cffSIan Rogers        "UMask": "0x1"
90956f57cffSIan Rogers    },
91056f57cffSIan Rogers    {
91156f57cffSIan Rogers        "BriefDescription": "Cycles per thread when uops are executed in port 0",
91256f57cffSIan Rogers        "EventCode": "0xA1",
91356f57cffSIan Rogers        "EventName": "UOPS_EXECUTED_PORT.PORT_0",
91456f57cffSIan Rogers        "PublicDescription": "This event counts, on the per-thread basis, cycles during which uops are dispatched from the Reservation Station (RS) to port 0.",
91556f57cffSIan Rogers        "SampleAfterValue": "2000003",
91656f57cffSIan Rogers        "UMask": "0x1"
91756f57cffSIan Rogers    },
91856f57cffSIan Rogers    {
91956f57cffSIan Rogers        "AnyThread": "1",
920*74a87b6aSIan Rogers        "BriefDescription": "Cycles per core when uops are executed in port 0.",
92156f57cffSIan Rogers        "EventCode": "0xA1",
92256f57cffSIan Rogers        "EventName": "UOPS_EXECUTED_PORT.PORT_0_CORE",
92356f57cffSIan Rogers        "SampleAfterValue": "2000003",
92456f57cffSIan Rogers        "UMask": "0x1"
92556f57cffSIan Rogers    },
92656f57cffSIan Rogers    {
92756f57cffSIan Rogers        "BriefDescription": "Cycles per thread when uops are executed in port 1",
92856f57cffSIan Rogers        "EventCode": "0xA1",
92956f57cffSIan Rogers        "EventName": "UOPS_EXECUTED_PORT.PORT_1",
93056f57cffSIan Rogers        "PublicDescription": "This event counts, on the per-thread basis, cycles during which uops are dispatched from the Reservation Station (RS) to port 1.",
93156f57cffSIan Rogers        "SampleAfterValue": "2000003",
93256f57cffSIan Rogers        "UMask": "0x2"
93356f57cffSIan Rogers    },
93456f57cffSIan Rogers    {
93556f57cffSIan Rogers        "AnyThread": "1",
936*74a87b6aSIan Rogers        "BriefDescription": "Cycles per core when uops are executed in port 1.",
93756f57cffSIan Rogers        "EventCode": "0xA1",
93856f57cffSIan Rogers        "EventName": "UOPS_EXECUTED_PORT.PORT_1_CORE",
93956f57cffSIan Rogers        "SampleAfterValue": "2000003",
94056f57cffSIan Rogers        "UMask": "0x2"
94156f57cffSIan Rogers    },
94256f57cffSIan Rogers    {
94356f57cffSIan Rogers        "BriefDescription": "Cycles per thread when uops are executed in port 2",
94456f57cffSIan Rogers        "EventCode": "0xA1",
94556f57cffSIan Rogers        "EventName": "UOPS_EXECUTED_PORT.PORT_2",
94656f57cffSIan Rogers        "PublicDescription": "This event counts, on the per-thread basis, cycles during which uops are dispatched from the Reservation Station (RS) to port 2.",
94756f57cffSIan Rogers        "SampleAfterValue": "2000003",
94856f57cffSIan Rogers        "UMask": "0x4"
94956f57cffSIan Rogers    },
95056f57cffSIan Rogers    {
95156f57cffSIan Rogers        "AnyThread": "1",
95256f57cffSIan Rogers        "BriefDescription": "Cycles per core when uops are dispatched to port 2.",
95356f57cffSIan Rogers        "EventCode": "0xA1",
95456f57cffSIan Rogers        "EventName": "UOPS_EXECUTED_PORT.PORT_2_CORE",
95556f57cffSIan Rogers        "SampleAfterValue": "2000003",
95656f57cffSIan Rogers        "UMask": "0x4"
95756f57cffSIan Rogers    },
95856f57cffSIan Rogers    {
95956f57cffSIan Rogers        "BriefDescription": "Cycles per thread when uops are executed in port 3",
96056f57cffSIan Rogers        "EventCode": "0xA1",
96156f57cffSIan Rogers        "EventName": "UOPS_EXECUTED_PORT.PORT_3",
96256f57cffSIan Rogers        "PublicDescription": "This event counts, on the per-thread basis, cycles during which uops are dispatched from the Reservation Station (RS) to port 3.",
96356f57cffSIan Rogers        "SampleAfterValue": "2000003",
96456f57cffSIan Rogers        "UMask": "0x8"
96556f57cffSIan Rogers    },
96656f57cffSIan Rogers    {
96756f57cffSIan Rogers        "AnyThread": "1",
96856f57cffSIan Rogers        "BriefDescription": "Cycles per core when uops are dispatched to port 3.",
96956f57cffSIan Rogers        "EventCode": "0xA1",
97056f57cffSIan Rogers        "EventName": "UOPS_EXECUTED_PORT.PORT_3_CORE",
97156f57cffSIan Rogers        "SampleAfterValue": "2000003",
97256f57cffSIan Rogers        "UMask": "0x8"
97356f57cffSIan Rogers    },
97456f57cffSIan Rogers    {
97556f57cffSIan Rogers        "BriefDescription": "Cycles per thread when uops are executed in port 4",
97656f57cffSIan Rogers        "EventCode": "0xA1",
97756f57cffSIan Rogers        "EventName": "UOPS_EXECUTED_PORT.PORT_4",
97856f57cffSIan Rogers        "PublicDescription": "This event counts, on the per-thread basis, cycles during which uops are dispatched from the Reservation Station (RS) to port 4.",
97956f57cffSIan Rogers        "SampleAfterValue": "2000003",
98056f57cffSIan Rogers        "UMask": "0x10"
98156f57cffSIan Rogers    },
98256f57cffSIan Rogers    {
98356f57cffSIan Rogers        "AnyThread": "1",
984*74a87b6aSIan Rogers        "BriefDescription": "Cycles per core when uops are executed in port 4.",
98556f57cffSIan Rogers        "EventCode": "0xA1",
98656f57cffSIan Rogers        "EventName": "UOPS_EXECUTED_PORT.PORT_4_CORE",
98756f57cffSIan Rogers        "SampleAfterValue": "2000003",
98856f57cffSIan Rogers        "UMask": "0x10"
98956f57cffSIan Rogers    },
99056f57cffSIan Rogers    {
99156f57cffSIan Rogers        "BriefDescription": "Cycles per thread when uops are executed in port 5",
99256f57cffSIan Rogers        "EventCode": "0xA1",
99356f57cffSIan Rogers        "EventName": "UOPS_EXECUTED_PORT.PORT_5",
99456f57cffSIan Rogers        "PublicDescription": "This event counts, on the per-thread basis, cycles during which uops are dispatched from the Reservation Station (RS) to port 5.",
99556f57cffSIan Rogers        "SampleAfterValue": "2000003",
99656f57cffSIan Rogers        "UMask": "0x20"
99756f57cffSIan Rogers    },
99856f57cffSIan Rogers    {
99956f57cffSIan Rogers        "AnyThread": "1",
1000*74a87b6aSIan Rogers        "BriefDescription": "Cycles per core when uops are executed in port 5.",
100156f57cffSIan Rogers        "EventCode": "0xA1",
100256f57cffSIan Rogers        "EventName": "UOPS_EXECUTED_PORT.PORT_5_CORE",
100356f57cffSIan Rogers        "SampleAfterValue": "2000003",
100456f57cffSIan Rogers        "UMask": "0x20"
100556f57cffSIan Rogers    },
100656f57cffSIan Rogers    {
100756f57cffSIan Rogers        "BriefDescription": "Cycles per thread when uops are executed in port 6",
100856f57cffSIan Rogers        "EventCode": "0xA1",
100956f57cffSIan Rogers        "EventName": "UOPS_EXECUTED_PORT.PORT_6",
101056f57cffSIan Rogers        "PublicDescription": "This event counts, on the per-thread basis, cycles during which uops are dispatched from the Reservation Station (RS) to port 6.",
101156f57cffSIan Rogers        "SampleAfterValue": "2000003",
101256f57cffSIan Rogers        "UMask": "0x40"
101356f57cffSIan Rogers    },
101456f57cffSIan Rogers    {
101556f57cffSIan Rogers        "AnyThread": "1",
1016*74a87b6aSIan Rogers        "BriefDescription": "Cycles per core when uops are executed in port 6.",
101756f57cffSIan Rogers        "EventCode": "0xA1",
101856f57cffSIan Rogers        "EventName": "UOPS_EXECUTED_PORT.PORT_6_CORE",
101956f57cffSIan Rogers        "SampleAfterValue": "2000003",
102056f57cffSIan Rogers        "UMask": "0x40"
102156f57cffSIan Rogers    },
102256f57cffSIan Rogers    {
102356f57cffSIan Rogers        "BriefDescription": "Cycles per thread when uops are executed in port 7",
102456f57cffSIan Rogers        "EventCode": "0xA1",
102556f57cffSIan Rogers        "EventName": "UOPS_EXECUTED_PORT.PORT_7",
102656f57cffSIan Rogers        "PublicDescription": "This event counts, on the per-thread basis, cycles during which uops are dispatched from the Reservation Station (RS) to port 7.",
102756f57cffSIan Rogers        "SampleAfterValue": "2000003",
102856f57cffSIan Rogers        "UMask": "0x80"
102956f57cffSIan Rogers    },
103056f57cffSIan Rogers    {
103156f57cffSIan Rogers        "AnyThread": "1",
103256f57cffSIan Rogers        "BriefDescription": "Cycles per core when uops are dispatched to port 7.",
103356f57cffSIan Rogers        "EventCode": "0xA1",
103456f57cffSIan Rogers        "EventName": "UOPS_EXECUTED_PORT.PORT_7_CORE",
103556f57cffSIan Rogers        "SampleAfterValue": "2000003",
103656f57cffSIan Rogers        "UMask": "0x80"
103756f57cffSIan Rogers    },
103856f57cffSIan Rogers    {
103956f57cffSIan Rogers        "BriefDescription": "Uops that Resource Allocation Table (RAT) issues to Reservation Station (RS)",
104056f57cffSIan Rogers        "EventCode": "0x0E",
104156f57cffSIan Rogers        "EventName": "UOPS_ISSUED.ANY",
104256f57cffSIan Rogers        "PublicDescription": "This event counts the number of Uops issued by the Resource Allocation Table (RAT) to the reservation station (RS).",
104356f57cffSIan Rogers        "SampleAfterValue": "2000003",
104456f57cffSIan Rogers        "UMask": "0x1"
104556f57cffSIan Rogers    },
104656f57cffSIan Rogers    {
104756f57cffSIan Rogers        "BriefDescription": "Number of flags-merge uops being allocated. Such uops considered perf sensitive; added by GSR u-arch.",
104856f57cffSIan Rogers        "EventCode": "0x0E",
104956f57cffSIan Rogers        "EventName": "UOPS_ISSUED.FLAGS_MERGE",
105056f57cffSIan Rogers        "PublicDescription": "Number of flags-merge uops being allocated. Such uops considered perf sensitive\n added by GSR u-arch.",
105156f57cffSIan Rogers        "SampleAfterValue": "2000003",
105256f57cffSIan Rogers        "UMask": "0x10"
105356f57cffSIan Rogers    },
105456f57cffSIan Rogers    {
105556f57cffSIan Rogers        "BriefDescription": "Number of Multiply packed/scalar single precision uops allocated.",
105656f57cffSIan Rogers        "EventCode": "0x0E",
105756f57cffSIan Rogers        "EventName": "UOPS_ISSUED.SINGLE_MUL",
105856f57cffSIan Rogers        "SampleAfterValue": "2000003",
105956f57cffSIan Rogers        "UMask": "0x40"
106056f57cffSIan Rogers    },
106156f57cffSIan Rogers    {
106256f57cffSIan 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.",
106356f57cffSIan Rogers        "EventCode": "0x0E",
106456f57cffSIan Rogers        "EventName": "UOPS_ISSUED.SLOW_LEA",
106556f57cffSIan Rogers        "SampleAfterValue": "2000003",
106656f57cffSIan Rogers        "UMask": "0x20"
106756f57cffSIan Rogers    },
106856f57cffSIan Rogers    {
106956f57cffSIan Rogers        "BriefDescription": "Cycles when Resource Allocation Table (RAT) does not issue Uops to Reservation Station (RS) for the thread",
107056f57cffSIan Rogers        "CounterMask": "1",
107156f57cffSIan Rogers        "EventCode": "0x0E",
107256f57cffSIan Rogers        "EventName": "UOPS_ISSUED.STALL_CYCLES",
107356f57cffSIan Rogers        "Invert": "1",
107456f57cffSIan 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.",
107556f57cffSIan Rogers        "SampleAfterValue": "2000003",
107656f57cffSIan Rogers        "UMask": "0x1"
107756f57cffSIan Rogers    },
107856f57cffSIan Rogers    {
107956f57cffSIan Rogers        "BriefDescription": "Actually retired uops.",
108056f57cffSIan Rogers        "EventCode": "0xC2",
108156f57cffSIan Rogers        "EventName": "UOPS_RETIRED.ALL",
108256f57cffSIan Rogers        "PEBS": "1",
108356f57cffSIan 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.",
108456f57cffSIan Rogers        "SampleAfterValue": "2000003",
108556f57cffSIan Rogers        "UMask": "0x1"
108656f57cffSIan Rogers    },
108756f57cffSIan Rogers    {
108856f57cffSIan Rogers        "BriefDescription": "Retirement slots used.",
108956f57cffSIan Rogers        "EventCode": "0xC2",
109056f57cffSIan Rogers        "EventName": "UOPS_RETIRED.RETIRE_SLOTS",
109156f57cffSIan Rogers        "PEBS": "1",
109256f57cffSIan Rogers        "PublicDescription": "This event counts the number of retirement slots used.",
109356f57cffSIan Rogers        "SampleAfterValue": "2000003",
109456f57cffSIan Rogers        "UMask": "0x2"
109556f57cffSIan Rogers    },
109656f57cffSIan Rogers    {
109756f57cffSIan Rogers        "BriefDescription": "Cycles without actually retired uops.",
109856f57cffSIan Rogers        "CounterMask": "1",
109956f57cffSIan Rogers        "EventCode": "0xC2",
110056f57cffSIan Rogers        "EventName": "UOPS_RETIRED.STALL_CYCLES",
110156f57cffSIan Rogers        "Invert": "1",
110256f57cffSIan Rogers        "PublicDescription": "This event counts cycles without actually retired uops.",
110356f57cffSIan Rogers        "SampleAfterValue": "2000003",
110456f57cffSIan Rogers        "UMask": "0x1"
110556f57cffSIan Rogers    },
110656f57cffSIan Rogers    {
110756f57cffSIan Rogers        "BriefDescription": "Cycles with less than 10 actually retired uops.",
110828738de9SZhengjun Xing        "CounterMask": "16",
110956f57cffSIan Rogers        "EventCode": "0xC2",
111056f57cffSIan Rogers        "EventName": "UOPS_RETIRED.TOTAL_CYCLES",
111156f57cffSIan Rogers        "Invert": "1",
111256f57cffSIan Rogers        "PublicDescription": "Number of cycles using always true condition (uops_ret < 16) applied to non PEBS uops retired event.",
111356f57cffSIan Rogers        "SampleAfterValue": "2000003",
111456f57cffSIan Rogers        "UMask": "0x1"
111519c0389bSAndi Kleen    }
111619c0389bSAndi Kleen]
1117