1ede00740SAndi Kleen[ 2ede00740SAndi Kleen { 3f16c3236SIan Rogers "BriefDescription": "Counts the total number when the front end is resteered, mainly when the BPU cannot provide a correct prediction and this is corrected by other branch handling mechanisms at the front end.", 4f16c3236SIan Rogers "EventCode": "0xe6", 5f16c3236SIan Rogers "EventName": "BACLEARS.ANY", 6f16c3236SIan Rogers "PublicDescription": "Number of front end re-steers due to BPU misprediction.", 7f16c3236SIan Rogers "SampleAfterValue": "100003", 8f16c3236SIan Rogers "UMask": "0x1f" 9ede00740SAndi Kleen }, 10ede00740SAndi Kleen { 11f16c3236SIan Rogers "BriefDescription": "Decode Stream Buffer (DSB)-to-MITE switch true penalty cycles.", 12f16c3236SIan Rogers "EventCode": "0xAB", 13f16c3236SIan Rogers "EventName": "DSB2MITE_SWITCHES.PENALTY_CYCLES", 14ede00740SAndi Kleen "SampleAfterValue": "2000003", 15f16c3236SIan Rogers "UMask": "0x2" 16ede00740SAndi Kleen }, 17ede00740SAndi Kleen { 18ede00740SAndi Kleen "BriefDescription": "Number of Instruction Cache, Streaming Buffer and Victim Cache Reads. both cacheable and noncacheable, including UC fetches.", 19f16c3236SIan Rogers "EventCode": "0x80", 20ede00740SAndi Kleen "EventName": "ICACHE.HIT", 21ede00740SAndi Kleen "SampleAfterValue": "2000003", 22f16c3236SIan Rogers "UMask": "0x1" 23ede00740SAndi Kleen }, 24ede00740SAndi Kleen { 25f16c3236SIan Rogers "BriefDescription": "Cycles where a code fetch is stalled due to L1 instruction-cache miss.", 26ede00740SAndi Kleen "EventCode": "0x80", 27f16c3236SIan Rogers "EventName": "ICACHE.IFDATA_STALL", 28f16c3236SIan Rogers "SampleAfterValue": "2000003", 29f16c3236SIan Rogers "UMask": "0x4" 30f16c3236SIan Rogers }, 31f16c3236SIan Rogers { 32f16c3236SIan Rogers "BriefDescription": "Cycles where a code fetch is stalled due to L1 instruction-cache miss.", 33f16c3236SIan Rogers "EventCode": "0x80", 34f16c3236SIan Rogers "EventName": "ICACHE.IFETCH_STALL", 35f16c3236SIan Rogers "SampleAfterValue": "2000003", 36f16c3236SIan Rogers "UMask": "0x4" 37f16c3236SIan Rogers }, 38f16c3236SIan Rogers { 39ede00740SAndi Kleen "BriefDescription": "Number of Instruction Cache, Streaming Buffer and Victim Cache Misses. Includes Uncacheable accesses.", 40f16c3236SIan Rogers "EventCode": "0x80", 41ede00740SAndi Kleen "EventName": "ICACHE.MISSES", 42ede00740SAndi Kleen "PublicDescription": "This event counts Instruction Cache (ICACHE) misses.", 43ede00740SAndi Kleen "SampleAfterValue": "200003", 44f16c3236SIan Rogers "UMask": "0x2" 45ede00740SAndi Kleen }, 46ede00740SAndi Kleen { 47f16c3236SIan Rogers "BriefDescription": "Cycles Decode Stream Buffer (DSB) is delivering 4 Uops", 48f16c3236SIan Rogers "CounterMask": "4", 49f16c3236SIan Rogers "EventCode": "0x79", 50f16c3236SIan Rogers "EventName": "IDQ.ALL_DSB_CYCLES_4_UOPS", 51f16c3236SIan Rogers "PublicDescription": "Counts cycles DSB is delivered four uops. Set Cmask = 4.", 52ede00740SAndi Kleen "SampleAfterValue": "2000003", 53f16c3236SIan Rogers "UMask": "0x18" 54ede00740SAndi Kleen }, 55ede00740SAndi Kleen { 56f16c3236SIan Rogers "BriefDescription": "Cycles Decode Stream Buffer (DSB) is delivering any Uop", 57f16c3236SIan Rogers "CounterMask": "1", 58f16c3236SIan Rogers "EventCode": "0x79", 59f16c3236SIan Rogers "EventName": "IDQ.ALL_DSB_CYCLES_ANY_UOPS", 60f16c3236SIan Rogers "PublicDescription": "Counts cycles DSB is delivered at least one uops. Set Cmask = 1.", 61032c16b2SAndi Kleen "SampleAfterValue": "2000003", 62f16c3236SIan Rogers "UMask": "0x18" 63032c16b2SAndi Kleen }, 64032c16b2SAndi Kleen { 65f16c3236SIan Rogers "BriefDescription": "Cycles MITE is delivering 4 Uops", 66f16c3236SIan Rogers "CounterMask": "4", 67f16c3236SIan Rogers "EventCode": "0x79", 68f16c3236SIan Rogers "EventName": "IDQ.ALL_MITE_CYCLES_4_UOPS", 69f16c3236SIan Rogers "PublicDescription": "Counts cycles MITE is delivered four uops. Set Cmask = 4.", 70f16c3236SIan Rogers "SampleAfterValue": "2000003", 71f16c3236SIan Rogers "UMask": "0x24" 72f16c3236SIan Rogers }, 73f16c3236SIan Rogers { 74f16c3236SIan Rogers "BriefDescription": "Cycles MITE is delivering any Uop", 75f16c3236SIan Rogers "CounterMask": "1", 76f16c3236SIan Rogers "EventCode": "0x79", 77f16c3236SIan Rogers "EventName": "IDQ.ALL_MITE_CYCLES_ANY_UOPS", 78f16c3236SIan Rogers "PublicDescription": "Counts cycles MITE is delivered at least one uop. Set Cmask = 1.", 79f16c3236SIan Rogers "SampleAfterValue": "2000003", 80f16c3236SIan Rogers "UMask": "0x24" 81f16c3236SIan Rogers }, 82f16c3236SIan Rogers { 83f16c3236SIan Rogers "BriefDescription": "Cycles when uops are being delivered to Instruction Decode Queue (IDQ) from Decode Stream Buffer (DSB) path.", 84f16c3236SIan Rogers "CounterMask": "1", 85f16c3236SIan Rogers "EventCode": "0x79", 86f16c3236SIan Rogers "EventName": "IDQ.DSB_CYCLES", 87f16c3236SIan Rogers "SampleAfterValue": "2000003", 88f16c3236SIan Rogers "UMask": "0x8" 89f16c3236SIan Rogers }, 90f16c3236SIan Rogers { 91f16c3236SIan Rogers "BriefDescription": "Uops delivered to Instruction Decode Queue (IDQ) from the Decode Stream Buffer (DSB) path", 92f16c3236SIan Rogers "EventCode": "0x79", 93f16c3236SIan Rogers "EventName": "IDQ.DSB_UOPS", 94f16c3236SIan Rogers "PublicDescription": "Increment each cycle. # of uops delivered to IDQ from DSB path. Set Cmask = 1 to count cycles.", 95f16c3236SIan Rogers "SampleAfterValue": "2000003", 96f16c3236SIan Rogers "UMask": "0x8" 97f16c3236SIan Rogers }, 98f16c3236SIan Rogers { 99f16c3236SIan Rogers "BriefDescription": "Instruction Decode Queue (IDQ) empty cycles", 100f16c3236SIan Rogers "Errata": "HSD135", 101f16c3236SIan Rogers "EventCode": "0x79", 102f16c3236SIan Rogers "EventName": "IDQ.EMPTY", 103f16c3236SIan Rogers "PublicDescription": "Counts cycles the IDQ is empty.", 104f16c3236SIan Rogers "SampleAfterValue": "2000003", 105f16c3236SIan Rogers "UMask": "0x2" 106f16c3236SIan Rogers }, 107f16c3236SIan Rogers { 108f16c3236SIan Rogers "BriefDescription": "Uops delivered to Instruction Decode Queue (IDQ) from MITE path", 109f16c3236SIan Rogers "EventCode": "0x79", 110f16c3236SIan Rogers "EventName": "IDQ.MITE_ALL_UOPS", 111f16c3236SIan Rogers "PublicDescription": "Number of uops delivered to IDQ from any path.", 112f16c3236SIan Rogers "SampleAfterValue": "2000003", 113f16c3236SIan Rogers "UMask": "0x3c" 114f16c3236SIan Rogers }, 115f16c3236SIan Rogers { 116f16c3236SIan Rogers "BriefDescription": "Cycles when uops are being delivered to Instruction Decode Queue (IDQ) from MITE path.", 117f16c3236SIan Rogers "CounterMask": "1", 118f16c3236SIan Rogers "EventCode": "0x79", 119f16c3236SIan Rogers "EventName": "IDQ.MITE_CYCLES", 120f16c3236SIan Rogers "SampleAfterValue": "2000003", 121f16c3236SIan Rogers "UMask": "0x4" 122f16c3236SIan Rogers }, 123f16c3236SIan Rogers { 124f16c3236SIan Rogers "BriefDescription": "Uops delivered to Instruction Decode Queue (IDQ) from MITE path", 125f16c3236SIan Rogers "EventCode": "0x79", 126f16c3236SIan Rogers "EventName": "IDQ.MITE_UOPS", 127f16c3236SIan Rogers "PublicDescription": "Increment each cycle # of uops delivered to IDQ from MITE path. Set Cmask = 1 to count cycles.", 128f16c3236SIan Rogers "SampleAfterValue": "2000003", 129f16c3236SIan Rogers "UMask": "0x4" 130f16c3236SIan Rogers }, 131f16c3236SIan Rogers { 132*08ce57ddSIan Rogers "BriefDescription": "Cycles when uops are being delivered to Instruction Decode Queue (IDQ) while Microcode Sequencer (MS) is busy", 133f16c3236SIan Rogers "CounterMask": "1", 134f16c3236SIan Rogers "EventCode": "0x79", 135f16c3236SIan Rogers "EventName": "IDQ.MS_CYCLES", 136f16c3236SIan Rogers "PublicDescription": "This event counts cycles during which the microcode sequencer assisted the Front-end in delivering uops. Microcode assists are used for complex instructions or scenarios that can't be handled by the standard decoder. Using other instructions, if possible, will usually improve performance.", 137f16c3236SIan Rogers "SampleAfterValue": "2000003", 138f16c3236SIan Rogers "UMask": "0x30" 139f16c3236SIan Rogers }, 140f16c3236SIan Rogers { 141*08ce57ddSIan Rogers "BriefDescription": "Cycles when uops initiated by Decode Stream Buffer (DSB) are being delivered to Instruction Decode Queue (IDQ) while Microcode Sequencer (MS) is busy.", 142f16c3236SIan Rogers "CounterMask": "1", 143f16c3236SIan Rogers "EventCode": "0x79", 144f16c3236SIan Rogers "EventName": "IDQ.MS_DSB_CYCLES", 145f16c3236SIan Rogers "SampleAfterValue": "2000003", 146f16c3236SIan Rogers "UMask": "0x10" 147f16c3236SIan Rogers }, 148f16c3236SIan Rogers { 149*08ce57ddSIan Rogers "BriefDescription": "Deliveries to Instruction Decode Queue (IDQ) initiated by Decode Stream Buffer (DSB) while Microcode Sequencer (MS) is busy.", 150f16c3236SIan Rogers "CounterMask": "1", 151f16c3236SIan Rogers "EdgeDetect": "1", 152f16c3236SIan Rogers "EventCode": "0x79", 153f16c3236SIan Rogers "EventName": "IDQ.MS_DSB_OCCUR", 154f16c3236SIan Rogers "SampleAfterValue": "2000003", 155f16c3236SIan Rogers "UMask": "0x10" 156f16c3236SIan Rogers }, 157f16c3236SIan Rogers { 158*08ce57ddSIan Rogers "BriefDescription": "Uops initiated by Decode Stream Buffer (DSB) that are being delivered to Instruction Decode Queue (IDQ) while Microcode Sequencer (MS) is busy", 159f16c3236SIan Rogers "EventCode": "0x79", 160f16c3236SIan Rogers "EventName": "IDQ.MS_DSB_UOPS", 161f16c3236SIan Rogers "PublicDescription": "Increment each cycle # of uops delivered to IDQ when MS_busy by DSB. Set Cmask = 1 to count cycles. Add Edge=1 to count # of delivery.", 162f16c3236SIan Rogers "SampleAfterValue": "2000003", 163f16c3236SIan Rogers "UMask": "0x10" 164f16c3236SIan Rogers }, 165f16c3236SIan Rogers { 166*08ce57ddSIan Rogers "BriefDescription": "Uops initiated by MITE and delivered to Instruction Decode Queue (IDQ) while Microcode Sequencer (MS) is busy", 167f16c3236SIan Rogers "EventCode": "0x79", 168f16c3236SIan Rogers "EventName": "IDQ.MS_MITE_UOPS", 169f16c3236SIan Rogers "PublicDescription": "Increment each cycle # of uops delivered to IDQ when MS_busy by MITE. Set Cmask = 1 to count cycles.", 170f16c3236SIan Rogers "SampleAfterValue": "2000003", 171f16c3236SIan Rogers "UMask": "0x20" 172f16c3236SIan Rogers }, 173f16c3236SIan Rogers { 174f16c3236SIan Rogers "BriefDescription": "Number of switches from DSB (Decode Stream Buffer) or MITE (legacy decode pipeline) to the Microcode Sequencer.", 175f16c3236SIan Rogers "CounterMask": "1", 176f16c3236SIan Rogers "EdgeDetect": "1", 177f16c3236SIan Rogers "EventCode": "0x79", 178f16c3236SIan Rogers "EventName": "IDQ.MS_SWITCHES", 179f16c3236SIan Rogers "SampleAfterValue": "2000003", 180f16c3236SIan Rogers "UMask": "0x30" 181f16c3236SIan Rogers }, 182f16c3236SIan Rogers { 183*08ce57ddSIan Rogers "BriefDescription": "Uops delivered to Instruction Decode Queue (IDQ) while Microcode Sequencer (MS) is busy", 184f16c3236SIan Rogers "EventCode": "0x79", 185f16c3236SIan Rogers "EventName": "IDQ.MS_UOPS", 186f16c3236SIan Rogers "PublicDescription": "This event counts uops delivered by the Front-end with the assistance of the microcode sequencer. Microcode assists are used for complex instructions or scenarios that can't be handled by the standard decoder. Using other instructions, if possible, will usually improve performance.", 187f16c3236SIan Rogers "SampleAfterValue": "2000003", 188f16c3236SIan Rogers "UMask": "0x30" 189f16c3236SIan Rogers }, 190f16c3236SIan Rogers { 191ede00740SAndi Kleen "BriefDescription": "Uops not delivered to Resource Allocation Table (RAT) per thread when backend of the machine is not stalled", 192ede00740SAndi Kleen "Errata": "HSD135", 193f16c3236SIan Rogers "EventCode": "0x9C", 194f16c3236SIan Rogers "EventName": "IDQ_UOPS_NOT_DELIVERED.CORE", 195ede00740SAndi Kleen "PublicDescription": "This event count the number of undelivered (unallocated) uops from the Front-end to the Resource Allocation Table (RAT) while the Back-end of the processor is not stalled. The Front-end can allocate up to 4 uops per cycle so this event can increment 0-4 times per cycle depending on the number of unallocated uops. This event is counted on a per-core basis.", 196ede00740SAndi Kleen "SampleAfterValue": "2000003", 197f16c3236SIan Rogers "UMask": "0x1" 198ede00740SAndi Kleen }, 199ede00740SAndi Kleen { 200ede00740SAndi 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", 201ede00740SAndi Kleen "CounterMask": "4", 202ede00740SAndi Kleen "Errata": "HSD135", 203f16c3236SIan Rogers "EventCode": "0x9C", 204f16c3236SIan Rogers "EventName": "IDQ_UOPS_NOT_DELIVERED.CYCLES_0_UOPS_DELIV.CORE", 205ede00740SAndi Kleen "PublicDescription": "This event counts the number cycles during which the Front-end allocated exactly zero uops to the Resource Allocation Table (RAT) while the Back-end of the processor is not stalled. This event is counted on a per-core basis.", 206ede00740SAndi Kleen "SampleAfterValue": "2000003", 207f16c3236SIan Rogers "UMask": "0x1" 208ede00740SAndi Kleen }, 209ede00740SAndi Kleen { 210ede00740SAndi Kleen "BriefDescription": "Counts cycles FE delivered 4 uops or Resource Allocation Table (RAT) was stalling FE.", 211ede00740SAndi Kleen "CounterMask": "1", 212ede00740SAndi Kleen "Errata": "HSD135", 213f16c3236SIan Rogers "EventCode": "0x9C", 214f16c3236SIan Rogers "EventName": "IDQ_UOPS_NOT_DELIVERED.CYCLES_FE_WAS_OK", 215f16c3236SIan Rogers "Invert": "1", 216ede00740SAndi Kleen "SampleAfterValue": "2000003", 217f16c3236SIan Rogers "UMask": "0x1" 218ede00740SAndi Kleen }, 219ede00740SAndi Kleen { 220f16c3236SIan Rogers "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.", 221f16c3236SIan Rogers "CounterMask": "3", 222f16c3236SIan Rogers "Errata": "HSD135", 223f16c3236SIan Rogers "EventCode": "0x9C", 224f16c3236SIan Rogers "EventName": "IDQ_UOPS_NOT_DELIVERED.CYCLES_LE_1_UOP_DELIV.CORE", 225ede00740SAndi Kleen "SampleAfterValue": "2000003", 226f16c3236SIan Rogers "UMask": "0x1" 227f16c3236SIan Rogers }, 228f16c3236SIan Rogers { 229f16c3236SIan Rogers "BriefDescription": "Cycles with less than 2 uops delivered by the front end.", 230f16c3236SIan Rogers "CounterMask": "2", 231f16c3236SIan Rogers "Errata": "HSD135", 232f16c3236SIan Rogers "EventCode": "0x9C", 233f16c3236SIan Rogers "EventName": "IDQ_UOPS_NOT_DELIVERED.CYCLES_LE_2_UOP_DELIV.CORE", 234f16c3236SIan Rogers "SampleAfterValue": "2000003", 235f16c3236SIan Rogers "UMask": "0x1" 236f16c3236SIan Rogers }, 237f16c3236SIan Rogers { 238f16c3236SIan Rogers "BriefDescription": "Cycles with less than 3 uops delivered by the front end.", 239f16c3236SIan Rogers "CounterMask": "1", 240f16c3236SIan Rogers "Errata": "HSD135", 241f16c3236SIan Rogers "EventCode": "0x9C", 242f16c3236SIan Rogers "EventName": "IDQ_UOPS_NOT_DELIVERED.CYCLES_LE_3_UOP_DELIV.CORE", 243f16c3236SIan Rogers "SampleAfterValue": "2000003", 244f16c3236SIan Rogers "UMask": "0x1" 245ede00740SAndi Kleen } 246ede00740SAndi Kleen] 247