1[ 2 { 3 "BriefDescription": "Number of occurrences where a microcode assist is invoked by hardware.", 4 "CollectPEBSRecord": "2", 5 "Counter": "0,1,2,3,4,5,6,7", 6 "EventCode": "0xc1", 7 "EventName": "ASSISTS.ANY", 8 "PEBScounters": "0,1,2,3,4,5,6,7", 9 "PublicDescription": "Counts the number of occurrences where a microcode assist is invoked by hardware Examples include AD (page Access Dirty), FP and AVX related assists.", 10 "SampleAfterValue": "100003", 11 "UMask": "0x7" 12 }, 13 { 14 "BriefDescription": "Core cycles where the core was running in a manner where Turbo may be clipped to the Non-AVX turbo schedule.", 15 "CollectPEBSRecord": "2", 16 "Counter": "0,1,2,3", 17 "EventCode": "0x28", 18 "EventName": "CORE_POWER.LVL0_TURBO_LICENSE", 19 "PEBScounters": "0,1,2,3", 20 "PublicDescription": "Counts Core cycles where the core was running with power-delivery for baseline license level 0. This includes non-AVX codes, SSE, AVX 128-bit, and low-current AVX 256-bit codes.", 21 "SampleAfterValue": "200003", 22 "UMask": "0x7" 23 }, 24 { 25 "BriefDescription": "Core cycles where the core was running in a manner where Turbo may be clipped to the AVX2 turbo schedule.", 26 "CollectPEBSRecord": "2", 27 "Counter": "0,1,2,3", 28 "EventCode": "0x28", 29 "EventName": "CORE_POWER.LVL1_TURBO_LICENSE", 30 "PEBScounters": "0,1,2,3", 31 "PublicDescription": "Counts Core cycles where the core was running with power-delivery for license level 1. This includes high current AVX 256-bit instructions as well as low current AVX 512-bit instructions.", 32 "SampleAfterValue": "200003", 33 "UMask": "0x18" 34 }, 35 { 36 "BriefDescription": "Core cycles where the core was running in a manner where Turbo may be clipped to the AVX512 turbo schedule.", 37 "CollectPEBSRecord": "2", 38 "Counter": "0,1,2,3", 39 "EventCode": "0x28", 40 "EventName": "CORE_POWER.LVL2_TURBO_LICENSE", 41 "PEBScounters": "0,1,2,3", 42 "PublicDescription": "Core cycles where the core was running with power-delivery for license level 2 (introduced in Skylake Server microarchtecture). This includes high current AVX 512-bit instructions.", 43 "SampleAfterValue": "200003", 44 "UMask": "0x20" 45 }, 46 { 47 "BriefDescription": "Counts demand data reads that hit a cacheline in the L3 where a snoop hit in another cores caches, data forwarding is required as the data is modified.", 48 "CollectPEBSRecord": "2", 49 "Counter": "0,1,2,3", 50 "EventCode": "0xB7, 0xBB", 51 "EventName": "OCR.DEMAND_DATA_RD.L3_HIT.SNOOP_HITM", 52 "MSRIndex": "0x1a6,0x1a7", 53 "MSRValue": "0x10003C0001", 54 "Offcore": "1", 55 "PEBScounters": "0,1,2,3", 56 "PublicDescription": "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.", 57 "SampleAfterValue": "100003", 58 "UMask": "0x1" 59 }, 60 { 61 "BriefDescription": "OCR.DEMAND_DATA_RD.L3_HIT.SNOOP_HIT_WITH_FWD", 62 "CollectPEBSRecord": "2", 63 "Counter": "0,1,2,3", 64 "EventCode": "0xB7, 0xBB", 65 "EventName": "OCR.DEMAND_DATA_RD.L3_HIT.SNOOP_HIT_WITH_FWD", 66 "MSRIndex": "0x1a6,0x1a7", 67 "MSRValue": "0x8003C0001", 68 "Offcore": "1", 69 "PEBScounters": "0,1,2,3", 70 "PublicDescription": "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.", 71 "SampleAfterValue": "100003", 72 "UMask": "0x1" 73 }, 74 { 75 "BriefDescription": "Counts demand reads for ownership (RFO) requests and software prefetches for exclusive ownership (PREFETCHW) that hit a cacheline in the L3 where a snoop hit in another cores caches, data forwarding is required as the data is modified.", 76 "CollectPEBSRecord": "2", 77 "Counter": "0,1,2,3", 78 "EventCode": "0xB7, 0xBB", 79 "EventName": "OCR.DEMAND_RFO.L3_HIT.SNOOP_HITM", 80 "MSRIndex": "0x1a6,0x1a7", 81 "MSRValue": "0x10003C0002", 82 "Offcore": "1", 83 "PEBScounters": "0,1,2,3", 84 "PublicDescription": "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.", 85 "SampleAfterValue": "100003", 86 "UMask": "0x1" 87 }, 88 { 89 "BriefDescription": "Counts streaming stores that have any type of response.", 90 "CollectPEBSRecord": "2", 91 "Counter": "0,1,2,3", 92 "EventCode": "0xB7, 0xBB", 93 "EventName": "OCR.STREAMING_WR.ANY_RESPONSE", 94 "MSRIndex": "0x1a6,0x1a7", 95 "MSRValue": "0x10800", 96 "Offcore": "1", 97 "PEBScounters": "0,1,2,3", 98 "PublicDescription": "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.", 99 "SampleAfterValue": "100003", 100 "UMask": "0x1" 101 }, 102 { 103 "BriefDescription": "Number of PREFETCHNTA instructions executed.", 104 "CollectPEBSRecord": "2", 105 "Counter": "0,1,2,3", 106 "EventCode": "0x32", 107 "EventName": "SW_PREFETCH_ACCESS.NTA", 108 "PEBScounters": "0,1,2,3", 109 "PublicDescription": "Counts the number of PREFETCHNTA instructions executed.", 110 "SampleAfterValue": "100003", 111 "UMask": "0x1" 112 }, 113 { 114 "BriefDescription": "Number of PREFETCHW instructions executed.", 115 "CollectPEBSRecord": "2", 116 "Counter": "0,1,2,3", 117 "EventCode": "0x32", 118 "EventName": "SW_PREFETCH_ACCESS.PREFETCHW", 119 "PEBScounters": "0,1,2,3", 120 "PublicDescription": "Counts the number of PREFETCHW instructions executed.", 121 "SampleAfterValue": "100003", 122 "UMask": "0x8" 123 }, 124 { 125 "BriefDescription": "Number of PREFETCHT0 instructions executed.", 126 "CollectPEBSRecord": "2", 127 "Counter": "0,1,2,3", 128 "EventCode": "0x32", 129 "EventName": "SW_PREFETCH_ACCESS.T0", 130 "PEBScounters": "0,1,2,3", 131 "PublicDescription": "Counts the number of PREFETCHT0 instructions executed.", 132 "SampleAfterValue": "100003", 133 "UMask": "0x2" 134 }, 135 { 136 "BriefDescription": "Number of PREFETCHT1 or PREFETCHT2 instructions executed.", 137 "CollectPEBSRecord": "2", 138 "Counter": "0,1,2,3", 139 "EventCode": "0x32", 140 "EventName": "SW_PREFETCH_ACCESS.T1_T2", 141 "PEBScounters": "0,1,2,3", 142 "PublicDescription": "Counts the number of PREFETCHT1 or PREFETCHT2 instructions executed.", 143 "SampleAfterValue": "100003", 144 "UMask": "0x4" 145 }, 146 { 147 "BriefDescription": "TMA slots where no uops were being issued due to lack of back-end resources.", 148 "CollectPEBSRecord": "2", 149 "Counter": "0,1,2,3,4,5,6,7", 150 "EventCode": "0xa4", 151 "EventName": "TOPDOWN.BACKEND_BOUND_SLOTS", 152 "PEBScounters": "0,1,2,3,4,5,6,7", 153 "PublicDescription": "Counts the number of Top-down Microarchitecture Analysis (TMA) method's slots where no micro-operations were being issued from front-end to back-end of the machine due to lack of back-end resources.", 154 "SampleAfterValue": "10000003", 155 "UMask": "0x2" 156 }, 157 { 158 "BriefDescription": "TMA slots wasted due to incorrect speculation by branch mispredictions", 159 "CollectPEBSRecord": "2", 160 "Counter": "0,1,2,3,4,5,6,7", 161 "EventCode": "0xa4", 162 "EventName": "TOPDOWN.BR_MISPREDICT_SLOTS", 163 "PEBScounters": "0,1,2,3,4,5,6,7", 164 "PublicDescription": "Number of TMA slots that were wasted due to incorrect speculation by branch mispredictions. This event estimates number of operations that were issued but not retired from the specualtive path as well as the out-of-order engine recovery past a branch misprediction.", 165 "SampleAfterValue": "10000003", 166 "UMask": "0x8" 167 }, 168 { 169 "BriefDescription": "TMA slots available for an unhalted logical processor. Fixed counter - architectural event", 170 "CollectPEBSRecord": "2", 171 "Counter": "Fixed counter 3", 172 "EventName": "TOPDOWN.SLOTS", 173 "PEBScounters": "35", 174 "PublicDescription": "Number of available slots for an unhalted logical processor. The event increments by machine-width of the narrowest pipeline as employed by the Top-down Microarchitecture Analysis method (TMA). The count is distributed among unhalted logical processors (hyper-threads) who share the same physical core. Software can use this event as the denominator for the top-level metrics of the TMA method. This architectural event is counted on a designated fixed counter (Fixed Counter 3).", 175 "SampleAfterValue": "10000003", 176 "UMask": "0x4" 177 }, 178 { 179 "BriefDescription": "TMA slots available for an unhalted logical processor. General counter - architectural event", 180 "CollectPEBSRecord": "2", 181 "Counter": "0,1,2,3,4,5,6,7", 182 "EventCode": "0xa4", 183 "EventName": "TOPDOWN.SLOTS_P", 184 "PEBScounters": "0,1,2,3,4,5,6,7", 185 "PublicDescription": "Counts the number of available slots for an unhalted logical processor. The event increments by machine-width of the narrowest pipeline as employed by the Top-down Microarchitecture Analysis method. The count is distributed among unhalted logical processors (hyper-threads) who share the same physical core.", 186 "SampleAfterValue": "10000003", 187 "UMask": "0x1" 188 } 189]