Commit ca3a2d05 authored by Andi Kleen's avatar Andi Kleen Committed by Arnaldo Carvalho de Melo
Browse files

perf vendor events intel: Update Haswell events to V27

parent 03da89c5
Loading
Loading
Loading
Loading
+194 −171

File changed.

Preview size limit exceeded, changes collapsed.

+10 −10
Original line number Diff line number Diff line
@@ -19,6 +19,16 @@
        "BriefDescription": "Number of transitions from SSE to AVX-256 when penalty applicable.",
        "CounterHTOff": "0,1,2,3,4,5,6,7"
    },
    {
        "PublicDescription": "Note that a whole rep string only counts AVX_INST.ALL once.",
        "EventCode": "0xC6",
        "Counter": "0,1,2,3",
        "UMask": "0x7",
        "EventName": "AVX_INSTS.ALL",
        "SampleAfterValue": "2000003",
        "BriefDescription": "Approximate counts of AVX & AVX2 256-bit instructions, including non-arithmetic instructions, loads, and stores.  May count non-AVX instructions that employ 256-bit operations, including (but not necessarily limited to) rep string instructions that use 256-bit loads and stores for optimized performance, XSAVE* and XRSTOR*, and operations that transition the x87 FPU data registers between x87 and MMX.",
        "CounterHTOff": "0,1,2,3,4,5,6,7"
    },
    {
        "PublicDescription": "Number of X87 FP assists due to output values.",
        "EventCode": "0xCA",
@@ -69,15 +79,5 @@
        "BriefDescription": "Cycles with any input/output SSE or FP assist",
        "CounterMask": "1",
        "CounterHTOff": "0,1,2,3"
    },
    {
        "PublicDescription": "Note that a whole rep string only counts AVX_INST.ALL once.",
        "EventCode": "0xC6",
        "Counter": "0,1,2,3",
        "UMask": "0x7",
        "EventName": "AVX_INSTS.ALL",
        "SampleAfterValue": "2000003",
        "BriefDescription": "Approximate counts of AVX & AVX2 256-bit instructions, including non-arithmetic instructions, loads, and stores.  May count non-AVX instructions that employ 256-bit operations, including (but not necessarily limited to) rep string instructions that use 256-bit loads and stores for optimized performance, XSAVE* and XRSTOR*, and operations that transition the x87 FPU data registers between x87 and MMX.",
        "CounterHTOff": "0,1,2,3,4,5,6,7"
    }
]
 No newline at end of file
+66 −66
Original line number Diff line number Diff line
@@ -21,74 +21,43 @@
        "CounterHTOff": "0,1,2,3,4,5,6,7"
    },
    {
        "PublicDescription": "Increment each cycle. # of uops delivered to IDQ from DSB path. Set Cmask = 1 to count cycles.",
        "EventCode": "0x79",
        "Counter": "0,1,2,3",
        "UMask": "0x8",
        "EventName": "IDQ.DSB_UOPS",
        "SampleAfterValue": "2000003",
        "BriefDescription": "Uops delivered to Instruction Decode Queue (IDQ) from the Decode Stream Buffer (DSB) path",
        "CounterHTOff": "0,1,2,3,4,5,6,7"
    },
    {
        "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.",
        "EventCode": "0x79",
        "Counter": "0,1,2,3",
        "UMask": "0x10",
        "EventName": "IDQ.MS_DSB_UOPS",
        "SampleAfterValue": "2000003",
        "BriefDescription": "Uops initiated by Decode Stream Buffer (DSB) that are being delivered to Instruction Decode Queue (IDQ) while Microcode Sequenser (MS) is busy",
        "CounterHTOff": "0,1,2,3,4,5,6,7"
    },
    {
        "PublicDescription": "Increment each cycle # of uops delivered to IDQ when MS_busy by MITE. Set Cmask = 1 to count cycles.",
        "EventCode": "0x79",
        "Counter": "0,1,2,3",
        "UMask": "0x20",
        "EventName": "IDQ.MS_MITE_UOPS",
        "SampleAfterValue": "2000003",
        "BriefDescription": "Uops initiated by MITE and delivered to Instruction Decode Queue (IDQ) while Microcode Sequenser (MS) is busy",
        "CounterHTOff": "0,1,2,3,4,5,6,7"
    },
    {
        "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.",
        "EventCode": "0x79",
        "Counter": "0,1,2,3",
        "UMask": "0x30",
        "EventName": "IDQ.MS_UOPS",
        "UMask": "0x4",
        "EventName": "IDQ.MITE_CYCLES",
        "SampleAfterValue": "2000003",
        "BriefDescription": "Uops delivered to Instruction Decode Queue (IDQ) while Microcode Sequenser (MS) is busy",
        "BriefDescription": "Cycles when uops are being delivered to Instruction Decode Queue (IDQ) from MITE path.",
        "CounterMask": "1",
        "CounterHTOff": "0,1,2,3,4,5,6,7"
    },
    {
        "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.",
        "PublicDescription": "Increment each cycle. # of uops delivered to IDQ from DSB path. Set Cmask = 1 to count cycles.",
        "EventCode": "0x79",
        "Counter": "0,1,2,3",
        "UMask": "0x30",
        "EventName": "IDQ.MS_CYCLES",
        "UMask": "0x8",
        "EventName": "IDQ.DSB_UOPS",
        "SampleAfterValue": "2000003",
        "BriefDescription": "Cycles when uops are being delivered to Instruction Decode Queue (IDQ) while Microcode Sequenser (MS) is busy",
        "CounterMask": "1",
        "BriefDescription": "Uops delivered to Instruction Decode Queue (IDQ) from the Decode Stream Buffer (DSB) path",
        "CounterHTOff": "0,1,2,3,4,5,6,7"
    },
    {
        "EventCode": "0x79",
        "Counter": "0,1,2,3",
        "UMask": "0x4",
        "EventName": "IDQ.MITE_CYCLES",
        "UMask": "0x8",
        "EventName": "IDQ.DSB_CYCLES",
        "SampleAfterValue": "2000003",
        "BriefDescription": "Cycles when uops are being delivered to Instruction Decode Queue (IDQ) from MITE path.",
        "BriefDescription": "Cycles when uops are being delivered to Instruction Decode Queue (IDQ) from Decode Stream Buffer (DSB) path.",
        "CounterMask": "1",
        "CounterHTOff": "0,1,2,3,4,5,6,7"
    },
    {
        "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.",
        "EventCode": "0x79",
        "Counter": "0,1,2,3",
        "UMask": "0x8",
        "EventName": "IDQ.DSB_CYCLES",
        "UMask": "0x10",
        "EventName": "IDQ.MS_DSB_UOPS",
        "SampleAfterValue": "2000003",
        "BriefDescription": "Cycles when uops are being delivered to Instruction Decode Queue (IDQ) from Decode Stream Buffer (DSB) path.",
        "CounterMask": "1",
        "BriefDescription": "Uops initiated by Decode Stream Buffer (DSB) that are being delivered to Instruction Decode Queue (IDQ) while Microcode Sequenser (MS) is busy",
        "CounterHTOff": "0,1,2,3,4,5,6,7"
    },
    {
@@ -134,6 +103,16 @@
        "CounterMask": "1",
        "CounterHTOff": "0,1,2,3,4,5,6,7"
    },
    {
        "PublicDescription": "Increment each cycle # of uops delivered to IDQ when MS_busy by MITE. Set Cmask = 1 to count cycles.",
        "EventCode": "0x79",
        "Counter": "0,1,2,3",
        "UMask": "0x20",
        "EventName": "IDQ.MS_MITE_UOPS",
        "SampleAfterValue": "2000003",
        "BriefDescription": "Uops initiated by MITE and delivered to Instruction Decode Queue (IDQ) while Microcode Sequenser (MS) is busy",
        "CounterHTOff": "0,1,2,3,4,5,6,7"
    },
    {
        "PublicDescription": "Counts cycles MITE is delivered four uops. Set Cmask = 4.",
        "EventCode": "0x79",
@@ -156,6 +135,38 @@
        "CounterMask": "1",
        "CounterHTOff": "0,1,2,3,4,5,6,7"
    },
    {
        "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.",
        "EventCode": "0x79",
        "Counter": "0,1,2,3",
        "UMask": "0x30",
        "EventName": "IDQ.MS_UOPS",
        "SampleAfterValue": "2000003",
        "BriefDescription": "Uops delivered to Instruction Decode Queue (IDQ) while Microcode Sequenser (MS) is busy",
        "CounterHTOff": "0,1,2,3,4,5,6,7"
    },
    {
        "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.",
        "EventCode": "0x79",
        "Counter": "0,1,2,3",
        "UMask": "0x30",
        "EventName": "IDQ.MS_CYCLES",
        "SampleAfterValue": "2000003",
        "BriefDescription": "Cycles when uops are being delivered to Instruction Decode Queue (IDQ) while Microcode Sequenser (MS) is busy",
        "CounterMask": "1",
        "CounterHTOff": "0,1,2,3,4,5,6,7"
    },
    {
        "EventCode": "0x79",
        "Counter": "0,1,2,3",
        "UMask": "0x30",
        "EdgeDetect": "1",
        "EventName": "IDQ.MS_SWITCHES",
        "SampleAfterValue": "2000003",
        "BriefDescription": "Number of switches from DSB (Decode Stream Buffer) or MITE (legacy decode pipeline) to the Microcode Sequencer.",
        "CounterMask": "1",
        "CounterHTOff": "0,1,2,3,4,5,6,7"
    },
    {
        "PublicDescription": "Number of uops delivered to IDQ from any path.",
        "EventCode": "0x79",
@@ -194,6 +205,15 @@
        "BriefDescription": "Cycles where a code fetch is stalled due to L1 instruction-cache miss.",
        "CounterHTOff": "0,1,2,3,4,5,6,7"
    },
    {
        "EventCode": "0x80",
        "Counter": "0,1,2,3",
        "UMask": "0x4",
        "EventName": "ICACHE.IFDATA_STALL",
        "SampleAfterValue": "2000003",
        "BriefDescription": "Cycles where a code fetch is stalled due to L1 instruction-cache miss.",
        "CounterHTOff": "0,1,2,3,4,5,6,7"
    },
    {
        "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.",
        "EventCode": "0x9C",
@@ -270,25 +290,5 @@
        "SampleAfterValue": "2000003",
        "BriefDescription": "Decode Stream Buffer (DSB)-to-MITE switch true penalty cycles.",
        "CounterHTOff": "0,1,2,3,4,5,6,7"
    },
    {
        "EventCode": "0x79",
        "Counter": "0,1,2,3",
        "UMask": "0x30",
        "EdgeDetect": "1",
        "EventName": "IDQ.MS_SWITCHES",
        "SampleAfterValue": "2000003",
        "BriefDescription": "Number of switches from DSB (Decode Stream Buffer) or MITE (legacy decode pipeline) to the Microcode Sequencer.",
        "CounterMask": "1",
        "CounterHTOff": "0,1,2,3,4,5,6,7"
    },
    {
        "EventCode": "0x80",
        "Counter": "0,1,2,3",
        "UMask": "0x4",
        "EventName": "ICACHE.IFDATA_STALL",
        "SampleAfterValue": "2000003",
        "BriefDescription": "Cycles where a code fetch is stalled due to L1 instruction-cache miss.",
        "CounterHTOff": "0,1,2,3,4,5,6,7"
    }
]
 No newline at end of file
+21 −0
Original line number Diff line number Diff line
@@ -401,6 +401,7 @@
        "CounterHTOff": "3"
    },
    {
        "PublicDescription": "Counts all requests that miss in the L3 Offcore response can be programmed only with a specific pair of event select and counter MSR, and with specific event codes and predefine mask bit value in a dedicated MSR to specify attributes of the offcore transaction.",
        "EventCode": "0xB7, 0xBB",
        "MSRValue": "0x3fffc08fff",
        "Counter": "0,1,2,3",
@@ -413,6 +414,7 @@
        "CounterHTOff": "0,1,2,3"
    },
    {
        "PublicDescription": "Counts all data/code/rfo reads (demand & prefetch) that miss the L3 and the data is returned from local dram Offcore response can be programmed only with a specific pair of event select and counter MSR, and with specific event codes and predefine mask bit value in a dedicated MSR to specify attributes of the offcore transaction.",
        "EventCode": "0xB7, 0xBB",
        "MSRValue": "0x01004007f7",
        "Counter": "0,1,2,3",
@@ -425,6 +427,7 @@
        "CounterHTOff": "0,1,2,3"
    },
    {
        "PublicDescription": "Counts all data/code/rfo reads (demand & prefetch) that miss in the L3 Offcore response can be programmed only with a specific pair of event select and counter MSR, and with specific event codes and predefine mask bit value in a dedicated MSR to specify attributes of the offcore transaction.",
        "EventCode": "0xB7, 0xBB",
        "MSRValue": "0x3fffc007f7",
        "Counter": "0,1,2,3",
@@ -437,6 +440,7 @@
        "CounterHTOff": "0,1,2,3"
    },
    {
        "PublicDescription": "Counts all demand & prefetch code reads that miss the L3 and the data is returned from local dram Offcore response can be programmed only with a specific pair of event select and counter MSR, and with specific event codes and predefine mask bit value in a dedicated MSR to specify attributes of the offcore transaction.",
        "EventCode": "0xB7, 0xBB",
        "MSRValue": "0x0100400244",
        "Counter": "0,1,2,3",
@@ -449,6 +453,7 @@
        "CounterHTOff": "0,1,2,3"
    },
    {
        "PublicDescription": "Counts all demand & prefetch code reads that miss in the L3 Offcore response can be programmed only with a specific pair of event select and counter MSR, and with specific event codes and predefine mask bit value in a dedicated MSR to specify attributes of the offcore transaction.",
        "EventCode": "0xB7, 0xBB",
        "MSRValue": "0x3fffc00244",
        "Counter": "0,1,2,3",
@@ -461,6 +466,7 @@
        "CounterHTOff": "0,1,2,3"
    },
    {
        "PublicDescription": "Counts all demand & prefetch RFOs that miss the L3 and the data is returned from local dram Offcore response can be programmed only with a specific pair of event select and counter MSR, and with specific event codes and predefine mask bit value in a dedicated MSR to specify attributes of the offcore transaction.",
        "EventCode": "0xB7, 0xBB",
        "MSRValue": "0x0100400122",
        "Counter": "0,1,2,3",
@@ -473,6 +479,7 @@
        "CounterHTOff": "0,1,2,3"
    },
    {
        "PublicDescription": "Counts all demand & prefetch RFOs that miss in the L3 Offcore response can be programmed only with a specific pair of event select and counter MSR, and with specific event codes and predefine mask bit value in a dedicated MSR to specify attributes of the offcore transaction.",
        "EventCode": "0xB7, 0xBB",
        "MSRValue": "0x3fffc00122",
        "Counter": "0,1,2,3",
@@ -485,6 +492,7 @@
        "CounterHTOff": "0,1,2,3"
    },
    {
        "PublicDescription": "Counts all demand & prefetch data reads that miss the L3 and the data is returned from local dram Offcore response can be programmed only with a specific pair of event select and counter MSR, and with specific event codes and predefine mask bit value in a dedicated MSR to specify attributes of the offcore transaction.",
        "EventCode": "0xB7, 0xBB",
        "MSRValue": "0x0100400091",
        "Counter": "0,1,2,3",
@@ -497,6 +505,7 @@
        "CounterHTOff": "0,1,2,3"
    },
    {
        "PublicDescription": "Counts all demand & prefetch data reads that miss in the L3 Offcore response can be programmed only with a specific pair of event select and counter MSR, and with specific event codes and predefine mask bit value in a dedicated MSR to specify attributes of the offcore transaction.",
        "EventCode": "0xB7, 0xBB",
        "MSRValue": "0x3fffc00091",
        "Counter": "0,1,2,3",
@@ -509,6 +518,7 @@
        "CounterHTOff": "0,1,2,3"
    },
    {
        "PublicDescription": "Counts prefetch (that bring data to LLC only) code reads that miss in the L3 Offcore response can be programmed only with a specific pair of event select and counter MSR, and with specific event codes and predefine mask bit value in a dedicated MSR to specify attributes of the offcore transaction.",
        "EventCode": "0xB7, 0xBB",
        "MSRValue": "0x3fffc00200",
        "Counter": "0,1,2,3",
@@ -521,6 +531,7 @@
        "CounterHTOff": "0,1,2,3"
    },
    {
        "PublicDescription": "Counts all prefetch (that bring data to LLC only) RFOs  that miss in the L3 Offcore response can be programmed only with a specific pair of event select and counter MSR, and with specific event codes and predefine mask bit value in a dedicated MSR to specify attributes of the offcore transaction.",
        "EventCode": "0xB7, 0xBB",
        "MSRValue": "0x3fffc00100",
        "Counter": "0,1,2,3",
@@ -533,6 +544,7 @@
        "CounterHTOff": "0,1,2,3"
    },
    {
        "PublicDescription": "Counts all prefetch (that bring data to LLC only) data reads that miss in the L3 Offcore response can be programmed only with a specific pair of event select and counter MSR, and with specific event codes and predefine mask bit value in a dedicated MSR to specify attributes of the offcore transaction.",
        "EventCode": "0xB7, 0xBB",
        "MSRValue": "0x3fffc00080",
        "Counter": "0,1,2,3",
@@ -545,6 +557,7 @@
        "CounterHTOff": "0,1,2,3"
    },
    {
        "PublicDescription": "Counts all prefetch (that bring data to LLC only) code reads that miss in the L3 Offcore response can be programmed only with a specific pair of event select and counter MSR, and with specific event codes and predefine mask bit value in a dedicated MSR to specify attributes of the offcore transaction.",
        "EventCode": "0xB7, 0xBB",
        "MSRValue": "0x3fffc00040",
        "Counter": "0,1,2,3",
@@ -557,6 +570,7 @@
        "CounterHTOff": "0,1,2,3"
    },
    {
        "PublicDescription": "Counts all prefetch (that bring data to L2) RFOs that miss in the L3 Offcore response can be programmed only with a specific pair of event select and counter MSR, and with specific event codes and predefine mask bit value in a dedicated MSR to specify attributes of the offcore transaction.",
        "EventCode": "0xB7, 0xBB",
        "MSRValue": "0x3fffc00020",
        "Counter": "0,1,2,3",
@@ -569,6 +583,7 @@
        "CounterHTOff": "0,1,2,3"
    },
    {
        "PublicDescription": "Counts prefetch (that bring data to L2) data reads that miss in the L3 Offcore response can be programmed only with a specific pair of event select and counter MSR, and with specific event codes and predefine mask bit value in a dedicated MSR to specify attributes of the offcore transaction.",
        "EventCode": "0xB7, 0xBB",
        "MSRValue": "0x3fffc00010",
        "Counter": "0,1,2,3",
@@ -581,6 +596,7 @@
        "CounterHTOff": "0,1,2,3"
    },
    {
        "PublicDescription": "Counts all demand code reads that miss the L3 and the data is returned from local dram Offcore response can be programmed only with a specific pair of event select and counter MSR, and with specific event codes and predefine mask bit value in a dedicated MSR to specify attributes of the offcore transaction.",
        "EventCode": "0xB7, 0xBB",
        "MSRValue": "0x0100400004",
        "Counter": "0,1,2,3",
@@ -593,6 +609,7 @@
        "CounterHTOff": "0,1,2,3"
    },
    {
        "PublicDescription": "Counts all demand code reads that miss in the L3 Offcore response can be programmed only with a specific pair of event select and counter MSR, and with specific event codes and predefine mask bit value in a dedicated MSR to specify attributes of the offcore transaction.",
        "EventCode": "0xB7, 0xBB",
        "MSRValue": "0x3fffc00004",
        "Counter": "0,1,2,3",
@@ -605,6 +622,7 @@
        "CounterHTOff": "0,1,2,3"
    },
    {
        "PublicDescription": "Counts all demand data writes (RFOs) that miss the L3 and the data is returned from local dram Offcore response can be programmed only with a specific pair of event select and counter MSR, and with specific event codes and predefine mask bit value in a dedicated MSR to specify attributes of the offcore transaction.",
        "EventCode": "0xB7, 0xBB",
        "MSRValue": "0x0100400002",
        "Counter": "0,1,2,3",
@@ -617,6 +635,7 @@
        "CounterHTOff": "0,1,2,3"
    },
    {
        "PublicDescription": "Counts all demand data writes (RFOs) that miss in the L3 Offcore response can be programmed only with a specific pair of event select and counter MSR, and with specific event codes and predefine mask bit value in a dedicated MSR to specify attributes of the offcore transaction.",
        "EventCode": "0xB7, 0xBB",
        "MSRValue": "0x3fffc00002",
        "Counter": "0,1,2,3",
@@ -629,6 +648,7 @@
        "CounterHTOff": "0,1,2,3"
    },
    {
        "PublicDescription": "Counts demand data reads that miss the L3 and the data is returned from local dram Offcore response can be programmed only with a specific pair of event select and counter MSR, and with specific event codes and predefine mask bit value in a dedicated MSR to specify attributes of the offcore transaction.",
        "EventCode": "0xB7, 0xBB",
        "MSRValue": "0x0100400001",
        "Counter": "0,1,2,3",
@@ -641,6 +661,7 @@
        "CounterHTOff": "0,1,2,3"
    },
    {
        "PublicDescription": "Counts demand data reads that miss in the L3 Offcore response can be programmed only with a specific pair of event select and counter MSR, and with specific event codes and predefine mask bit value in a dedicated MSR to specify attributes of the offcore transaction.",
        "EventCode": "0xB7, 0xBB",
        "MSRValue": "0x3fffc00001",
        "Counter": "0,1,2,3",
+10 −10
Original line number Diff line number Diff line
@@ -9,16 +9,6 @@
        "BriefDescription": "Unhalted core cycles when the thread is in ring 0",
        "CounterHTOff": "0,1,2,3,4,5,6,7"
    },
    {
        "PublicDescription": "Unhalted core cycles when the thread is not in ring 0.",
        "EventCode": "0x5C",
        "Counter": "0,1,2,3",
        "UMask": "0x2",
        "EventName": "CPL_CYCLES.RING123",
        "SampleAfterValue": "2000003",
        "BriefDescription": "Unhalted core cycles when thread is in rings 1, 2, or 3",
        "CounterHTOff": "0,1,2,3,4,5,6,7"
    },
    {
        "EventCode": "0x5C",
        "Counter": "0,1,2,3",
@@ -30,6 +20,16 @@
        "CounterMask": "1",
        "CounterHTOff": "0,1,2,3,4,5,6,7"
    },
    {
        "PublicDescription": "Unhalted core cycles when the thread is not in ring 0.",
        "EventCode": "0x5C",
        "Counter": "0,1,2,3",
        "UMask": "0x2",
        "EventName": "CPL_CYCLES.RING123",
        "SampleAfterValue": "2000003",
        "BriefDescription": "Unhalted core cycles when thread is in rings 1, 2, or 3",
        "CounterHTOff": "0,1,2,3,4,5,6,7"
    },
    {
        "PublicDescription": "Cycles in which the L1D and L2 are locked, due to a UC lock or split lock.",
        "EventCode": "0x63",
Loading