1*178d0b5bSAli Mashtizadeh[ 2*178d0b5bSAli Mashtizadeh { 3*178d0b5bSAli Mashtizadeh "EventName": "de_op_queue_empty", 4*178d0b5bSAli Mashtizadeh "EventCode": "0xa9", 5*178d0b5bSAli Mashtizadeh "BriefDescription": "Cycles where the op queue is empty. Such cycles indicate that the frontend is not delivering instructions fast enough." 6*178d0b5bSAli Mashtizadeh }, 7*178d0b5bSAli Mashtizadeh { 8*178d0b5bSAli Mashtizadeh "EventName": "de_src_op_disp.x86_decoder", 9*178d0b5bSAli Mashtizadeh "EventCode": "0xaa", 10*178d0b5bSAli Mashtizadeh "BriefDescription": "Ops dispatched from x86 decoder.", 11*178d0b5bSAli Mashtizadeh "UMask": "0x01" 12*178d0b5bSAli Mashtizadeh }, 13*178d0b5bSAli Mashtizadeh { 14*178d0b5bSAli Mashtizadeh "EventName": "de_src_op_disp.op_cache", 15*178d0b5bSAli Mashtizadeh "EventCode": "0xaa", 16*178d0b5bSAli Mashtizadeh "BriefDescription": "Ops dispatched from op cache.", 17*178d0b5bSAli Mashtizadeh "UMask": "0x02" 18*178d0b5bSAli Mashtizadeh }, 19*178d0b5bSAli Mashtizadeh { 20*178d0b5bSAli Mashtizadeh "EventName": "de_src_op_disp.all", 21*178d0b5bSAli Mashtizadeh "EventCode": "0xaa", 22*178d0b5bSAli Mashtizadeh "BriefDescription": "Ops dispatched from any source.", 23*178d0b5bSAli Mashtizadeh "UMask": "0x07" 24*178d0b5bSAli Mashtizadeh }, 25*178d0b5bSAli Mashtizadeh { 26*178d0b5bSAli Mashtizadeh "EventName": "de_dis_ops_from_decoder.any_fp", 27*178d0b5bSAli Mashtizadeh "EventCode": "0xab", 28*178d0b5bSAli Mashtizadeh "BriefDescription": "Ops dispatched from the decoder to a floating-point unit.", 29*178d0b5bSAli Mashtizadeh "UMask": "0x04" 30*178d0b5bSAli Mashtizadeh }, 31*178d0b5bSAli Mashtizadeh { 32*178d0b5bSAli Mashtizadeh "EventName": "de_dis_ops_from_decoder.any_int", 33*178d0b5bSAli Mashtizadeh "EventCode": "0xab", 34*178d0b5bSAli Mashtizadeh "BriefDescription": "Ops dispatched from the decoder to an integer unit.", 35*178d0b5bSAli Mashtizadeh "UMask": "0x08" 36*178d0b5bSAli Mashtizadeh }, 37*178d0b5bSAli Mashtizadeh { 38*178d0b5bSAli Mashtizadeh "EventName": "de_disp_stall_cycles_dynamic_tokens_part1.int_phy_reg_file_rsrc_stall", 39*178d0b5bSAli Mashtizadeh "EventCode": "0xae", 40*178d0b5bSAli Mashtizadeh "BriefDescription": "Cycles where a dispatch group is valid but does not get dispatched due to integer physical register file resource stalls.", 41*178d0b5bSAli Mashtizadeh "UMask": "0x01" 42*178d0b5bSAli Mashtizadeh }, 43*178d0b5bSAli Mashtizadeh { 44*178d0b5bSAli Mashtizadeh "EventName": "de_dispatch_stall_cycle_dynamic_tokens_part1.load_queue_rsrc_stall", 45*178d0b5bSAli Mashtizadeh "EventCode": "0xae", 46*178d0b5bSAli Mashtizadeh "BriefDescription": "Cycles where a dispatch group is valid but does not get dispatched due to load queue token stalls.", 47*178d0b5bSAli Mashtizadeh "UMask": "0x02" 48*178d0b5bSAli Mashtizadeh }, 49*178d0b5bSAli Mashtizadeh { 50*178d0b5bSAli Mashtizadeh "EventName": "de_dispatch_stall_cycle_dynamic_tokens_part1.store_queue_rsrc_stall", 51*178d0b5bSAli Mashtizadeh "EventCode": "0xae", 52*178d0b5bSAli Mashtizadeh "BriefDescription": "Cycles where a dispatch group is valid but does not get dispatched due to store queue token stalls.", 53*178d0b5bSAli Mashtizadeh "UMask": "0x04" 54*178d0b5bSAli Mashtizadeh }, 55*178d0b5bSAli Mashtizadeh { 56*178d0b5bSAli Mashtizadeh "EventName": "de_dispatch_stall_cycle_dynamic_tokens_part1.taken_brnch_buffer_rsrc", 57*178d0b5bSAli Mashtizadeh "EventCode": "0xae", 58*178d0b5bSAli Mashtizadeh "BriefDescription": "Cycles where a dispatch group is valid but does not get dispatched due to taken branch buffer resource stalls.", 59*178d0b5bSAli Mashtizadeh "UMask": "0x10" 60*178d0b5bSAli Mashtizadeh }, 61*178d0b5bSAli Mashtizadeh { 62*178d0b5bSAli Mashtizadeh "EventName": "de_dispatch_stall_cycle_dynamic_tokens_part1.fp_sch_rsrc_stall", 63*178d0b5bSAli Mashtizadeh "EventCode": "0xae", 64*178d0b5bSAli Mashtizadeh "BriefDescription": "Cycles where a dispatch group is valid but does not get dispatched due to floating-point non-schedulable queue token stalls.", 65*178d0b5bSAli Mashtizadeh "UMask": "0x40" 66*178d0b5bSAli Mashtizadeh }, 67*178d0b5bSAli Mashtizadeh { 68*178d0b5bSAli Mashtizadeh "EventName": "de_dispatch_stall_cycle_dynamic_tokens_part2.int_sq0", 69*178d0b5bSAli Mashtizadeh "EventCode": "0xaf", 70*178d0b5bSAli Mashtizadeh "BriefDescription": "Cycles where a dispatch group is valid but does not get dispatched due to unavailability of integer scheduler 0 tokens.", 71*178d0b5bSAli Mashtizadeh "UMask": "0x01" 72*178d0b5bSAli Mashtizadeh }, 73*178d0b5bSAli Mashtizadeh { 74*178d0b5bSAli Mashtizadeh "EventName": "de_dispatch_stall_cycle_dynamic_tokens_part2.int_sq1", 75*178d0b5bSAli Mashtizadeh "EventCode": "0xaf", 76*178d0b5bSAli Mashtizadeh "BriefDescription": "Cycles where a dispatch group is valid but does not get dispatched due to unavailability of integer scheduler 1 tokens.", 77*178d0b5bSAli Mashtizadeh "UMask": "0x02" 78*178d0b5bSAli Mashtizadeh }, 79*178d0b5bSAli Mashtizadeh { 80*178d0b5bSAli Mashtizadeh "EventName": "de_dispatch_stall_cycle_dynamic_tokens_part2.int_sq2", 81*178d0b5bSAli Mashtizadeh "EventCode": "0xaf", 82*178d0b5bSAli Mashtizadeh "BriefDescription": "Cycles where a dispatch group is valid but does not get dispatched due to unavailability of integer scheduler 2 tokens.", 83*178d0b5bSAli Mashtizadeh "UMask": "0x04" 84*178d0b5bSAli Mashtizadeh }, 85*178d0b5bSAli Mashtizadeh { 86*178d0b5bSAli Mashtizadeh "EventName": "de_dispatch_stall_cycle_dynamic_tokens_part2.int_sq3", 87*178d0b5bSAli Mashtizadeh "EventCode": "0xaf", 88*178d0b5bSAli Mashtizadeh "BriefDescription": "Cycles where a dispatch group is valid but does not get dispatched due to unavailability of integer scheduler 3 tokens.", 89*178d0b5bSAli Mashtizadeh "UMask": "0x08" 90*178d0b5bSAli Mashtizadeh }, 91*178d0b5bSAli Mashtizadeh { 92*178d0b5bSAli Mashtizadeh "EventName": "de_dispatch_stall_cycle_dynamic_tokens_part2.int_sq4", 93*178d0b5bSAli Mashtizadeh "EventCode": "0xaf", 94*178d0b5bSAli Mashtizadeh "BriefDescription": "Cycles where a dispatch group is valid but does not get dispatched due to unavailability of integer scheduler 4 tokens.", 95*178d0b5bSAli Mashtizadeh "UMask": "0x10" 96*178d0b5bSAli Mashtizadeh }, 97*178d0b5bSAli Mashtizadeh { 98*178d0b5bSAli Mashtizadeh "EventName": "de_dispatch_stall_cycle_dynamic_tokens_part2.int_sq5", 99*178d0b5bSAli Mashtizadeh "EventCode": "0xaf", 100*178d0b5bSAli Mashtizadeh "BriefDescription": "Cycles where a dispatch group is valid but does not get dispatched due to unavailability of integer scheduler 5 tokens.", 101*178d0b5bSAli Mashtizadeh "UMask": "0x20" 102*178d0b5bSAli Mashtizadeh }, 103*178d0b5bSAli Mashtizadeh { 104*178d0b5bSAli Mashtizadeh "EventName": "de_dispatch_stall_cycle_dynamic_tokens_part2.ret_q", 105*178d0b5bSAli Mashtizadeh "EventCode": "0xaf", 106*178d0b5bSAli Mashtizadeh "BriefDescription": "Cycles where a dispatch group is valid but does not get dispatched due to unavailability of retire queue tokens.", 107*178d0b5bSAli Mashtizadeh "UMask": "0x80" 108*178d0b5bSAli Mashtizadeh }, 109*178d0b5bSAli Mashtizadeh { 110*178d0b5bSAli Mashtizadeh "EventName": "de_dispatch_stall_cycle_dynamic_tokens_part2.all", 111*178d0b5bSAli Mashtizadeh "EventCode": "0xaf", 112*178d0b5bSAli Mashtizadeh "BriefDescription": "Cycles where a dispatch group is valid but does not get dispatched due to any token stalls.", 113*178d0b5bSAli Mashtizadeh "UMask": "0xbf" 114*178d0b5bSAli Mashtizadeh }, 115*178d0b5bSAli Mashtizadeh { 116*178d0b5bSAli Mashtizadeh "EventName": "de_no_dispatch_per_slot.no_ops_from_frontend", 117*178d0b5bSAli Mashtizadeh "EventCode": "0x1a0", 118*178d0b5bSAli Mashtizadeh "BriefDescription": "Dispatch slots in each cycle that were empty because the frontend did not supply ops.", 119*178d0b5bSAli Mashtizadeh "UMask": "0x01" 120*178d0b5bSAli Mashtizadeh }, 121*178d0b5bSAli Mashtizadeh { 122*178d0b5bSAli Mashtizadeh "EventName": "de_no_dispatch_per_slot.backend_stalls", 123*178d0b5bSAli Mashtizadeh "EventCode": "0x1a0", 124*178d0b5bSAli Mashtizadeh "BriefDescription": "Dispatch slots in each cycle that were unused because of backend stalls.", 125*178d0b5bSAli Mashtizadeh "UMask": "0x1e" 126*178d0b5bSAli Mashtizadeh }, 127*178d0b5bSAli Mashtizadeh { 128*178d0b5bSAli Mashtizadeh "EventName": "de_no_dispatch_per_slot.smt_contention", 129*178d0b5bSAli Mashtizadeh "EventCode": "0x1a0", 130*178d0b5bSAli Mashtizadeh "BriefDescription": "Dispatch slots in each cycle that were unused because the dispatch cycle was granted to the other SMT thread.", 131*178d0b5bSAli Mashtizadeh "UMask": "0x60" 132*178d0b5bSAli Mashtizadeh }, 133*178d0b5bSAli Mashtizadeh { 134*178d0b5bSAli Mashtizadeh "EventName": "de_additional_resource_stalls.dispatch_stalls", 135*178d0b5bSAli Mashtizadeh "EventCode": "0x1a2", 136*178d0b5bSAli Mashtizadeh "BriefDescription": "Counts additional cycles where dispatch is stalled due to a lack of dispatch resources.", 137*178d0b5bSAli Mashtizadeh "UMask": "0x30" 138*178d0b5bSAli Mashtizadeh } 139*178d0b5bSAli Mashtizadeh] 140