1[ 2 { 3 "EventName": "ex_ret_instr", 4 "EventCode": "0xc0", 5 "BriefDescription": "Retired instructions." 6 }, 7 { 8 "EventName": "ex_ret_ops", 9 "EventCode": "0xc1", 10 "BriefDescription": "Retired macro-ops." 11 }, 12 { 13 "EventName": "ex_ret_brn", 14 "EventCode": "0xc2", 15 "BriefDescription": "Retired branch instructions (all types of architectural control flow changes, including exceptions and interrupts)." 16 }, 17 { 18 "EventName": "ex_ret_brn_misp", 19 "EventCode": "0xc3", 20 "BriefDescription": "Retired branch instructions that were mispredicted." 21 }, 22 { 23 "EventName": "ex_ret_brn_tkn", 24 "EventCode": "0xc4", 25 "BriefDescription": "Retired taken branch instructions (all types of architectural control flow changes, including exceptions and interrupts)." 26 }, 27 { 28 "EventName": "ex_ret_brn_tkn_misp", 29 "EventCode": "0xc5", 30 "BriefDescription": "Retired taken branch instructions that were mispredicted." 31 }, 32 { 33 "EventName": "ex_ret_brn_far", 34 "EventCode": "0xc6", 35 "BriefDescription": "Retired far control transfers (far call, far jump, far return, IRET, SYSCALL and SYSRET, plus exceptions and interrupts). Far control transfers are not subject to branch prediction." 36 }, 37 { 38 "EventName": "ex_ret_near_ret", 39 "EventCode": "0xc8", 40 "BriefDescription": "Retired near returns (RET or RET Iw)." 41 }, 42 { 43 "EventName": "ex_ret_near_ret_mispred", 44 "EventCode": "0xc9", 45 "BriefDescription": "Retired near returns that were mispredicted. Each misprediction incurs the same penalty as that of a mispredicted conditional branch instruction." 46 }, 47 { 48 "EventName": "ex_ret_brn_ind_misp", 49 "EventCode": "0xca", 50 "BriefDescription": "Retired indirect branch instructions that were mispredicted (only EX mispredicts). Each misprediction incurs the same penalty as that of a mispredicted conditional branch instruction." 51 }, 52 { 53 "EventName": "ex_ret_brn_ind", 54 "EventCode": "0xcc", 55 "BriefDescription": "Retired indirect branch instructions." 56 }, 57 { 58 "EventName": "ex_ret_brn_cond", 59 "EventCode": "0xd1", 60 "BriefDescription": "Retired conditional branch instructions." 61 }, 62 { 63 "EventName": "ex_div_busy", 64 "EventCode": "0xd3", 65 "BriefDescription": "Cycles where the divider is busy." 66 }, 67 { 68 "EventName": "ex_div_count", 69 "EventCode": "0xd4", 70 "BriefDescription": "Divide ops executed." 71 }, 72 { 73 "EventName": "ex_no_retire.empty", 74 "EventCode": "0xd6", 75 "BriefDescription": "Cycles where the thread does not retire any ops due to a lack of valid ops in the retire queue (may be caused by front-end bottlenecks or pipeline redirects).", 76 "UMask": "0x01" 77 }, 78 { 79 "EventName": "ex_no_retire.not_complete", 80 "EventCode": "0xd6", 81 "BriefDescription": "Cycles where the thread does not retire any ops as the oldest retire slot is waiting to be marked as completed.", 82 "UMask": "0x02" 83 }, 84 { 85 "EventName": "ex_no_retire.other", 86 "EventCode": "0xd6", 87 "BriefDescription": "Cycles where the thread does not retire any ops due to other reasons (retire breaks, traps, faults, etc.).", 88 "UMask": "0x08" 89 }, 90 { 91 "EventName": "ex_no_retire.thread_not_selected", 92 "EventCode": "0xd6", 93 "BriefDescription": "Cycles where the thread does not retire any ops as thread arbitration did not select the current thread.", 94 "UMask": "0x10" 95 }, 96 { 97 "EventName": "ex_no_retire.load_not_complete", 98 "EventCode": "0xd6", 99 "BriefDescription": "Cycles where the thread does not retire any ops due to missing load completion.", 100 "UMask": "0xa2" 101 }, 102 { 103 "EventName": "ex_ret_ucode_instr", 104 "EventCode": "0x1c1", 105 "BriefDescription": "Retired microcoded instructions." 106 }, 107 { 108 "EventName": "ex_ret_ucode_ops", 109 "EventCode": "0x1c2", 110 "BriefDescription": "Retired microcode ops." 111 }, 112 { 113 "EventName": "ex_ret_brn_cond_misp", 114 "EventCode": "0x1c7", 115 "BriefDescription": "Retired conditional branch instructions that were mispredicted due to direction mismatch." 116 }, 117 { 118 "EventName": "ex_ret_brn_uncond_ind_near_misp", 119 "EventCode": "0x1c8", 120 "BriefDescription": "Retired unconditional indirect near branch instructions that were mispredicted." 121 }, 122 { 123 "EventName": "ex_ret_brn_uncond", 124 "EventCode": "0x1c9", 125 "BriefDescription": "Retired unconditional branch instructions." 126 }, 127 { 128 "EventName": "ex_tagged_ibs_ops.tagged", 129 "EventCode": "0x1cf", 130 "BriefDescription": "Execution IBS tagged ops.", 131 "UMask": "0x01" 132 }, 133 { 134 "EventName": "ex_tagged_ibs_ops.tagged_ret", 135 "EventCode": "0x1cf", 136 "BriefDescription": "Execution IBS tagged ops that retired.", 137 "UMask": "0x02" 138 }, 139 { 140 "EventName": "ex_tagged_ibs_ops.rollovers", 141 "EventCode": "0x1cf", 142 "BriefDescription": "Execution IBS periodic counter rollovers due to a previous tagged op not being IBS complete.", 143 "UMask": "0x04" 144 }, 145 { 146 "EventName": "ex_tagged_ibs_ops.filtered", 147 "EventCode": "0x1cf", 148 "BriefDescription": "Execution IBS tagged ops that retired but were discarded due to IBS filtering.", 149 "UMask": "0x08" 150 }, 151 { 152 "EventName": "ex_tagged_ibs_ops.valid", 153 "EventCode": "0x1cf", 154 "BriefDescription": "Execution IBS tagged ops that resulted in a valid sample and an IBS interrupt.", 155 "UMask": "0x10" 156 }, 157 { 158 "EventName": "ex_ret_fused_instr", 159 "EventCode": "0x1d0", 160 "BriefDescription": "Retired fused instructions." 161 }, 162 { 163 "EventName": "ex_mprof_ibs_ops.tagged", 164 "EventCode": "0x2c0", 165 "BriefDescription": "Memory Profiler IBS tagged ops.", 166 "UMask": "0x01" 167 }, 168 { 169 "EventName": "ex_mprof_ibs_ops.tagged_ret", 170 "EventCode": "0x2c0", 171 "BriefDescription": "Memory Profiler IBS tagged ops that retired.", 172 "UMask": "0x02" 173 }, 174 { 175 "EventName": "ex_mprof_ibs_ops.rollovers", 176 "EventCode": "0x2c0", 177 "BriefDescription": "Memory Profiler IBS periodic counter rollovers due to a previous tagged op not being IBS complete.", 178 "UMask": "0x04" 179 }, 180 { 181 "EventName": "ex_mprof_ibs_ops.filtered", 182 "EventCode": "0x2c0", 183 "BriefDescription": "Memory Profiler IBS tagged ops that retired but were discarded due to IBS filtering.", 184 "UMask": "0x08" 185 }, 186 { 187 "EventName": "ex_mprof_ibs_ops.valid", 188 "EventCode": "0x2c0", 189 "BriefDescription": "Memory Profiler IBS tagged ops that resulted in a valid sample and an IBS interrupt.", 190 "UMask": "0x10" 191 } 192] 193