119c0389bSAndi Kleen[
219c0389bSAndi Kleen    {
319c0389bSAndi Kleen        "EventCode": "0x79",
419c0389bSAndi Kleen        "UMask": "0x2",
519c0389bSAndi Kleen        "BriefDescription": "Instruction Decode Queue (IDQ) empty cycles",
619c0389bSAndi Kleen        "Counter": "0,1,2,3",
719c0389bSAndi Kleen        "EventName": "IDQ.EMPTY",
819c0389bSAndi Kleen        "PublicDescription": "This counts the number of cycles that the instruction decoder queue is empty and can indicate that the application may be bound in the front end.  It does not determine whether there are uops being delivered to the Alloc stage since uops can be delivered by bypass skipping the Instruction Decode Queue (IDQ) when it is empty.",
919c0389bSAndi Kleen        "SampleAfterValue": "2000003",
1019c0389bSAndi Kleen        "CounterHTOff": "0,1,2,3"
1119c0389bSAndi Kleen    },
1219c0389bSAndi Kleen    {
1319c0389bSAndi Kleen        "EventCode": "0x79",
1419c0389bSAndi Kleen        "UMask": "0x4",
1519c0389bSAndi Kleen        "BriefDescription": "Uops delivered to Instruction Decode Queue (IDQ) from MITE path",
1619c0389bSAndi Kleen        "Counter": "0,1,2,3",
1719c0389bSAndi Kleen        "EventName": "IDQ.MITE_UOPS",
1897d00f2dSAndi Kleen        "PublicDescription": "This event counts the number of uops delivered to Instruction Decode Queue (IDQ) from the MITE path. Counting includes uops that may bypass the IDQ. This also means that uops are not being delivered from the Decode Stream Buffer (DSB).",
1919c0389bSAndi Kleen        "SampleAfterValue": "2000003",
2019c0389bSAndi Kleen        "CounterHTOff": "0,1,2,3,4,5,6,7"
2119c0389bSAndi Kleen    },
2219c0389bSAndi Kleen    {
2319c0389bSAndi Kleen        "EventCode": "0x79",
2419c0389bSAndi Kleen        "UMask": "0x4",
2519c0389bSAndi Kleen        "BriefDescription": "Cycles when uops are being delivered to Instruction Decode Queue (IDQ) from MITE path",
2619c0389bSAndi Kleen        "Counter": "0,1,2,3",
2719c0389bSAndi Kleen        "EventName": "IDQ.MITE_CYCLES",
2819c0389bSAndi Kleen        "CounterMask": "1",
2997d00f2dSAndi Kleen        "PublicDescription": "This event counts cycles during which uops are being delivered to Instruction Decode Queue (IDQ) from the MITE path. Counting includes uops that may bypass the IDQ.",
3097d00f2dSAndi Kleen        "SampleAfterValue": "2000003",
3197d00f2dSAndi Kleen        "CounterHTOff": "0,1,2,3,4,5,6,7"
3297d00f2dSAndi Kleen    },
3397d00f2dSAndi Kleen    {
3497d00f2dSAndi Kleen        "EventCode": "0x79",
3597d00f2dSAndi Kleen        "UMask": "0x8",
3697d00f2dSAndi Kleen        "BriefDescription": "Uops delivered to Instruction Decode Queue (IDQ) from the Decode Stream Buffer (DSB) path",
3797d00f2dSAndi Kleen        "Counter": "0,1,2,3",
3897d00f2dSAndi Kleen        "EventName": "IDQ.DSB_UOPS",
3997d00f2dSAndi Kleen        "PublicDescription": "This event counts the number of uops delivered to Instruction Decode Queue (IDQ) from the Decode Stream Buffer (DSB) path. Counting includes uops that may bypass the IDQ.",
4019c0389bSAndi Kleen        "SampleAfterValue": "2000003",
4119c0389bSAndi Kleen        "CounterHTOff": "0,1,2,3,4,5,6,7"
4219c0389bSAndi Kleen    },
4319c0389bSAndi Kleen    {
4419c0389bSAndi Kleen        "EventCode": "0x79",
4519c0389bSAndi Kleen        "UMask": "0x8",
4619c0389bSAndi Kleen        "BriefDescription": "Cycles when uops are being delivered to Instruction Decode Queue (IDQ) from Decode Stream Buffer (DSB) path",
4719c0389bSAndi Kleen        "Counter": "0,1,2,3",
4819c0389bSAndi Kleen        "EventName": "IDQ.DSB_CYCLES",
4919c0389bSAndi Kleen        "CounterMask": "1",
5097d00f2dSAndi Kleen        "PublicDescription": "This event counts cycles during which uops are being delivered to Instruction Decode Queue (IDQ) from the Decode Stream Buffer (DSB) path. Counting includes uops that may bypass the IDQ.",
5197d00f2dSAndi Kleen        "SampleAfterValue": "2000003",
5297d00f2dSAndi Kleen        "CounterHTOff": "0,1,2,3,4,5,6,7"
5397d00f2dSAndi Kleen    },
5497d00f2dSAndi Kleen    {
5597d00f2dSAndi Kleen        "EventCode": "0x79",
5697d00f2dSAndi Kleen        "UMask": "0x10",
5797d00f2dSAndi Kleen        "BriefDescription": "Uops initiated by Decode Stream Buffer (DSB) that are being delivered to Instruction Decode Queue (IDQ) while Microcode Sequenser (MS) is busy",
5897d00f2dSAndi Kleen        "Counter": "0,1,2,3",
5997d00f2dSAndi Kleen        "EventName": "IDQ.MS_DSB_UOPS",
6097d00f2dSAndi Kleen        "PublicDescription": "This event counts the number of uops initiated by Decode Stream Buffer (DSB) that are being delivered to Instruction Decode Queue (IDQ) while the Microcode Sequencer (MS) is busy. Counting includes uops that may bypass the IDQ.",
6119c0389bSAndi Kleen        "SampleAfterValue": "2000003",
6219c0389bSAndi Kleen        "CounterHTOff": "0,1,2,3,4,5,6,7"
6319c0389bSAndi Kleen    },
6419c0389bSAndi Kleen    {
6519c0389bSAndi Kleen        "EventCode": "0x79",
6619c0389bSAndi Kleen        "UMask": "0x10",
6719c0389bSAndi Kleen        "BriefDescription": "Cycles when uops initiated by Decode Stream Buffer (DSB) are being delivered to Instruction Decode Queue (IDQ) while Microcode Sequenser (MS) is busy",
6819c0389bSAndi Kleen        "Counter": "0,1,2,3",
6919c0389bSAndi Kleen        "EventName": "IDQ.MS_DSB_CYCLES",
7019c0389bSAndi Kleen        "CounterMask": "1",
7197d00f2dSAndi Kleen        "PublicDescription": "This event counts cycles during which uops initiated by Decode Stream Buffer (DSB) are being delivered to Instruction Decode Queue (IDQ) while the Microcode Sequencer (MS) is busy. Counting includes uops that may bypass the IDQ.",
7219c0389bSAndi Kleen        "SampleAfterValue": "2000003",
7319c0389bSAndi Kleen        "CounterHTOff": "0,1,2,3,4,5,6,7"
7419c0389bSAndi Kleen    },
7519c0389bSAndi Kleen    {
7619c0389bSAndi Kleen        "EdgeDetect": "1",
7719c0389bSAndi Kleen        "EventCode": "0x79",
7819c0389bSAndi Kleen        "UMask": "0x10",
7919c0389bSAndi Kleen        "BriefDescription": "Deliveries to Instruction Decode Queue (IDQ) initiated by Decode Stream Buffer (DSB) while Microcode Sequenser (MS) is busy",
8019c0389bSAndi Kleen        "Counter": "0,1,2,3",
8119c0389bSAndi Kleen        "EventName": "IDQ.MS_DSB_OCCUR",
8219c0389bSAndi Kleen        "CounterMask": "1",
8397d00f2dSAndi Kleen        "PublicDescription": "This event counts the number of deliveries to Instruction Decode Queue (IDQ) initiated by Decode Stream Buffer (DSB) while the Microcode Sequencer (MS) is busy. Counting includes uops that may bypass the IDQ.",
8419c0389bSAndi Kleen        "SampleAfterValue": "2000003",
8519c0389bSAndi Kleen        "CounterHTOff": "0,1,2,3,4,5,6,7"
8619c0389bSAndi Kleen    },
8719c0389bSAndi Kleen    {
8819c0389bSAndi Kleen        "EventCode": "0x79",
8919c0389bSAndi Kleen        "UMask": "0x18",
9019c0389bSAndi Kleen        "BriefDescription": "Cycles Decode Stream Buffer (DSB) is delivering 4 Uops",
9119c0389bSAndi Kleen        "Counter": "0,1,2,3",
9219c0389bSAndi Kleen        "EventName": "IDQ.ALL_DSB_CYCLES_4_UOPS",
9319c0389bSAndi Kleen        "CounterMask": "4",
9497d00f2dSAndi Kleen        "PublicDescription": "This event counts the number of cycles 4  uops were  delivered to Instruction Decode Queue (IDQ) from the Decode Stream Buffer (DSB) path. Counting includes uops that may bypass the IDQ.",
9519c0389bSAndi Kleen        "SampleAfterValue": "2000003",
9619c0389bSAndi Kleen        "CounterHTOff": "0,1,2,3,4,5,6,7"
9719c0389bSAndi Kleen    },
9819c0389bSAndi Kleen    {
9919c0389bSAndi Kleen        "EventCode": "0x79",
10019c0389bSAndi Kleen        "UMask": "0x18",
10119c0389bSAndi Kleen        "BriefDescription": "Cycles Decode Stream Buffer (DSB) is delivering any Uop",
10219c0389bSAndi Kleen        "Counter": "0,1,2,3",
10319c0389bSAndi Kleen        "EventName": "IDQ.ALL_DSB_CYCLES_ANY_UOPS",
10419c0389bSAndi Kleen        "CounterMask": "1",
10597d00f2dSAndi Kleen        "PublicDescription": "This event counts the number of cycles  uops were  delivered to Instruction Decode Queue (IDQ) from the Decode Stream Buffer (DSB) path. Counting includes uops that may bypass the IDQ.",
10697d00f2dSAndi Kleen        "SampleAfterValue": "2000003",
10797d00f2dSAndi Kleen        "CounterHTOff": "0,1,2,3,4,5,6,7"
10897d00f2dSAndi Kleen    },
10997d00f2dSAndi Kleen    {
11097d00f2dSAndi Kleen        "EventCode": "0x79",
11197d00f2dSAndi Kleen        "UMask": "0x20",
11297d00f2dSAndi Kleen        "BriefDescription": "Uops initiated by MITE and delivered to Instruction Decode Queue (IDQ) while Microcode Sequenser (MS) is busy",
11397d00f2dSAndi Kleen        "Counter": "0,1,2,3",
11497d00f2dSAndi Kleen        "EventName": "IDQ.MS_MITE_UOPS",
11597d00f2dSAndi Kleen        "PublicDescription": "This event counts the number of uops initiated by MITE and delivered to Instruction Decode Queue (IDQ) while the Microcode Sequenser (MS) is busy. Counting includes uops that may bypass the IDQ.",
11619c0389bSAndi Kleen        "SampleAfterValue": "2000003",
11719c0389bSAndi Kleen        "CounterHTOff": "0,1,2,3,4,5,6,7"
11819c0389bSAndi Kleen    },
11919c0389bSAndi Kleen    {
12019c0389bSAndi Kleen        "EventCode": "0x79",
12119c0389bSAndi Kleen        "UMask": "0x24",
12219c0389bSAndi Kleen        "BriefDescription": "Cycles MITE is delivering 4 Uops",
12319c0389bSAndi Kleen        "Counter": "0,1,2,3",
12419c0389bSAndi Kleen        "EventName": "IDQ.ALL_MITE_CYCLES_4_UOPS",
12519c0389bSAndi Kleen        "CounterMask": "4",
12697d00f2dSAndi Kleen        "PublicDescription": "This event counts the number of cycles 4  uops were  delivered to Instruction Decode Queue (IDQ) from the MITE path. Counting includes uops that may bypass the IDQ. This also means that uops are not being delivered from the Decode Stream Buffer (DSB).",
12719c0389bSAndi Kleen        "SampleAfterValue": "2000003",
12819c0389bSAndi Kleen        "CounterHTOff": "0,1,2,3,4,5,6,7"
12919c0389bSAndi Kleen    },
13019c0389bSAndi Kleen    {
13119c0389bSAndi Kleen        "EventCode": "0x79",
13219c0389bSAndi Kleen        "UMask": "0x24",
13319c0389bSAndi Kleen        "BriefDescription": "Cycles MITE is delivering any Uop",
13419c0389bSAndi Kleen        "Counter": "0,1,2,3",
13519c0389bSAndi Kleen        "EventName": "IDQ.ALL_MITE_CYCLES_ANY_UOPS",
13619c0389bSAndi Kleen        "CounterMask": "1",
13797d00f2dSAndi Kleen        "PublicDescription": "This event counts the number of cycles  uops were delivered to Instruction Decode Queue (IDQ) from the MITE path. Counting includes uops that may bypass the IDQ. This also means that uops are not being delivered from the Decode Stream Buffer (DSB).",
13897d00f2dSAndi Kleen        "SampleAfterValue": "2000003",
13997d00f2dSAndi Kleen        "CounterHTOff": "0,1,2,3,4,5,6,7"
14097d00f2dSAndi Kleen    },
14197d00f2dSAndi Kleen    {
14297d00f2dSAndi Kleen        "EventCode": "0x79",
14397d00f2dSAndi Kleen        "UMask": "0x30",
14497d00f2dSAndi Kleen        "BriefDescription": "Uops delivered to Instruction Decode Queue (IDQ) while Microcode Sequenser (MS) is busy",
14597d00f2dSAndi Kleen        "Counter": "0,1,2,3",
14697d00f2dSAndi Kleen        "EventName": "IDQ.MS_UOPS",
14797d00f2dSAndi Kleen        "PublicDescription": "This event counts the total number of uops delivered to Instruction Decode Queue (IDQ) while the Microcode Sequenser (MS) is busy. Counting includes uops that may bypass the IDQ. Uops maybe initiated by Decode Stream Buffer (DSB) or MITE.",
14897d00f2dSAndi Kleen        "SampleAfterValue": "2000003",
14997d00f2dSAndi Kleen        "CounterHTOff": "0,1,2,3,4,5,6,7"
15097d00f2dSAndi Kleen    },
15197d00f2dSAndi Kleen    {
15297d00f2dSAndi Kleen        "EventCode": "0x79",
15397d00f2dSAndi Kleen        "UMask": "0x30",
15497d00f2dSAndi Kleen        "BriefDescription": "Cycles when uops are being delivered to Instruction Decode Queue (IDQ) while Microcode Sequenser (MS) is busy",
15597d00f2dSAndi Kleen        "Counter": "0,1,2,3",
15697d00f2dSAndi Kleen        "EventName": "IDQ.MS_CYCLES",
15797d00f2dSAndi Kleen        "CounterMask": "1",
15897d00f2dSAndi Kleen        "PublicDescription": "This event counts cycles during which uops are being delivered to Instruction Decode Queue (IDQ) while the Microcode Sequenser (MS) is busy. Counting includes uops that may bypass the IDQ. Uops maybe initiated by Decode Stream Buffer (DSB) or MITE.",
15997d00f2dSAndi Kleen        "SampleAfterValue": "2000003",
16097d00f2dSAndi Kleen        "CounterHTOff": "0,1,2,3,4,5,6,7"
16197d00f2dSAndi Kleen    },
16297d00f2dSAndi Kleen    {
16397d00f2dSAndi Kleen        "EdgeDetect": "1",
16497d00f2dSAndi Kleen        "EventCode": "0x79",
16597d00f2dSAndi Kleen        "UMask": "0x30",
16697d00f2dSAndi Kleen        "BriefDescription": "Number of switches from DSB (Decode Stream Buffer) or MITE (legacy decode pipeline) to the Microcode Sequencer.",
16797d00f2dSAndi Kleen        "Counter": "0,1,2,3",
16897d00f2dSAndi Kleen        "EventName": "IDQ.MS_SWITCHES",
16997d00f2dSAndi Kleen        "CounterMask": "1",
17019c0389bSAndi Kleen        "SampleAfterValue": "2000003",
17119c0389bSAndi Kleen        "CounterHTOff": "0,1,2,3,4,5,6,7"
17219c0389bSAndi Kleen    },
17319c0389bSAndi Kleen    {
17419c0389bSAndi Kleen        "EventCode": "0x79",
17519c0389bSAndi Kleen        "UMask": "0x3c",
17619c0389bSAndi Kleen        "BriefDescription": "Uops delivered to Instruction Decode Queue (IDQ) from MITE path",
17719c0389bSAndi Kleen        "Counter": "0,1,2,3",
17819c0389bSAndi Kleen        "EventName": "IDQ.MITE_ALL_UOPS",
17997d00f2dSAndi Kleen        "PublicDescription": "This event counts the number of uops delivered to Instruction Decode Queue (IDQ) from the MITE path. Counting includes uops that may bypass the IDQ. This also means that uops are not being delivered from the Decode Stream Buffer (DSB).",
18019c0389bSAndi Kleen        "SampleAfterValue": "2000003",
18119c0389bSAndi Kleen        "CounterHTOff": "0,1,2,3,4,5,6,7"
18219c0389bSAndi Kleen    },
18319c0389bSAndi Kleen    {
18419c0389bSAndi Kleen        "EventCode": "0x80",
18519c0389bSAndi Kleen        "UMask": "0x1",
18619c0389bSAndi Kleen        "BriefDescription": "Number of Instruction Cache, Streaming Buffer and Victim Cache Reads. both cacheable and noncacheable, including UC fetches",
18719c0389bSAndi Kleen        "Counter": "0,1,2,3",
18819c0389bSAndi Kleen        "EventName": "ICACHE.HIT",
18919c0389bSAndi Kleen        "PublicDescription": "This event counts the number of both cacheable and noncacheable Instruction Cache, Streaming Buffer and Victim Cache Reads including UC fetches.",
19019c0389bSAndi Kleen        "SampleAfterValue": "2000003",
19119c0389bSAndi Kleen        "CounterHTOff": "0,1,2,3,4,5,6,7"
19219c0389bSAndi Kleen    },
19319c0389bSAndi Kleen    {
19419c0389bSAndi Kleen        "EventCode": "0x80",
19519c0389bSAndi Kleen        "UMask": "0x2",
19619c0389bSAndi Kleen        "BriefDescription": "Number of Instruction Cache, Streaming Buffer and Victim Cache Misses. Includes Uncacheable accesses.",
19719c0389bSAndi Kleen        "Counter": "0,1,2,3",
19819c0389bSAndi Kleen        "EventName": "ICACHE.MISSES",
19919c0389bSAndi Kleen        "PublicDescription": "This event counts the number of instruction cache, streaming buffer and victim cache misses. Counting includes UC accesses.",
20019c0389bSAndi Kleen        "SampleAfterValue": "200003",
20119c0389bSAndi Kleen        "CounterHTOff": "0,1,2,3,4,5,6,7"
20219c0389bSAndi Kleen    },
20319c0389bSAndi Kleen    {
20419c0389bSAndi Kleen        "EventCode": "0x80",
20519c0389bSAndi Kleen        "UMask": "0x4",
20619c0389bSAndi Kleen        "BriefDescription": "Cycles where a code fetch is stalled due to L1 instruction-cache miss.",
20719c0389bSAndi Kleen        "Counter": "0,1,2,3",
20819c0389bSAndi Kleen        "EventName": "ICACHE.IFDATA_STALL",
20919c0389bSAndi Kleen        "PublicDescription": "This event counts cycles during which the demand fetch waits for data (wfdM104H) from L2 or iSB (opportunistic hit).",
21019c0389bSAndi Kleen        "SampleAfterValue": "2000003",
21119c0389bSAndi Kleen        "CounterHTOff": "0,1,2,3,4,5,6,7"
21219c0389bSAndi Kleen    },
21319c0389bSAndi Kleen    {
21419c0389bSAndi Kleen        "EventCode": "0x9C",
21519c0389bSAndi Kleen        "UMask": "0x1",
21619c0389bSAndi Kleen        "BriefDescription": "Uops not delivered to Resource Allocation Table (RAT) per thread when backend of the machine is not stalled",
21719c0389bSAndi Kleen        "Counter": "0,1,2,3",
21819c0389bSAndi Kleen        "EventName": "IDQ_UOPS_NOT_DELIVERED.CORE",
21997d00f2dSAndi Kleen        "PublicDescription": "This event counts the number of uops not delivered to Resource Allocation Table (RAT) per thread adding 4  x when Resource Allocation Table (RAT) is not stalled and Instruction Decode Queue (IDQ) delivers x uops to Resource Allocation Table (RAT) (where x belongs to {0,1,2,3}). Counting does not cover cases when:\n a. IDQ-Resource Allocation Table (RAT) pipe serves the other thread;\n b. Resource Allocation Table (RAT) is stalled for the thread (including uop drops and clear BE conditions); \n c. Instruction Decode Queue (IDQ) delivers four uops.",
22019c0389bSAndi Kleen        "SampleAfterValue": "2000003",
22119c0389bSAndi Kleen        "CounterHTOff": "0,1,2,3"
22219c0389bSAndi Kleen    },
22319c0389bSAndi Kleen    {
22419c0389bSAndi Kleen        "EventCode": "0x9C",
22519c0389bSAndi Kleen        "UMask": "0x1",
22619c0389bSAndi Kleen        "BriefDescription": "Cycles per thread when 4 or more uops are not delivered to Resource Allocation Table (RAT) when backend of the machine is not stalled",
22719c0389bSAndi Kleen        "Counter": "0,1,2,3",
22819c0389bSAndi Kleen        "EventName": "IDQ_UOPS_NOT_DELIVERED.CYCLES_0_UOPS_DELIV.CORE",
22919c0389bSAndi Kleen        "CounterMask": "4",
23019c0389bSAndi Kleen        "PublicDescription": "This event counts, on the per-thread basis, cycles when no uops are delivered to Resource Allocation Table (RAT). IDQ_Uops_Not_Delivered.core =4.",
23119c0389bSAndi Kleen        "SampleAfterValue": "2000003",
23219c0389bSAndi Kleen        "CounterHTOff": "0,1,2,3"
23319c0389bSAndi Kleen    },
23419c0389bSAndi Kleen    {
23519c0389bSAndi Kleen        "EventCode": "0x9C",
23619c0389bSAndi Kleen        "UMask": "0x1",
23719c0389bSAndi Kleen        "BriefDescription": "Cycles per thread when 3 or more uops are not delivered to Resource Allocation Table (RAT) when backend of the machine is not stalled",
23819c0389bSAndi Kleen        "Counter": "0,1,2,3",
23919c0389bSAndi Kleen        "EventName": "IDQ_UOPS_NOT_DELIVERED.CYCLES_LE_1_UOP_DELIV.CORE",
24019c0389bSAndi Kleen        "CounterMask": "3",
24119c0389bSAndi Kleen        "PublicDescription": "This event counts, on the per-thread basis, cycles when less than 1 uop is  delivered to Resource Allocation Table (RAT). IDQ_Uops_Not_Delivered.core >=3.",
24219c0389bSAndi Kleen        "SampleAfterValue": "2000003",
24319c0389bSAndi Kleen        "CounterHTOff": "0,1,2,3"
24419c0389bSAndi Kleen    },
24519c0389bSAndi Kleen    {
24619c0389bSAndi Kleen        "EventCode": "0x9C",
24719c0389bSAndi Kleen        "UMask": "0x1",
24819c0389bSAndi Kleen        "BriefDescription": "Cycles with less than 2 uops delivered by the front end.",
24919c0389bSAndi Kleen        "Counter": "0,1,2,3",
25019c0389bSAndi Kleen        "EventName": "IDQ_UOPS_NOT_DELIVERED.CYCLES_LE_2_UOP_DELIV.CORE",
25119c0389bSAndi Kleen        "CounterMask": "2",
25219c0389bSAndi Kleen        "SampleAfterValue": "2000003",
25319c0389bSAndi Kleen        "CounterHTOff": "0,1,2,3"
25419c0389bSAndi Kleen    },
25519c0389bSAndi Kleen    {
25619c0389bSAndi Kleen        "EventCode": "0x9C",
25719c0389bSAndi Kleen        "UMask": "0x1",
25819c0389bSAndi Kleen        "BriefDescription": "Cycles with less than 3 uops delivered by the front end.",
25919c0389bSAndi Kleen        "Counter": "0,1,2,3",
26019c0389bSAndi Kleen        "EventName": "IDQ_UOPS_NOT_DELIVERED.CYCLES_LE_3_UOP_DELIV.CORE",
26119c0389bSAndi Kleen        "CounterMask": "1",
26219c0389bSAndi Kleen        "SampleAfterValue": "2000003",
26319c0389bSAndi Kleen        "CounterHTOff": "0,1,2,3"
26419c0389bSAndi Kleen    },
26519c0389bSAndi Kleen    {
26619c0389bSAndi Kleen        "Invert": "1",
26719c0389bSAndi Kleen        "EventCode": "0x9C",
26819c0389bSAndi Kleen        "UMask": "0x1",
26919c0389bSAndi Kleen        "BriefDescription": "Counts cycles FE delivered 4 uops or Resource Allocation Table (RAT) was stalling FE.",
27019c0389bSAndi Kleen        "Counter": "0,1,2,3",
27119c0389bSAndi Kleen        "EventName": "IDQ_UOPS_NOT_DELIVERED.CYCLES_FE_WAS_OK",
27219c0389bSAndi Kleen        "CounterMask": "1",
27319c0389bSAndi Kleen        "SampleAfterValue": "2000003",
27419c0389bSAndi Kleen        "CounterHTOff": "0,1,2,3"
27519c0389bSAndi Kleen    },
27619c0389bSAndi Kleen    {
27719c0389bSAndi Kleen        "EventCode": "0xAB",
27819c0389bSAndi Kleen        "UMask": "0x2",
27919c0389bSAndi Kleen        "BriefDescription": "Decode Stream Buffer (DSB)-to-MITE switch true penalty cycles.",
28019c0389bSAndi Kleen        "Counter": "0,1,2,3",
28119c0389bSAndi Kleen        "EventName": "DSB2MITE_SWITCHES.PENALTY_CYCLES",
28297d00f2dSAndi Kleen        "PublicDescription": "This event counts Decode Stream Buffer (DSB)-to-MITE switch true penalty cycles. These cycles do not include uops routed through because of the switch itself, for example, when Instruction Decode Queue (IDQ) pre-allocation is unavailable, or Instruction Decode Queue (IDQ) is full. SBD-to-MITE switch true penalty cycles happen after the merge mux (MM) receives Decode Stream Buffer (DSB) Sync-indication until receiving the first MITE uop. \nMM is placed before Instruction Decode Queue (IDQ) to merge uops being fed from the MITE and Decode Stream Buffer (DSB) paths. Decode Stream Buffer (DSB) inserts the Sync-indication whenever a Decode Stream Buffer (DSB)-to-MITE switch occurs.\nPenalty: A Decode Stream Buffer (DSB) hit followed by a Decode Stream Buffer (DSB) miss can cost up to six cycles in which no uops are delivered to the IDQ. Most often, such switches from the Decode Stream Buffer (DSB) to the legacy pipeline cost 02 cycles.",
28319c0389bSAndi Kleen        "SampleAfterValue": "2000003",
28419c0389bSAndi Kleen        "CounterHTOff": "0,1,2,3,4,5,6,7"
28519c0389bSAndi Kleen    }
28619c0389bSAndi Kleen]