17003f00fSAndi Kleen[ 27003f00fSAndi Kleen { 3667433c4SIan Rogers "BriefDescription": "LLC prefetch misses for code reads. Derived from unc_c_tor_inserts.miss_opcode", 411c2302cSIan Rogers "Counter": "0,1,2,3", 5667433c4SIan Rogers "EventCode": "0x35", 6667433c4SIan Rogers "EventName": "LLC_MISSES.CODE_LLC_PREFETCH", 7667433c4SIan Rogers "Filter": "filter_opc=0x191", 8667433c4SIan Rogers "PerPkg": "1", 9667433c4SIan Rogers "PublicDescription": "Counts the number of entries successfully inserted into the TOR that match qualifications specified by the subevent. There are a number of subevent 'filters' but only a subset of the subevent combinations are valid. Subevents that require an opcode or NID match require the Cn_MSR_PMON_BOX_FILTER.{opc, nid} field to be set. If, for example, one wanted to count DRD Local Misses, one should select MISS_OPC_MATCH and set Cn_MSR_PMON_BOX_FILTER.opc to DRD (0x182).; Miss transactions inserted into the TOR that match an opcode.", 10667433c4SIan Rogers "ScaleUnit": "64Bytes", 11667433c4SIan Rogers "UMask": "0x3", 12579c0472SIan Rogers "Unit": "CBOX" 13667433c4SIan Rogers }, 14667433c4SIan Rogers { 15667433c4SIan Rogers "BriefDescription": "LLC prefetch misses for data reads. Derived from unc_c_tor_inserts.miss_opcode", 1611c2302cSIan Rogers "Counter": "0,1,2,3", 17667433c4SIan Rogers "EventCode": "0x35", 18667433c4SIan Rogers "EventName": "LLC_MISSES.DATA_LLC_PREFETCH", 19667433c4SIan Rogers "Filter": "filter_opc=0x192", 20667433c4SIan Rogers "PerPkg": "1", 21667433c4SIan Rogers "PublicDescription": "Counts the number of entries successfully inserted into the TOR that match qualifications specified by the subevent. There are a number of subevent 'filters' but only a subset of the subevent combinations are valid. Subevents that require an opcode or NID match require the Cn_MSR_PMON_BOX_FILTER.{opc, nid} field to be set. If, for example, one wanted to count DRD Local Misses, one should select MISS_OPC_MATCH and set Cn_MSR_PMON_BOX_FILTER.opc to DRD (0x182).; Miss transactions inserted into the TOR that match an opcode.", 22667433c4SIan Rogers "ScaleUnit": "64Bytes", 23667433c4SIan Rogers "UMask": "0x3", 24579c0472SIan Rogers "Unit": "CBOX" 25667433c4SIan Rogers }, 26667433c4SIan Rogers { 27667433c4SIan Rogers "BriefDescription": "LLC misses - demand and prefetch data reads - excludes LLC prefetches. Derived from unc_c_tor_inserts.miss_opcode", 2811c2302cSIan Rogers "Counter": "0,1,2,3", 29667433c4SIan Rogers "EventCode": "0x35", 30667433c4SIan Rogers "EventName": "LLC_MISSES.DATA_READ", 31667433c4SIan Rogers "Filter": "filter_opc=0x182", 32667433c4SIan Rogers "PerPkg": "1", 33667433c4SIan Rogers "PublicDescription": "Counts the number of entries successfully inserted into the TOR that match qualifications specified by the subevent. There are a number of subevent 'filters' but only a subset of the subevent combinations are valid. Subevents that require an opcode or NID match require the Cn_MSR_PMON_BOX_FILTER.{opc, nid} field to be set. If, for example, one wanted to count DRD Local Misses, one should select MISS_OPC_MATCH and set Cn_MSR_PMON_BOX_FILTER.opc to DRD (0x182).; Miss transactions inserted into the TOR that match an opcode.", 34667433c4SIan Rogers "ScaleUnit": "64Bytes", 35667433c4SIan Rogers "UMask": "0x3", 36579c0472SIan Rogers "Unit": "CBOX" 37667433c4SIan Rogers }, 38667433c4SIan Rogers { 39667433c4SIan Rogers "BriefDescription": "MMIO reads. Derived from unc_c_tor_inserts.miss_opcode", 4011c2302cSIan Rogers "Counter": "0,1,2,3", 41667433c4SIan Rogers "EventCode": "0x35", 42667433c4SIan Rogers "EventName": "LLC_MISSES.MMIO_READ", 43667433c4SIan Rogers "Filter": "filter_opc=0x187,filter_nc=1", 44667433c4SIan Rogers "PerPkg": "1", 45667433c4SIan Rogers "PublicDescription": "Counts the number of entries successfully inserted into the TOR that match qualifications specified by the subevent. There are a number of subevent 'filters' but only a subset of the subevent combinations are valid. Subevents that require an opcode or NID match require the Cn_MSR_PMON_BOX_FILTER.{opc, nid} field to be set. If, for example, one wanted to count DRD Local Misses, one should select MISS_OPC_MATCH and set Cn_MSR_PMON_BOX_FILTER.opc to DRD (0x182).; Miss transactions inserted into the TOR that match an opcode.", 46667433c4SIan Rogers "ScaleUnit": "64Bytes", 47667433c4SIan Rogers "UMask": "0x3", 48579c0472SIan Rogers "Unit": "CBOX" 49667433c4SIan Rogers }, 50667433c4SIan Rogers { 51667433c4SIan Rogers "BriefDescription": "MMIO writes. Derived from unc_c_tor_inserts.miss_opcode", 5211c2302cSIan Rogers "Counter": "0,1,2,3", 53667433c4SIan Rogers "EventCode": "0x35", 54667433c4SIan Rogers "EventName": "LLC_MISSES.MMIO_WRITE", 55667433c4SIan Rogers "Filter": "filter_opc=0x18f,filter_nc=1", 56667433c4SIan Rogers "PerPkg": "1", 57667433c4SIan Rogers "PublicDescription": "Counts the number of entries successfully inserted into the TOR that match qualifications specified by the subevent. There are a number of subevent 'filters' but only a subset of the subevent combinations are valid. Subevents that require an opcode or NID match require the Cn_MSR_PMON_BOX_FILTER.{opc, nid} field to be set. If, for example, one wanted to count DRD Local Misses, one should select MISS_OPC_MATCH and set Cn_MSR_PMON_BOX_FILTER.opc to DRD (0x182).; Miss transactions inserted into the TOR that match an opcode.", 58667433c4SIan Rogers "ScaleUnit": "64Bytes", 59667433c4SIan Rogers "UMask": "0x3", 60579c0472SIan Rogers "Unit": "CBOX" 61667433c4SIan Rogers }, 62667433c4SIan Rogers { 63667433c4SIan Rogers "BriefDescription": "PCIe write misses (full cache line). Derived from unc_c_tor_inserts.miss_opcode", 6411c2302cSIan Rogers "Counter": "0,1,2,3", 65667433c4SIan Rogers "EventCode": "0x35", 66667433c4SIan Rogers "EventName": "LLC_MISSES.PCIE_NON_SNOOP_WRITE", 67667433c4SIan Rogers "Filter": "filter_opc=0x1c8,filter_tid=0x3e", 68667433c4SIan Rogers "PerPkg": "1", 69667433c4SIan Rogers "PublicDescription": "Counts the number of entries successfully inserted into the TOR that match qualifications specified by the subevent. There are a number of subevent 'filters' but only a subset of the subevent combinations are valid. Subevents that require an opcode or NID match require the Cn_MSR_PMON_BOX_FILTER.{opc, nid} field to be set. If, for example, one wanted to count DRD Local Misses, one should select MISS_OPC_MATCH and set Cn_MSR_PMON_BOX_FILTER.opc to DRD (0x182).; Miss transactions inserted into the TOR that match an opcode.", 70667433c4SIan Rogers "ScaleUnit": "64Bytes", 71667433c4SIan Rogers "UMask": "0x3", 72579c0472SIan Rogers "Unit": "CBOX" 73667433c4SIan Rogers }, 74667433c4SIan Rogers { 75667433c4SIan Rogers "BriefDescription": "LLC misses for PCIe read current. Derived from unc_c_tor_inserts.miss_opcode", 7611c2302cSIan Rogers "Counter": "0,1,2,3", 77667433c4SIan Rogers "EventCode": "0x35", 78667433c4SIan Rogers "EventName": "LLC_MISSES.PCIE_READ", 79667433c4SIan Rogers "Filter": "filter_opc=0x19e", 80667433c4SIan Rogers "PerPkg": "1", 81667433c4SIan Rogers "PublicDescription": "Counts the number of entries successfully inserted into the TOR that match qualifications specified by the subevent. There are a number of subevent 'filters' but only a subset of the subevent combinations are valid. Subevents that require an opcode or NID match require the Cn_MSR_PMON_BOX_FILTER.{opc, nid} field to be set. If, for example, one wanted to count DRD Local Misses, one should select MISS_OPC_MATCH and set Cn_MSR_PMON_BOX_FILTER.opc to DRD (0x182).; Miss transactions inserted into the TOR that match an opcode.", 82667433c4SIan Rogers "ScaleUnit": "64Bytes", 83667433c4SIan Rogers "UMask": "0x3", 84579c0472SIan Rogers "Unit": "CBOX" 85667433c4SIan Rogers }, 86667433c4SIan Rogers { 87667433c4SIan Rogers "BriefDescription": "ItoM write misses (as part of fast string memcpy stores) + PCIe full line writes. Derived from unc_c_tor_inserts.miss_opcode", 8811c2302cSIan Rogers "Counter": "0,1,2,3", 89667433c4SIan Rogers "EventCode": "0x35", 90667433c4SIan Rogers "EventName": "LLC_MISSES.PCIE_WRITE", 91667433c4SIan Rogers "Filter": "filter_opc=0x1c8", 92667433c4SIan Rogers "PerPkg": "1", 93667433c4SIan Rogers "PublicDescription": "Counts the number of entries successfully inserted into the TOR that match qualifications specified by the subevent. There are a number of subevent 'filters' but only a subset of the subevent combinations are valid. Subevents that require an opcode or NID match require the Cn_MSR_PMON_BOX_FILTER.{opc, nid} field to be set. If, for example, one wanted to count DRD Local Misses, one should select MISS_OPC_MATCH and set Cn_MSR_PMON_BOX_FILTER.opc to DRD (0x182).; Miss transactions inserted into the TOR that match an opcode.", 94667433c4SIan Rogers "ScaleUnit": "64Bytes", 95667433c4SIan Rogers "UMask": "0x3", 96579c0472SIan Rogers "Unit": "CBOX" 97667433c4SIan Rogers }, 98667433c4SIan Rogers { 99667433c4SIan Rogers "BriefDescription": "LLC prefetch misses for RFO. Derived from unc_c_tor_inserts.miss_opcode", 10011c2302cSIan Rogers "Counter": "0,1,2,3", 101667433c4SIan Rogers "EventCode": "0x35", 102667433c4SIan Rogers "EventName": "LLC_MISSES.RFO_LLC_PREFETCH", 103667433c4SIan Rogers "Filter": "filter_opc=0x190", 104667433c4SIan Rogers "PerPkg": "1", 105667433c4SIan Rogers "PublicDescription": "Counts the number of entries successfully inserted into the TOR that match qualifications specified by the subevent. There are a number of subevent 'filters' but only a subset of the subevent combinations are valid. Subevents that require an opcode or NID match require the Cn_MSR_PMON_BOX_FILTER.{opc, nid} field to be set. If, for example, one wanted to count DRD Local Misses, one should select MISS_OPC_MATCH and set Cn_MSR_PMON_BOX_FILTER.opc to DRD (0x182).; Miss transactions inserted into the TOR that match an opcode.", 106667433c4SIan Rogers "ScaleUnit": "64Bytes", 107667433c4SIan Rogers "UMask": "0x3", 108579c0472SIan Rogers "Unit": "CBOX" 109667433c4SIan Rogers }, 110667433c4SIan Rogers { 111667433c4SIan Rogers "BriefDescription": "LLC misses - Uncacheable reads (from cpu) . Derived from unc_c_tor_inserts.miss_opcode", 11211c2302cSIan Rogers "Counter": "0,1,2,3", 113667433c4SIan Rogers "EventCode": "0x35", 114667433c4SIan Rogers "EventName": "LLC_MISSES.UNCACHEABLE", 115667433c4SIan Rogers "Filter": "filter_opc=0x187", 116667433c4SIan Rogers "PerPkg": "1", 117667433c4SIan Rogers "PublicDescription": "Counts the number of entries successfully inserted into the TOR that match qualifications specified by the subevent. There are a number of subevent 'filters' but only a subset of the subevent combinations are valid. Subevents that require an opcode or NID match require the Cn_MSR_PMON_BOX_FILTER.{opc, nid} field to be set. If, for example, one wanted to count DRD Local Misses, one should select MISS_OPC_MATCH and set Cn_MSR_PMON_BOX_FILTER.opc to DRD (0x182).; Miss transactions inserted into the TOR that match an opcode.", 118667433c4SIan Rogers "ScaleUnit": "64Bytes", 119667433c4SIan Rogers "UMask": "0x3", 120579c0472SIan Rogers "Unit": "CBOX" 121667433c4SIan Rogers }, 122667433c4SIan Rogers { 123667433c4SIan Rogers "BriefDescription": "L2 demand and L2 prefetch code references to LLC. Derived from unc_c_tor_inserts.opcode", 12411c2302cSIan Rogers "Counter": "0,1,2,3", 125667433c4SIan Rogers "EventCode": "0x35", 126667433c4SIan Rogers "EventName": "LLC_REFERENCES.CODE_LLC_PREFETCH", 127667433c4SIan Rogers "Filter": "filter_opc=0x181", 128667433c4SIan Rogers "PerPkg": "1", 129667433c4SIan Rogers "PublicDescription": "Counts the number of entries successfully inserted into the TOR that match qualifications specified by the subevent. There are a number of subevent 'filters' but only a subset of the subevent combinations are valid. Subevents that require an opcode or NID match require the Cn_MSR_PMON_BOX_FILTER.{opc, nid} field to be set. If, for example, one wanted to count DRD Local Misses, one should select MISS_OPC_MATCH and set Cn_MSR_PMON_BOX_FILTER.opc to DRD (0x182).; Transactions inserted into the TOR that match an opcode (matched by Cn_MSR_PMON_BOX_FILTER.opc)", 130667433c4SIan Rogers "ScaleUnit": "64Bytes", 131667433c4SIan Rogers "UMask": "0x1", 132579c0472SIan Rogers "Unit": "CBOX" 133667433c4SIan Rogers }, 134667433c4SIan Rogers { 135667433c4SIan Rogers "BriefDescription": "PCIe writes (partial cache line). Derived from unc_c_tor_inserts.opcode", 13611c2302cSIan Rogers "Counter": "0,1,2,3", 137667433c4SIan Rogers "EventCode": "0x35", 138667433c4SIan Rogers "EventName": "LLC_REFERENCES.PCIE_NS_PARTIAL_WRITE", 139667433c4SIan Rogers "Filter": "filter_opc=0x180,filter_tid=0x3e", 140667433c4SIan Rogers "PerPkg": "1", 141667433c4SIan Rogers "PublicDescription": "Counts the number of entries successfully inserted into the TOR that match qualifications specified by the subevent. There are a number of subevent 'filters' but only a subset of the subevent combinations are valid. Subevents that require an opcode or NID match require the Cn_MSR_PMON_BOX_FILTER.{opc, nid} field to be set. If, for example, one wanted to count DRD Local Misses, one should select MISS_OPC_MATCH and set Cn_MSR_PMON_BOX_FILTER.opc to DRD (0x182).; Transactions inserted into the TOR that match an opcode (matched by Cn_MSR_PMON_BOX_FILTER.opc)", 142667433c4SIan Rogers "UMask": "0x1", 143579c0472SIan Rogers "Unit": "CBOX" 144667433c4SIan Rogers }, 145667433c4SIan Rogers { 146667433c4SIan Rogers "BriefDescription": "PCIe read current. Derived from unc_c_tor_inserts.opcode", 14711c2302cSIan Rogers "Counter": "0,1,2,3", 148667433c4SIan Rogers "EventCode": "0x35", 149667433c4SIan Rogers "EventName": "LLC_REFERENCES.PCIE_READ", 150667433c4SIan Rogers "Filter": "filter_opc=0x19e", 151667433c4SIan Rogers "PerPkg": "1", 152667433c4SIan Rogers "PublicDescription": "Counts the number of entries successfully inserted into the TOR that match qualifications specified by the subevent. There are a number of subevent 'filters' but only a subset of the subevent combinations are valid. Subevents that require an opcode or NID match require the Cn_MSR_PMON_BOX_FILTER.{opc, nid} field to be set. If, for example, one wanted to count DRD Local Misses, one should select MISS_OPC_MATCH and set Cn_MSR_PMON_BOX_FILTER.opc to DRD (0x182).; Transactions inserted into the TOR that match an opcode (matched by Cn_MSR_PMON_BOX_FILTER.opc)", 153667433c4SIan Rogers "ScaleUnit": "64Bytes", 154667433c4SIan Rogers "UMask": "0x1", 155579c0472SIan Rogers "Unit": "CBOX" 156667433c4SIan Rogers }, 157667433c4SIan Rogers { 158667433c4SIan Rogers "BriefDescription": "PCIe write references (full cache line). Derived from unc_c_tor_inserts.opcode", 15911c2302cSIan Rogers "Counter": "0,1,2,3", 160667433c4SIan Rogers "EventCode": "0x35", 161667433c4SIan Rogers "EventName": "LLC_REFERENCES.PCIE_WRITE", 162667433c4SIan Rogers "Filter": "filter_opc=0x1c8,filter_tid=0x3e", 163667433c4SIan Rogers "PerPkg": "1", 164667433c4SIan Rogers "PublicDescription": "Counts the number of entries successfully inserted into the TOR that match qualifications specified by the subevent. There are a number of subevent 'filters' but only a subset of the subevent combinations are valid. Subevents that require an opcode or NID match require the Cn_MSR_PMON_BOX_FILTER.{opc, nid} field to be set. If, for example, one wanted to count DRD Local Misses, one should select MISS_OPC_MATCH and set Cn_MSR_PMON_BOX_FILTER.opc to DRD (0x182).; Transactions inserted into the TOR that match an opcode (matched by Cn_MSR_PMON_BOX_FILTER.opc)", 165667433c4SIan Rogers "ScaleUnit": "64Bytes", 166667433c4SIan Rogers "UMask": "0x1", 167579c0472SIan Rogers "Unit": "CBOX" 168667433c4SIan Rogers }, 169667433c4SIan Rogers { 170667433c4SIan Rogers "BriefDescription": "Streaming stores (full cache line). Derived from unc_c_tor_inserts.opcode", 17111c2302cSIan Rogers "Counter": "0,1,2,3", 172667433c4SIan Rogers "EventCode": "0x35", 173667433c4SIan Rogers "EventName": "LLC_REFERENCES.STREAMING_FULL", 174667433c4SIan Rogers "Filter": "filter_opc=0x18c", 175667433c4SIan Rogers "PerPkg": "1", 176667433c4SIan Rogers "PublicDescription": "Counts the number of entries successfully inserted into the TOR that match qualifications specified by the subevent. There are a number of subevent 'filters' but only a subset of the subevent combinations are valid. Subevents that require an opcode or NID match require the Cn_MSR_PMON_BOX_FILTER.{opc, nid} field to be set. If, for example, one wanted to count DRD Local Misses, one should select MISS_OPC_MATCH and set Cn_MSR_PMON_BOX_FILTER.opc to DRD (0x182).; Transactions inserted into the TOR that match an opcode (matched by Cn_MSR_PMON_BOX_FILTER.opc)", 177667433c4SIan Rogers "ScaleUnit": "64Bytes", 178667433c4SIan Rogers "UMask": "0x1", 179579c0472SIan Rogers "Unit": "CBOX" 180667433c4SIan Rogers }, 181667433c4SIan Rogers { 182667433c4SIan Rogers "BriefDescription": "Streaming stores (partial cache line). Derived from unc_c_tor_inserts.opcode", 18311c2302cSIan Rogers "Counter": "0,1,2,3", 184667433c4SIan Rogers "EventCode": "0x35", 185667433c4SIan Rogers "EventName": "LLC_REFERENCES.STREAMING_PARTIAL", 186667433c4SIan Rogers "Filter": "filter_opc=0x18d", 187667433c4SIan Rogers "PerPkg": "1", 188667433c4SIan Rogers "PublicDescription": "Counts the number of entries successfully inserted into the TOR that match qualifications specified by the subevent. There are a number of subevent 'filters' but only a subset of the subevent combinations are valid. Subevents that require an opcode or NID match require the Cn_MSR_PMON_BOX_FILTER.{opc, nid} field to be set. If, for example, one wanted to count DRD Local Misses, one should select MISS_OPC_MATCH and set Cn_MSR_PMON_BOX_FILTER.opc to DRD (0x182).; Transactions inserted into the TOR that match an opcode (matched by Cn_MSR_PMON_BOX_FILTER.opc)", 189667433c4SIan Rogers "ScaleUnit": "64Bytes", 190667433c4SIan Rogers "UMask": "0x1", 191579c0472SIan Rogers "Unit": "CBOX" 192667433c4SIan Rogers }, 193667433c4SIan Rogers { 194bedd1738SZhengjun Xing "BriefDescription": "Bounce Control", 19511c2302cSIan Rogers "Counter": "0,1,2,3", 196bedd1738SZhengjun Xing "EventCode": "0xA", 197bedd1738SZhengjun Xing "EventName": "UNC_C_BOUNCE_CONTROL", 198bedd1738SZhengjun Xing "PerPkg": "1", 199579c0472SIan Rogers "Unit": "CBOX" 200bedd1738SZhengjun Xing }, 201bedd1738SZhengjun Xing { 202bedd1738SZhengjun Xing "BriefDescription": "Uncore Clocks", 20311c2302cSIan Rogers "Counter": "0,1,2,3", 2047003f00fSAndi Kleen "EventName": "UNC_C_CLOCKTICKS", 2057003f00fSAndi Kleen "PerPkg": "1", 206579c0472SIan Rogers "Unit": "CBOX" 2077003f00fSAndi Kleen }, 2087003f00fSAndi Kleen { 209bedd1738SZhengjun Xing "BriefDescription": "Counter 0 Occupancy", 21011c2302cSIan Rogers "Counter": "0,1,2,3", 211bedd1738SZhengjun Xing "EventCode": "0x1F", 212bedd1738SZhengjun Xing "EventName": "UNC_C_COUNTER0_OCCUPANCY", 213bedd1738SZhengjun Xing "PerPkg": "1", 214667433c4SIan Rogers "PublicDescription": "Since occupancy counts can only be captured in the Cbo's 0 counter, this event allows a user to capture occupancy related information by filtering the Cb0 occupancy count captured in Counter 0. The filtering available is found in the control register - threshold, invert and edge detect. E.g. setting threshold to 1 can effectively monitor how many cycles the monitored queue has an entry.", 215579c0472SIan Rogers "Unit": "CBOX" 216bedd1738SZhengjun Xing }, 217bedd1738SZhengjun Xing { 218bedd1738SZhengjun Xing "BriefDescription": "FaST wire asserted", 21911c2302cSIan Rogers "Counter": "0,1", 220bedd1738SZhengjun Xing "EventCode": "0x9", 221bedd1738SZhengjun Xing "EventName": "UNC_C_FAST_ASSERTED", 222bedd1738SZhengjun Xing "PerPkg": "1", 223667433c4SIan Rogers "PublicDescription": "Counts the number of cycles either the local distress or incoming distress signals are asserted. Incoming distress includes both up and dn.", 224579c0472SIan Rogers "Unit": "CBOX" 225bedd1738SZhengjun Xing }, 226bedd1738SZhengjun Xing { 227b90b3e9cSAndi Kleen "BriefDescription": "All LLC Misses (code+ data rd + data wr - including demand and prefetch)", 22811c2302cSIan Rogers "Counter": "0,1,2,3", 2297003f00fSAndi Kleen "EventCode": "0x34", 2307003f00fSAndi Kleen "EventName": "UNC_C_LLC_LOOKUP.ANY", 2317003f00fSAndi Kleen "Filter": "filter_state=0x1", 2327003f00fSAndi Kleen "PerPkg": "1", 233667433c4SIan Rogers "PublicDescription": "Counts the number of times the LLC was accessed - this includes code, data, prefetches and hints coming from L2. This has numerous filters available. Note the non-standard filtering equation. This event will count requests that lookup the cache multiple times with multiple increments. One must ALWAYS set umask bit 0 and select a state or states to match. Otherwise, the event will count nothing. CBoGlCtrl[22:18] bits correspond to [FMESI] state.; Filters for any transaction originating from the IPQ or IRQ. This does not include lookups originating from the ISMQ.", 2347003f00fSAndi Kleen "ScaleUnit": "64Bytes", 2357003f00fSAndi Kleen "UMask": "0x11", 236579c0472SIan Rogers "Unit": "CBOX" 2377003f00fSAndi Kleen }, 2387003f00fSAndi Kleen { 239667433c4SIan Rogers "BriefDescription": "Cache Lookups; Data Read Request", 24011c2302cSIan Rogers "Counter": "0,1,2,3", 241667433c4SIan Rogers "EventCode": "0x34", 242667433c4SIan Rogers "EventName": "UNC_C_LLC_LOOKUP.DATA_READ", 243667433c4SIan Rogers "PerPkg": "1", 244667433c4SIan Rogers "PublicDescription": "Counts the number of times the LLC was accessed - this includes code, data, prefetches and hints coming from L2. This has numerous filters available. Note the non-standard filtering equation. This event will count requests that lookup the cache multiple times with multiple increments. One must ALWAYS set umask bit 0 and select a state or states to match. Otherwise, the event will count nothing. CBoGlCtrl[22:18] bits correspond to [FMESI] state.; Read transactions", 245667433c4SIan Rogers "UMask": "0x3", 246579c0472SIan Rogers "Unit": "CBOX" 247667433c4SIan Rogers }, 248667433c4SIan Rogers { 249bedd1738SZhengjun Xing "BriefDescription": "Cache Lookups; Lookups that Match NID", 25011c2302cSIan Rogers "Counter": "0,1,2,3", 251bedd1738SZhengjun Xing "EventCode": "0x34", 252bedd1738SZhengjun Xing "EventName": "UNC_C_LLC_LOOKUP.NID", 253bedd1738SZhengjun Xing "PerPkg": "1", 254667433c4SIan Rogers "PublicDescription": "Counts the number of times the LLC was accessed - this includes code, data, prefetches and hints coming from L2. This has numerous filters available. Note the non-standard filtering equation. This event will count requests that lookup the cache multiple times with multiple increments. One must ALWAYS set umask bit 0 and select a state or states to match. Otherwise, the event will count nothing. CBoGlCtrl[22:18] bits correspond to [FMESI] state.; Qualify one of the other subevents by the Target NID. The NID is programmed in Cn_MSR_PMON_BOX_FILTER.nid. In conjunction with STATE = I, it is possible to monitor misses to specific NIDs in the system.", 255bedd1738SZhengjun Xing "UMask": "0x41", 256579c0472SIan Rogers "Unit": "CBOX" 257bedd1738SZhengjun Xing }, 258bedd1738SZhengjun Xing { 259bedd1738SZhengjun Xing "BriefDescription": "Cache Lookups; Any Read Request", 26011c2302cSIan Rogers "Counter": "0,1,2,3", 261bedd1738SZhengjun Xing "EventCode": "0x34", 262bedd1738SZhengjun Xing "EventName": "UNC_C_LLC_LOOKUP.READ", 263bedd1738SZhengjun Xing "PerPkg": "1", 264667433c4SIan Rogers "PublicDescription": "Counts the number of times the LLC was accessed - this includes code, data, prefetches and hints coming from L2. This has numerous filters available. Note the non-standard filtering equation. This event will count requests that lookup the cache multiple times with multiple increments. One must ALWAYS set umask bit 0 and select a state or states to match. Otherwise, the event will count nothing. CBoGlCtrl[22:18] bits correspond to [FMESI] state.; Read transactions", 265bedd1738SZhengjun Xing "UMask": "0x21", 266579c0472SIan Rogers "Unit": "CBOX" 267bedd1738SZhengjun Xing }, 268bedd1738SZhengjun Xing { 269667433c4SIan Rogers "BriefDescription": "Cache Lookups; External Snoop Request", 27011c2302cSIan Rogers "Counter": "0,1,2,3", 271667433c4SIan Rogers "EventCode": "0x34", 272667433c4SIan Rogers "EventName": "UNC_C_LLC_LOOKUP.REMOTE_SNOOP", 273667433c4SIan Rogers "PerPkg": "1", 274667433c4SIan Rogers "PublicDescription": "Counts the number of times the LLC was accessed - this includes code, data, prefetches and hints coming from L2. This has numerous filters available. Note the non-standard filtering equation. This event will count requests that lookup the cache multiple times with multiple increments. One must ALWAYS set umask bit 0 and select a state or states to match. Otherwise, the event will count nothing. CBoGlCtrl[22:18] bits correspond to [FMESI] state.; Filters for only snoop requests coming from the remote socket(s) through the IPQ.", 275667433c4SIan Rogers "UMask": "0x9", 276579c0472SIan Rogers "Unit": "CBOX" 277667433c4SIan Rogers }, 278667433c4SIan Rogers { 279667433c4SIan Rogers "BriefDescription": "Cache Lookups; Write Requests", 28011c2302cSIan Rogers "Counter": "0,1,2,3", 281667433c4SIan Rogers "EventCode": "0x34", 282667433c4SIan Rogers "EventName": "UNC_C_LLC_LOOKUP.WRITE", 283667433c4SIan Rogers "PerPkg": "1", 284667433c4SIan Rogers "PublicDescription": "Counts the number of times the LLC was accessed - this includes code, data, prefetches and hints coming from L2. This has numerous filters available. Note the non-standard filtering equation. This event will count requests that lookup the cache multiple times with multiple increments. One must ALWAYS set umask bit 0 and select a state or states to match. Otherwise, the event will count nothing. CBoGlCtrl[22:18] bits correspond to [FMESI] state.; Writeback transactions from L2 to the LLC This includes all write transactions -- both Cacheable and UC.", 285667433c4SIan Rogers "UMask": "0x5", 286579c0472SIan Rogers "Unit": "CBOX" 287667433c4SIan Rogers }, 288667433c4SIan Rogers { 289667433c4SIan Rogers "BriefDescription": "Lines Victimized; Lines in E state", 29011c2302cSIan Rogers "Counter": "0,1,2,3", 291667433c4SIan Rogers "EventCode": "0x37", 292667433c4SIan Rogers "EventName": "UNC_C_LLC_VICTIMS.E_STATE", 293667433c4SIan Rogers "PerPkg": "1", 294667433c4SIan Rogers "PublicDescription": "Counts the number of lines that were victimized on a fill. This can be filtered by the state that the line was in.", 295667433c4SIan Rogers "UMask": "0x2", 296579c0472SIan Rogers "Unit": "CBOX" 297667433c4SIan Rogers }, 298667433c4SIan Rogers { 299667433c4SIan Rogers "BriefDescription": "Lines Victimized", 30011c2302cSIan Rogers "Counter": "0,1,2,3", 301667433c4SIan Rogers "EventCode": "0x37", 302667433c4SIan Rogers "EventName": "UNC_C_LLC_VICTIMS.F_STATE", 303667433c4SIan Rogers "PerPkg": "1", 304667433c4SIan Rogers "PublicDescription": "Counts the number of lines that were victimized on a fill. This can be filtered by the state that the line was in.", 305667433c4SIan Rogers "UMask": "0x8", 306579c0472SIan Rogers "Unit": "CBOX" 307667433c4SIan Rogers }, 308667433c4SIan Rogers { 309667433c4SIan Rogers "BriefDescription": "Lines Victimized; Lines in S State", 31011c2302cSIan Rogers "Counter": "0,1,2,3", 311667433c4SIan Rogers "EventCode": "0x37", 312667433c4SIan Rogers "EventName": "UNC_C_LLC_VICTIMS.I_STATE", 313667433c4SIan Rogers "PerPkg": "1", 314667433c4SIan Rogers "PublicDescription": "Counts the number of lines that were victimized on a fill. This can be filtered by the state that the line was in.", 315667433c4SIan Rogers "UMask": "0x4", 316579c0472SIan Rogers "Unit": "CBOX" 317667433c4SIan Rogers }, 318667433c4SIan Rogers { 319667433c4SIan Rogers "BriefDescription": "Lines Victimized", 32011c2302cSIan Rogers "Counter": "0,1,2,3", 321667433c4SIan Rogers "EventCode": "0x37", 322667433c4SIan Rogers "EventName": "UNC_C_LLC_VICTIMS.MISS", 323667433c4SIan Rogers "PerPkg": "1", 324667433c4SIan Rogers "PublicDescription": "Counts the number of lines that were victimized on a fill. This can be filtered by the state that the line was in.", 325667433c4SIan Rogers "UMask": "0x10", 326579c0472SIan Rogers "Unit": "CBOX" 327667433c4SIan Rogers }, 328667433c4SIan Rogers { 329b90b3e9cSAndi Kleen "BriefDescription": "M line evictions from LLC (writebacks to memory)", 33011c2302cSIan Rogers "Counter": "0,1,2,3", 3317003f00fSAndi Kleen "EventCode": "0x37", 3327003f00fSAndi Kleen "EventName": "UNC_C_LLC_VICTIMS.M_STATE", 3337003f00fSAndi Kleen "PerPkg": "1", 334667433c4SIan Rogers "PublicDescription": "Counts the number of lines that were victimized on a fill. This can be filtered by the state that the line was in.", 3357003f00fSAndi Kleen "ScaleUnit": "64Bytes", 3367003f00fSAndi Kleen "UMask": "0x1", 337579c0472SIan Rogers "Unit": "CBOX" 3387003f00fSAndi Kleen }, 3397003f00fSAndi Kleen { 340bedd1738SZhengjun Xing "BriefDescription": "Lines Victimized; Victimized Lines that Match NID", 34111c2302cSIan Rogers "Counter": "0,1,2,3", 342bedd1738SZhengjun Xing "EventCode": "0x37", 343bedd1738SZhengjun Xing "EventName": "UNC_C_LLC_VICTIMS.NID", 344bedd1738SZhengjun Xing "PerPkg": "1", 345667433c4SIan Rogers "PublicDescription": "Counts the number of lines that were victimized on a fill. This can be filtered by the state that the line was in.; Qualify one of the other subevents by the Target NID. The NID is programmed in Cn_MSR_PMON_BOX_FILTER.nid. In conjunction with STATE = I, it is possible to monitor misses to specific NIDs in the system.", 346bedd1738SZhengjun Xing "UMask": "0x40", 347579c0472SIan Rogers "Unit": "CBOX" 348bedd1738SZhengjun Xing }, 349bedd1738SZhengjun Xing { 350667433c4SIan Rogers "BriefDescription": "Lines in S State", 35111c2302cSIan Rogers "Counter": "0,1,2,3", 352bedd1738SZhengjun Xing "EventCode": "0x37", 353667433c4SIan Rogers "EventName": "UNC_C_LLC_VICTIMS.S_STATE", 354bedd1738SZhengjun Xing "PerPkg": "1", 355667433c4SIan Rogers "PublicDescription": "Counts the number of lines that were victimized on a fill. This can be filtered by the state that the line was in.", 356bedd1738SZhengjun Xing "UMask": "0x4", 357579c0472SIan Rogers "Unit": "CBOX" 358bedd1738SZhengjun Xing }, 359bedd1738SZhengjun Xing { 360bedd1738SZhengjun Xing "BriefDescription": "Cbo Misc; DRd hitting non-M with raw CV=0", 36111c2302cSIan Rogers "Counter": "0,1,2,3", 362bedd1738SZhengjun Xing "EventCode": "0x39", 363bedd1738SZhengjun Xing "EventName": "UNC_C_MISC.CVZERO_PREFETCH_MISS", 364bedd1738SZhengjun Xing "PerPkg": "1", 365667433c4SIan Rogers "PublicDescription": "Miscellaneous events in the Cbo.", 366bedd1738SZhengjun Xing "UMask": "0x20", 367579c0472SIan Rogers "Unit": "CBOX" 368bedd1738SZhengjun Xing }, 369bedd1738SZhengjun Xing { 370667433c4SIan Rogers "BriefDescription": "Cbo Misc; Clean Victim with raw CV=0", 37111c2302cSIan Rogers "Counter": "0,1,2,3", 372667433c4SIan Rogers "EventCode": "0x39", 373667433c4SIan Rogers "EventName": "UNC_C_MISC.CVZERO_PREFETCH_VICTIM", 374667433c4SIan Rogers "PerPkg": "1", 375667433c4SIan Rogers "PublicDescription": "Miscellaneous events in the Cbo.", 376667433c4SIan Rogers "UMask": "0x10", 377579c0472SIan Rogers "Unit": "CBOX" 378667433c4SIan Rogers }, 379667433c4SIan Rogers { 380667433c4SIan Rogers "BriefDescription": "Cbo Misc; RFO HitS", 38111c2302cSIan Rogers "Counter": "0,1,2,3", 382667433c4SIan Rogers "EventCode": "0x39", 383667433c4SIan Rogers "EventName": "UNC_C_MISC.RFO_HIT_S", 384667433c4SIan Rogers "PerPkg": "1", 385667433c4SIan Rogers "PublicDescription": "Miscellaneous events in the Cbo.; Number of times that an RFO hit in S state. This is useful for determining if it might be good for a workload to use RspIWB instead of RspSWB.", 386667433c4SIan Rogers "UMask": "0x8", 387579c0472SIan Rogers "Unit": "CBOX" 388667433c4SIan Rogers }, 389667433c4SIan Rogers { 390667433c4SIan Rogers "BriefDescription": "Cbo Misc; Silent Snoop Eviction", 39111c2302cSIan Rogers "Counter": "0,1,2,3", 392667433c4SIan Rogers "EventCode": "0x39", 393667433c4SIan Rogers "EventName": "UNC_C_MISC.RSPI_WAS_FSE", 394667433c4SIan Rogers "PerPkg": "1", 395667433c4SIan Rogers "PublicDescription": "Miscellaneous events in the Cbo.; Counts the number of times when a Snoop hit in FSE states and triggered a silent eviction. This is useful because this information is lost in the PRE encodings.", 396667433c4SIan Rogers "UMask": "0x1", 397579c0472SIan Rogers "Unit": "CBOX" 398667433c4SIan Rogers }, 399667433c4SIan Rogers { 400667433c4SIan Rogers "BriefDescription": "Cbo Misc", 40111c2302cSIan Rogers "Counter": "0,1,2,3", 402667433c4SIan Rogers "EventCode": "0x39", 403667433c4SIan Rogers "EventName": "UNC_C_MISC.STARTED", 404667433c4SIan Rogers "PerPkg": "1", 405667433c4SIan Rogers "PublicDescription": "Miscellaneous events in the Cbo.", 406667433c4SIan Rogers "UMask": "0x4", 407579c0472SIan Rogers "Unit": "CBOX" 408667433c4SIan Rogers }, 409667433c4SIan Rogers { 410667433c4SIan Rogers "BriefDescription": "Cbo Misc; Write Combining Aliasing", 41111c2302cSIan Rogers "Counter": "0,1,2,3", 412667433c4SIan Rogers "EventCode": "0x39", 413667433c4SIan Rogers "EventName": "UNC_C_MISC.WC_ALIASING", 414667433c4SIan Rogers "PerPkg": "1", 415667433c4SIan Rogers "PublicDescription": "Miscellaneous events in the Cbo.; Counts the number of times that a USWC write (WCIL(F)) transaction hit in the LLC in M state, triggering a WBMtoI followed by the USWC write. This occurs when there is WC aliasing.", 416667433c4SIan Rogers "UMask": "0x2", 417579c0472SIan Rogers "Unit": "CBOX" 418667433c4SIan Rogers }, 419667433c4SIan Rogers { 420bedd1738SZhengjun Xing "BriefDescription": "LRU Queue; LRU Age 0", 42111c2302cSIan Rogers "Counter": "0,1,2,3", 422bedd1738SZhengjun Xing "EventCode": "0x3C", 423bedd1738SZhengjun Xing "EventName": "UNC_C_QLRU.AGE0", 424bedd1738SZhengjun Xing "PerPkg": "1", 425667433c4SIan Rogers "PublicDescription": "How often age was set to 0", 426bedd1738SZhengjun Xing "UMask": "0x1", 427579c0472SIan Rogers "Unit": "CBOX" 428bedd1738SZhengjun Xing }, 429bedd1738SZhengjun Xing { 430bedd1738SZhengjun Xing "BriefDescription": "LRU Queue; LRU Age 1", 43111c2302cSIan Rogers "Counter": "0,1,2,3", 432bedd1738SZhengjun Xing "EventCode": "0x3C", 433bedd1738SZhengjun Xing "EventName": "UNC_C_QLRU.AGE1", 434bedd1738SZhengjun Xing "PerPkg": "1", 435667433c4SIan Rogers "PublicDescription": "How often age was set to 1", 436bedd1738SZhengjun Xing "UMask": "0x2", 437579c0472SIan Rogers "Unit": "CBOX" 438bedd1738SZhengjun Xing }, 439bedd1738SZhengjun Xing { 440bedd1738SZhengjun Xing "BriefDescription": "LRU Queue; LRU Age 2", 44111c2302cSIan Rogers "Counter": "0,1,2,3", 442bedd1738SZhengjun Xing "EventCode": "0x3C", 443bedd1738SZhengjun Xing "EventName": "UNC_C_QLRU.AGE2", 444bedd1738SZhengjun Xing "PerPkg": "1", 445667433c4SIan Rogers "PublicDescription": "How often age was set to 2", 446bedd1738SZhengjun Xing "UMask": "0x4", 447579c0472SIan Rogers "Unit": "CBOX" 448bedd1738SZhengjun Xing }, 449bedd1738SZhengjun Xing { 450bedd1738SZhengjun Xing "BriefDescription": "LRU Queue; LRU Age 3", 45111c2302cSIan Rogers "Counter": "0,1,2,3", 452bedd1738SZhengjun Xing "EventCode": "0x3C", 453bedd1738SZhengjun Xing "EventName": "UNC_C_QLRU.AGE3", 454bedd1738SZhengjun Xing "PerPkg": "1", 455667433c4SIan Rogers "PublicDescription": "How often age was set to 3", 456bedd1738SZhengjun Xing "UMask": "0x8", 457579c0472SIan Rogers "Unit": "CBOX" 458bedd1738SZhengjun Xing }, 459bedd1738SZhengjun Xing { 460bedd1738SZhengjun Xing "BriefDescription": "LRU Queue; LRU Bits Decremented", 46111c2302cSIan Rogers "Counter": "0,1,2,3", 462bedd1738SZhengjun Xing "EventCode": "0x3C", 463bedd1738SZhengjun Xing "EventName": "UNC_C_QLRU.LRU_DECREMENT", 464bedd1738SZhengjun Xing "PerPkg": "1", 465667433c4SIan Rogers "PublicDescription": "How often all LRU bits were decremented by 1", 466bedd1738SZhengjun Xing "UMask": "0x10", 467579c0472SIan Rogers "Unit": "CBOX" 468bedd1738SZhengjun Xing }, 469bedd1738SZhengjun Xing { 470bedd1738SZhengjun Xing "BriefDescription": "LRU Queue; Non-0 Aged Victim", 47111c2302cSIan Rogers "Counter": "0,1,2,3", 472bedd1738SZhengjun Xing "EventCode": "0x3C", 473bedd1738SZhengjun Xing "EventName": "UNC_C_QLRU.VICTIM_NON_ZERO", 474bedd1738SZhengjun Xing "PerPkg": "1", 475667433c4SIan Rogers "PublicDescription": "How often we picked a victim that had a non-zero age", 476bedd1738SZhengjun Xing "UMask": "0x20", 477579c0472SIan Rogers "Unit": "CBOX" 478bedd1738SZhengjun Xing }, 479bedd1738SZhengjun Xing { 480667433c4SIan Rogers "BriefDescription": "AD Ring In Use; All", 48111c2302cSIan Rogers "Counter": "0,1,2,3", 482bedd1738SZhengjun Xing "EventCode": "0x1B", 483667433c4SIan Rogers "EventName": "UNC_C_RING_AD_USED.ALL", 484bedd1738SZhengjun Xing "PerPkg": "1", 485667433c4SIan Rogers "PublicDescription": "Counts the number of cycles that the AD ring is being used at this ring stop. This includes when packets are passing by and when packets are being sunk, but does not include when packets are being sent from the ring stop. We really have two rings in HSX -- a clockwise ring and a counter-clockwise ring. On the left side of the ring, the UP direction is on the clockwise ring and DN is on the counter-clockwise ring. On the right side of the ring, this is reversed. The first half of the CBos are on the left side of the ring, and the 2nd half are on the right side of the ring. In other words (for example), in a 4c part, Cbo 0 UP AD is NOT the same ring as CBo 2 UP AD because they are on opposite sides of the ring.", 486667433c4SIan Rogers "UMask": "0xf", 487579c0472SIan Rogers "Unit": "CBOX" 488bedd1738SZhengjun Xing }, 489bedd1738SZhengjun Xing { 490667433c4SIan Rogers "BriefDescription": "AD Ring In Use; Down", 49111c2302cSIan Rogers "Counter": "0,1,2,3", 492bedd1738SZhengjun Xing "EventCode": "0x1B", 493667433c4SIan Rogers "EventName": "UNC_C_RING_AD_USED.DOWN", 494bedd1738SZhengjun Xing "PerPkg": "1", 495667433c4SIan Rogers "PublicDescription": "Counts the number of cycles that the AD ring is being used at this ring stop. This includes when packets are passing by and when packets are being sunk, but does not include when packets are being sent from the ring stop. We really have two rings in HSX -- a clockwise ring and a counter-clockwise ring. On the left side of the ring, the UP direction is on the clockwise ring and DN is on the counter-clockwise ring. On the right side of the ring, this is reversed. The first half of the CBos are on the left side of the ring, and the 2nd half are on the right side of the ring. In other words (for example), in a 4c part, Cbo 0 UP AD is NOT the same ring as CBo 2 UP AD because they are on opposite sides of the ring.", 496667433c4SIan Rogers "UMask": "0xc", 497579c0472SIan Rogers "Unit": "CBOX" 498bedd1738SZhengjun Xing }, 499bedd1738SZhengjun Xing { 500bedd1738SZhengjun Xing "BriefDescription": "AD Ring In Use; Down and Even", 50111c2302cSIan Rogers "Counter": "0,1,2,3", 502bedd1738SZhengjun Xing "EventCode": "0x1B", 503bedd1738SZhengjun Xing "EventName": "UNC_C_RING_AD_USED.DOWN_EVEN", 504bedd1738SZhengjun Xing "PerPkg": "1", 505667433c4SIan Rogers "PublicDescription": "Counts the number of cycles that the AD ring is being used at this ring stop. This includes when packets are passing by and when packets are being sunk, but does not include when packets are being sent from the ring stop. We really have two rings in HSX -- a clockwise ring and a counter-clockwise ring. On the left side of the ring, the UP direction is on the clockwise ring and DN is on the counter-clockwise ring. On the right side of the ring, this is reversed. The first half of the CBos are on the left side of the ring, and the 2nd half are on the right side of the ring. In other words (for example), in a 4c part, Cbo 0 UP AD is NOT the same ring as CBo 2 UP AD because they are on opposite sides of the ring.; Filters for the Down and Even ring polarity.", 506bedd1738SZhengjun Xing "UMask": "0x4", 507579c0472SIan Rogers "Unit": "CBOX" 508bedd1738SZhengjun Xing }, 509bedd1738SZhengjun Xing { 510bedd1738SZhengjun Xing "BriefDescription": "AD Ring In Use; Down and Odd", 51111c2302cSIan Rogers "Counter": "0,1,2,3", 512bedd1738SZhengjun Xing "EventCode": "0x1B", 513bedd1738SZhengjun Xing "EventName": "UNC_C_RING_AD_USED.DOWN_ODD", 514bedd1738SZhengjun Xing "PerPkg": "1", 515667433c4SIan Rogers "PublicDescription": "Counts the number of cycles that the AD ring is being used at this ring stop. This includes when packets are passing by and when packets are being sunk, but does not include when packets are being sent from the ring stop. We really have two rings in HSX -- a clockwise ring and a counter-clockwise ring. On the left side of the ring, the UP direction is on the clockwise ring and DN is on the counter-clockwise ring. On the right side of the ring, this is reversed. The first half of the CBos are on the left side of the ring, and the 2nd half are on the right side of the ring. In other words (for example), in a 4c part, Cbo 0 UP AD is NOT the same ring as CBo 2 UP AD because they are on opposite sides of the ring.; Filters for the Down and Odd ring polarity.", 516bedd1738SZhengjun Xing "UMask": "0x8", 517579c0472SIan Rogers "Unit": "CBOX" 518bedd1738SZhengjun Xing }, 519bedd1738SZhengjun Xing { 520bedd1738SZhengjun Xing "BriefDescription": "AD Ring In Use; Up", 52111c2302cSIan Rogers "Counter": "0,1,2,3", 522bedd1738SZhengjun Xing "EventCode": "0x1B", 523bedd1738SZhengjun Xing "EventName": "UNC_C_RING_AD_USED.UP", 524bedd1738SZhengjun Xing "PerPkg": "1", 525667433c4SIan Rogers "PublicDescription": "Counts the number of cycles that the AD ring is being used at this ring stop. This includes when packets are passing by and when packets are being sunk, but does not include when packets are being sent from the ring stop. We really have two rings in HSX -- a clockwise ring and a counter-clockwise ring. On the left side of the ring, the UP direction is on the clockwise ring and DN is on the counter-clockwise ring. On the right side of the ring, this is reversed. The first half of the CBos are on the left side of the ring, and the 2nd half are on the right side of the ring. In other words (for example), in a 4c part, Cbo 0 UP AD is NOT the same ring as CBo 2 UP AD because they are on opposite sides of the ring.", 5267003f00fSAndi Kleen "UMask": "0x3", 527579c0472SIan Rogers "Unit": "CBOX" 5287003f00fSAndi Kleen }, 5297003f00fSAndi Kleen { 530667433c4SIan Rogers "BriefDescription": "AD Ring In Use; Up and Even", 53111c2302cSIan Rogers "Counter": "0,1,2,3", 532bedd1738SZhengjun Xing "EventCode": "0x1B", 533667433c4SIan Rogers "EventName": "UNC_C_RING_AD_USED.UP_EVEN", 5347003f00fSAndi Kleen "PerPkg": "1", 535667433c4SIan Rogers "PublicDescription": "Counts the number of cycles that the AD ring is being used at this ring stop. This includes when packets are passing by and when packets are being sunk, but does not include when packets are being sent from the ring stop. We really have two rings in HSX -- a clockwise ring and a counter-clockwise ring. On the left side of the ring, the UP direction is on the clockwise ring and DN is on the counter-clockwise ring. On the right side of the ring, this is reversed. The first half of the CBos are on the left side of the ring, and the 2nd half are on the right side of the ring. In other words (for example), in a 4c part, Cbo 0 UP AD is NOT the same ring as CBo 2 UP AD because they are on opposite sides of the ring.; Filters for the Up and Even ring polarity.", 536bedd1738SZhengjun Xing "UMask": "0x1", 537579c0472SIan Rogers "Unit": "CBOX" 538bedd1738SZhengjun Xing }, 539bedd1738SZhengjun Xing { 540667433c4SIan Rogers "BriefDescription": "AD Ring In Use; Up and Odd", 54111c2302cSIan Rogers "Counter": "0,1,2,3", 542667433c4SIan Rogers "EventCode": "0x1B", 543667433c4SIan Rogers "EventName": "UNC_C_RING_AD_USED.UP_ODD", 544bedd1738SZhengjun Xing "PerPkg": "1", 545667433c4SIan Rogers "PublicDescription": "Counts the number of cycles that the AD ring is being used at this ring stop. This includes when packets are passing by and when packets are being sunk, but does not include when packets are being sent from the ring stop. We really have two rings in HSX -- a clockwise ring and a counter-clockwise ring. On the left side of the ring, the UP direction is on the clockwise ring and DN is on the counter-clockwise ring. On the right side of the ring, this is reversed. The first half of the CBos are on the left side of the ring, and the 2nd half are on the right side of the ring. In other words (for example), in a 4c part, Cbo 0 UP AD is NOT the same ring as CBo 2 UP AD because they are on opposite sides of the ring.; Filters for the Up and Odd ring polarity.", 546bedd1738SZhengjun Xing "UMask": "0x2", 547579c0472SIan Rogers "Unit": "CBOX" 548bedd1738SZhengjun Xing }, 549bedd1738SZhengjun Xing { 550667433c4SIan Rogers "BriefDescription": "AK Ring In Use; All", 55111c2302cSIan Rogers "Counter": "0,1,2,3", 552667433c4SIan Rogers "EventCode": "0x1C", 553667433c4SIan Rogers "EventName": "UNC_C_RING_AK_USED.ALL", 554667433c4SIan Rogers "PerPkg": "1", 555667433c4SIan Rogers "PublicDescription": "Counts the number of cycles that the AK ring is being used at this ring stop. This includes when packets are passing by and when packets are being sunk, but does not include when packets are being sent from the ring stop.We really have two rings in HSX -- a clockwise ring and a counter-clockwise ring. On the left side of the ring, the UP direction is on the clockwise ring and DN is on the counter-clockwise ring. On the right side of the ring, this is reversed. The first half of the CBos are on the left side of the ring, and the 2nd half are on the right side of the ring. In other words (for example), in a 4c part, Cbo 0 UP AD is NOT the same ring as CBo 2 UP AD because they are on opposite sides of the ring.", 556667433c4SIan Rogers "UMask": "0xf", 557579c0472SIan Rogers "Unit": "CBOX" 558667433c4SIan Rogers }, 559667433c4SIan Rogers { 560667433c4SIan Rogers "BriefDescription": "AK Ring In Use; Down", 56111c2302cSIan Rogers "Counter": "0,1,2,3", 562667433c4SIan Rogers "EventCode": "0x1C", 563667433c4SIan Rogers "EventName": "UNC_C_RING_AK_USED.DOWN", 564667433c4SIan Rogers "PerPkg": "1", 565667433c4SIan Rogers "PublicDescription": "Counts the number of cycles that the AK ring is being used at this ring stop. This includes when packets are passing by and when packets are being sunk, but does not include when packets are being sent from the ring stop.We really have two rings in HSX -- a clockwise ring and a counter-clockwise ring. On the left side of the ring, the UP direction is on the clockwise ring and DN is on the counter-clockwise ring. On the right side of the ring, this is reversed. The first half of the CBos are on the left side of the ring, and the 2nd half are on the right side of the ring. In other words (for example), in a 4c part, Cbo 0 UP AD is NOT the same ring as CBo 2 UP AD because they are on opposite sides of the ring.", 566667433c4SIan Rogers "UMask": "0xc", 567579c0472SIan Rogers "Unit": "CBOX" 568667433c4SIan Rogers }, 569667433c4SIan Rogers { 570bedd1738SZhengjun Xing "BriefDescription": "AK Ring In Use; Down and Even", 57111c2302cSIan Rogers "Counter": "0,1,2,3", 572bedd1738SZhengjun Xing "EventCode": "0x1C", 573bedd1738SZhengjun Xing "EventName": "UNC_C_RING_AK_USED.DOWN_EVEN", 574bedd1738SZhengjun Xing "PerPkg": "1", 575667433c4SIan Rogers "PublicDescription": "Counts the number of cycles that the AK ring is being used at this ring stop. This includes when packets are passing by and when packets are being sunk, but does not include when packets are being sent from the ring stop.We really have two rings in HSX -- a clockwise ring and a counter-clockwise ring. On the left side of the ring, the UP direction is on the clockwise ring and DN is on the counter-clockwise ring. On the right side of the ring, this is reversed. The first half of the CBos are on the left side of the ring, and the 2nd half are on the right side of the ring. In other words (for example), in a 4c part, Cbo 0 UP AD is NOT the same ring as CBo 2 UP AD because they are on opposite sides of the ring.; Filters for the Down and Even ring polarity.", 576bedd1738SZhengjun Xing "UMask": "0x4", 577579c0472SIan Rogers "Unit": "CBOX" 578bedd1738SZhengjun Xing }, 579bedd1738SZhengjun Xing { 580bedd1738SZhengjun Xing "BriefDescription": "AK Ring In Use; Down and Odd", 58111c2302cSIan Rogers "Counter": "0,1,2,3", 582bedd1738SZhengjun Xing "EventCode": "0x1C", 583bedd1738SZhengjun Xing "EventName": "UNC_C_RING_AK_USED.DOWN_ODD", 584bedd1738SZhengjun Xing "PerPkg": "1", 585667433c4SIan Rogers "PublicDescription": "Counts the number of cycles that the AK ring is being used at this ring stop. This includes when packets are passing by and when packets are being sunk, but does not include when packets are being sent from the ring stop.We really have two rings in HSX -- a clockwise ring and a counter-clockwise ring. On the left side of the ring, the UP direction is on the clockwise ring and DN is on the counter-clockwise ring. On the right side of the ring, this is reversed. The first half of the CBos are on the left side of the ring, and the 2nd half are on the right side of the ring. In other words (for example), in a 4c part, Cbo 0 UP AD is NOT the same ring as CBo 2 UP AD because they are on opposite sides of the ring.; Filters for the Down and Odd ring polarity.", 586bedd1738SZhengjun Xing "UMask": "0x8", 587579c0472SIan Rogers "Unit": "CBOX" 588bedd1738SZhengjun Xing }, 589bedd1738SZhengjun Xing { 590bedd1738SZhengjun Xing "BriefDescription": "AK Ring In Use; Up", 59111c2302cSIan Rogers "Counter": "0,1,2,3", 592bedd1738SZhengjun Xing "EventCode": "0x1C", 593bedd1738SZhengjun Xing "EventName": "UNC_C_RING_AK_USED.UP", 594bedd1738SZhengjun Xing "PerPkg": "1", 595667433c4SIan Rogers "PublicDescription": "Counts the number of cycles that the AK ring is being used at this ring stop. This includes when packets are passing by and when packets are being sunk, but does not include when packets are being sent from the ring stop.We really have two rings in HSX -- a clockwise ring and a counter-clockwise ring. On the left side of the ring, the UP direction is on the clockwise ring and DN is on the counter-clockwise ring. On the right side of the ring, this is reversed. The first half of the CBos are on the left side of the ring, and the 2nd half are on the right side of the ring. In other words (for example), in a 4c part, Cbo 0 UP AD is NOT the same ring as CBo 2 UP AD because they are on opposite sides of the ring.", 5967003f00fSAndi Kleen "UMask": "0x3", 597579c0472SIan Rogers "Unit": "CBOX" 5987003f00fSAndi Kleen }, 5997003f00fSAndi Kleen { 600667433c4SIan Rogers "BriefDescription": "AK Ring In Use; Up and Even", 60111c2302cSIan Rogers "Counter": "0,1,2,3", 602bedd1738SZhengjun Xing "EventCode": "0x1C", 603667433c4SIan Rogers "EventName": "UNC_C_RING_AK_USED.UP_EVEN", 6047003f00fSAndi Kleen "PerPkg": "1", 605667433c4SIan Rogers "PublicDescription": "Counts the number of cycles that the AK ring is being used at this ring stop. This includes when packets are passing by and when packets are being sunk, but does not include when packets are being sent from the ring stop.We really have two rings in HSX -- a clockwise ring and a counter-clockwise ring. On the left side of the ring, the UP direction is on the clockwise ring and DN is on the counter-clockwise ring. On the right side of the ring, this is reversed. The first half of the CBos are on the left side of the ring, and the 2nd half are on the right side of the ring. In other words (for example), in a 4c part, Cbo 0 UP AD is NOT the same ring as CBo 2 UP AD because they are on opposite sides of the ring.; Filters for the Up and Even ring polarity.", 606bedd1738SZhengjun Xing "UMask": "0x1", 607579c0472SIan Rogers "Unit": "CBOX" 608bedd1738SZhengjun Xing }, 609bedd1738SZhengjun Xing { 610667433c4SIan Rogers "BriefDescription": "AK Ring In Use; Up and Odd", 61111c2302cSIan Rogers "Counter": "0,1,2,3", 612667433c4SIan Rogers "EventCode": "0x1C", 613667433c4SIan Rogers "EventName": "UNC_C_RING_AK_USED.UP_ODD", 614bedd1738SZhengjun Xing "PerPkg": "1", 615667433c4SIan Rogers "PublicDescription": "Counts the number of cycles that the AK ring is being used at this ring stop. This includes when packets are passing by and when packets are being sunk, but does not include when packets are being sent from the ring stop.We really have two rings in HSX -- a clockwise ring and a counter-clockwise ring. On the left side of the ring, the UP direction is on the clockwise ring and DN is on the counter-clockwise ring. On the right side of the ring, this is reversed. The first half of the CBos are on the left side of the ring, and the 2nd half are on the right side of the ring. In other words (for example), in a 4c part, Cbo 0 UP AD is NOT the same ring as CBo 2 UP AD because they are on opposite sides of the ring.; Filters for the Up and Odd ring polarity.", 616bedd1738SZhengjun Xing "UMask": "0x2", 617579c0472SIan Rogers "Unit": "CBOX" 618bedd1738SZhengjun Xing }, 619bedd1738SZhengjun Xing { 620667433c4SIan Rogers "BriefDescription": "BL Ring in Use; Down", 62111c2302cSIan Rogers "Counter": "0,1,2,3", 622667433c4SIan Rogers "EventCode": "0x1D", 623667433c4SIan Rogers "EventName": "UNC_C_RING_BL_USED.ALL", 624667433c4SIan Rogers "PerPkg": "1", 625667433c4SIan Rogers "PublicDescription": "Counts the number of cycles that the BL ring is being used at this ring stop. This includes when packets are passing by and when packets are being sunk, but does not include when packets are being sent from the ring stop.We really have two rings in HSX -- a clockwise ring and a counter-clockwise ring. On the left side of the ring, the UP direction is on the clockwise ring and DN is on the counter-clockwise ring. On the right side of the ring, this is reversed. The first half of the CBos are on the left side of the ring, and the 2nd half are on the right side of the ring. In other words (for example), in a 4c part, Cbo 0 UP AD is NOT the same ring as CBo 2 UP AD because they are on opposite sides of the ring.", 626667433c4SIan Rogers "UMask": "0xf", 627579c0472SIan Rogers "Unit": "CBOX" 628667433c4SIan Rogers }, 629667433c4SIan Rogers { 630667433c4SIan Rogers "BriefDescription": "BL Ring in Use; Down", 63111c2302cSIan Rogers "Counter": "0,1,2,3", 632667433c4SIan Rogers "EventCode": "0x1D", 633667433c4SIan Rogers "EventName": "UNC_C_RING_BL_USED.DOWN", 634667433c4SIan Rogers "PerPkg": "1", 635667433c4SIan Rogers "PublicDescription": "Counts the number of cycles that the BL ring is being used at this ring stop. This includes when packets are passing by and when packets are being sunk, but does not include when packets are being sent from the ring stop.We really have two rings in HSX -- a clockwise ring and a counter-clockwise ring. On the left side of the ring, the UP direction is on the clockwise ring and DN is on the counter-clockwise ring. On the right side of the ring, this is reversed. The first half of the CBos are on the left side of the ring, and the 2nd half are on the right side of the ring. In other words (for example), in a 4c part, Cbo 0 UP AD is NOT the same ring as CBo 2 UP AD because they are on opposite sides of the ring.", 636667433c4SIan Rogers "UMask": "0xc", 637579c0472SIan Rogers "Unit": "CBOX" 638667433c4SIan Rogers }, 639667433c4SIan Rogers { 640bedd1738SZhengjun Xing "BriefDescription": "BL Ring in Use; Down and Even", 64111c2302cSIan Rogers "Counter": "0,1,2,3", 642bedd1738SZhengjun Xing "EventCode": "0x1D", 643bedd1738SZhengjun Xing "EventName": "UNC_C_RING_BL_USED.DOWN_EVEN", 644bedd1738SZhengjun Xing "PerPkg": "1", 645667433c4SIan Rogers "PublicDescription": "Counts the number of cycles that the BL ring is being used at this ring stop. This includes when packets are passing by and when packets are being sunk, but does not include when packets are being sent from the ring stop.We really have two rings in HSX -- a clockwise ring and a counter-clockwise ring. On the left side of the ring, the UP direction is on the clockwise ring and DN is on the counter-clockwise ring. On the right side of the ring, this is reversed. The first half of the CBos are on the left side of the ring, and the 2nd half are on the right side of the ring. In other words (for example), in a 4c part, Cbo 0 UP AD is NOT the same ring as CBo 2 UP AD because they are on opposite sides of the ring.; Filters for the Down and Even ring polarity.", 646bedd1738SZhengjun Xing "UMask": "0x4", 647579c0472SIan Rogers "Unit": "CBOX" 648bedd1738SZhengjun Xing }, 649bedd1738SZhengjun Xing { 650bedd1738SZhengjun Xing "BriefDescription": "BL Ring in Use; Down and Odd", 65111c2302cSIan Rogers "Counter": "0,1,2,3", 652bedd1738SZhengjun Xing "EventCode": "0x1D", 653bedd1738SZhengjun Xing "EventName": "UNC_C_RING_BL_USED.DOWN_ODD", 654bedd1738SZhengjun Xing "PerPkg": "1", 655667433c4SIan Rogers "PublicDescription": "Counts the number of cycles that the BL ring is being used at this ring stop. This includes when packets are passing by and when packets are being sunk, but does not include when packets are being sent from the ring stop.We really have two rings in HSX -- a clockwise ring and a counter-clockwise ring. On the left side of the ring, the UP direction is on the clockwise ring and DN is on the counter-clockwise ring. On the right side of the ring, this is reversed. The first half of the CBos are on the left side of the ring, and the 2nd half are on the right side of the ring. In other words (for example), in a 4c part, Cbo 0 UP AD is NOT the same ring as CBo 2 UP AD because they are on opposite sides of the ring.; Filters for the Down and Odd ring polarity.", 656bedd1738SZhengjun Xing "UMask": "0x8", 657579c0472SIan Rogers "Unit": "CBOX" 658bedd1738SZhengjun Xing }, 659bedd1738SZhengjun Xing { 660bedd1738SZhengjun Xing "BriefDescription": "BL Ring in Use; Up", 66111c2302cSIan Rogers "Counter": "0,1,2,3", 662bedd1738SZhengjun Xing "EventCode": "0x1D", 663bedd1738SZhengjun Xing "EventName": "UNC_C_RING_BL_USED.UP", 664bedd1738SZhengjun Xing "PerPkg": "1", 665667433c4SIan Rogers "PublicDescription": "Counts the number of cycles that the BL ring is being used at this ring stop. This includes when packets are passing by and when packets are being sunk, but does not include when packets are being sent from the ring stop.We really have two rings in HSX -- a clockwise ring and a counter-clockwise ring. On the left side of the ring, the UP direction is on the clockwise ring and DN is on the counter-clockwise ring. On the right side of the ring, this is reversed. The first half of the CBos are on the left side of the ring, and the 2nd half are on the right side of the ring. In other words (for example), in a 4c part, Cbo 0 UP AD is NOT the same ring as CBo 2 UP AD because they are on opposite sides of the ring.", 6667003f00fSAndi Kleen "UMask": "0x3", 667579c0472SIan Rogers "Unit": "CBOX" 6687003f00fSAndi Kleen }, 6697003f00fSAndi Kleen { 670667433c4SIan Rogers "BriefDescription": "BL Ring in Use; Up and Even", 67111c2302cSIan Rogers "Counter": "0,1,2,3", 672bedd1738SZhengjun Xing "EventCode": "0x1D", 673667433c4SIan Rogers "EventName": "UNC_C_RING_BL_USED.UP_EVEN", 6747003f00fSAndi Kleen "PerPkg": "1", 675667433c4SIan Rogers "PublicDescription": "Counts the number of cycles that the BL ring is being used at this ring stop. This includes when packets are passing by and when packets are being sunk, but does not include when packets are being sent from the ring stop.We really have two rings in HSX -- a clockwise ring and a counter-clockwise ring. On the left side of the ring, the UP direction is on the clockwise ring and DN is on the counter-clockwise ring. On the right side of the ring, this is reversed. The first half of the CBos are on the left side of the ring, and the 2nd half are on the right side of the ring. In other words (for example), in a 4c part, Cbo 0 UP AD is NOT the same ring as CBo 2 UP AD because they are on opposite sides of the ring.; Filters for the Up and Even ring polarity.", 676667433c4SIan Rogers "UMask": "0x1", 677579c0472SIan Rogers "Unit": "CBOX" 678bedd1738SZhengjun Xing }, 679bedd1738SZhengjun Xing { 680667433c4SIan Rogers "BriefDescription": "BL Ring in Use; Up and Odd", 68111c2302cSIan Rogers "Counter": "0,1,2,3", 682bedd1738SZhengjun Xing "EventCode": "0x1D", 683667433c4SIan Rogers "EventName": "UNC_C_RING_BL_USED.UP_ODD", 684bedd1738SZhengjun Xing "PerPkg": "1", 685667433c4SIan Rogers "PublicDescription": "Counts the number of cycles that the BL ring is being used at this ring stop. This includes when packets are passing by and when packets are being sunk, but does not include when packets are being sent from the ring stop.We really have two rings in HSX -- a clockwise ring and a counter-clockwise ring. On the left side of the ring, the UP direction is on the clockwise ring and DN is on the counter-clockwise ring. On the right side of the ring, this is reversed. The first half of the CBos are on the left side of the ring, and the 2nd half are on the right side of the ring. In other words (for example), in a 4c part, Cbo 0 UP AD is NOT the same ring as CBo 2 UP AD because they are on opposite sides of the ring.; Filters for the Up and Odd ring polarity.", 686667433c4SIan Rogers "UMask": "0x2", 687579c0472SIan Rogers "Unit": "CBOX" 688bedd1738SZhengjun Xing }, 689bedd1738SZhengjun Xing { 690bedd1738SZhengjun Xing "BriefDescription": "Number of LLC responses that bounced on the Ring.; AD", 69111c2302cSIan Rogers "Counter": "0,1,2,3", 692bedd1738SZhengjun Xing "EventCode": "0x5", 693bedd1738SZhengjun Xing "EventName": "UNC_C_RING_BOUNCES.AD", 694bedd1738SZhengjun Xing "PerPkg": "1", 695bedd1738SZhengjun Xing "UMask": "0x1", 696579c0472SIan Rogers "Unit": "CBOX" 697bedd1738SZhengjun Xing }, 698bedd1738SZhengjun Xing { 699bedd1738SZhengjun Xing "BriefDescription": "Number of LLC responses that bounced on the Ring.; AK", 70011c2302cSIan Rogers "Counter": "0,1,2,3", 701bedd1738SZhengjun Xing "EventCode": "0x5", 702bedd1738SZhengjun Xing "EventName": "UNC_C_RING_BOUNCES.AK", 703bedd1738SZhengjun Xing "PerPkg": "1", 704bedd1738SZhengjun Xing "UMask": "0x2", 705579c0472SIan Rogers "Unit": "CBOX" 706bedd1738SZhengjun Xing }, 707bedd1738SZhengjun Xing { 708bedd1738SZhengjun Xing "BriefDescription": "Number of LLC responses that bounced on the Ring.; BL", 70911c2302cSIan Rogers "Counter": "0,1,2,3", 710bedd1738SZhengjun Xing "EventCode": "0x5", 711bedd1738SZhengjun Xing "EventName": "UNC_C_RING_BOUNCES.BL", 712bedd1738SZhengjun Xing "PerPkg": "1", 713bedd1738SZhengjun Xing "UMask": "0x4", 714579c0472SIan Rogers "Unit": "CBOX" 715bedd1738SZhengjun Xing }, 716bedd1738SZhengjun Xing { 717667433c4SIan Rogers "BriefDescription": "Number of LLC responses that bounced on the Ring.; Snoops of processor's cache.", 71811c2302cSIan Rogers "Counter": "0,1,2,3", 719bedd1738SZhengjun Xing "EventCode": "0x5", 720bedd1738SZhengjun Xing "EventName": "UNC_C_RING_BOUNCES.IV", 721bedd1738SZhengjun Xing "PerPkg": "1", 722bedd1738SZhengjun Xing "UMask": "0x10", 723579c0472SIan Rogers "Unit": "CBOX" 724bedd1738SZhengjun Xing }, 725bedd1738SZhengjun Xing { 726bedd1738SZhengjun Xing "BriefDescription": "BL Ring in Use; Any", 72711c2302cSIan Rogers "Counter": "0,1,2,3", 728bedd1738SZhengjun Xing "EventCode": "0x1E", 729bedd1738SZhengjun Xing "EventName": "UNC_C_RING_IV_USED.ANY", 730bedd1738SZhengjun Xing "PerPkg": "1", 731667433c4SIan Rogers "PublicDescription": "Counts the number of cycles that the IV ring is being used at this ring stop. This includes when packets are passing by and when packets are being sunk, but does not include when packets are being sent from the ring stop. There is only 1 IV ring in HSX Therefore, if one wants to monitor the Even ring, they should select both UP_EVEN and DN_EVEN. To monitor the Odd ring, they should select both UP_ODD and DN_ODD.; Filters any polarity", 732667433c4SIan Rogers "UMask": "0xf", 733579c0472SIan Rogers "Unit": "CBOX" 734bedd1738SZhengjun Xing }, 735bedd1738SZhengjun Xing { 736bedd1738SZhengjun Xing "BriefDescription": "BL Ring in Use; Any", 73711c2302cSIan Rogers "Counter": "0,1,2,3", 738bedd1738SZhengjun Xing "EventCode": "0x1E", 739667433c4SIan Rogers "EventName": "UNC_C_RING_IV_USED.DN", 740bedd1738SZhengjun Xing "PerPkg": "1", 741667433c4SIan Rogers "PublicDescription": "Counts the number of cycles that the IV ring is being used at this ring stop. This includes when packets are passing by and when packets are being sunk, but does not include when packets are being sent from the ring stop. There is only 1 IV ring in HSX Therefore, if one wants to monitor the Even ring, they should select both UP_EVEN and DN_EVEN. To monitor the Odd ring, they should select both UP_ODD and DN_ODD.; Filters any polarity", 742667433c4SIan Rogers "UMask": "0xc", 743579c0472SIan Rogers "Unit": "CBOX" 7447003f00fSAndi Kleen }, 7457003f00fSAndi Kleen { 746bedd1738SZhengjun Xing "BriefDescription": "BL Ring in Use; Down", 74711c2302cSIan Rogers "Counter": "0,1,2,3", 748bedd1738SZhengjun Xing "EventCode": "0x1E", 749bedd1738SZhengjun Xing "EventName": "UNC_C_RING_IV_USED.DOWN", 7507003f00fSAndi Kleen "PerPkg": "1", 751667433c4SIan Rogers "PublicDescription": "Counts the number of cycles that the IV ring is being used at this ring stop. This includes when packets are passing by and when packets are being sunk, but does not include when packets are being sent from the ring stop. There is only 1 IV ring in HSX Therefore, if one wants to monitor the Even ring, they should select both UP_EVEN and DN_EVEN. To monitor the Odd ring, they should select both UP_ODD and DN_ODD.; Filters for Down polarity", 752667433c4SIan Rogers "UMask": "0xcc", 753579c0472SIan Rogers "Unit": "CBOX" 7547003f00fSAndi Kleen }, 7557003f00fSAndi Kleen { 756bedd1738SZhengjun Xing "BriefDescription": "BL Ring in Use; Any", 75711c2302cSIan Rogers "Counter": "0,1,2,3", 758bedd1738SZhengjun Xing "EventCode": "0x1E", 759667433c4SIan Rogers "EventName": "UNC_C_RING_IV_USED.UP", 7607003f00fSAndi Kleen "PerPkg": "1", 761667433c4SIan Rogers "PublicDescription": "Counts the number of cycles that the IV ring is being used at this ring stop. This includes when packets are passing by and when packets are being sunk, but does not include when packets are being sent from the ring stop. There is only 1 IV ring in HSX Therefore, if one wants to monitor the Even ring, they should select both UP_EVEN and DN_EVEN. To monitor the Odd ring, they should select both UP_ODD and DN_ODD.; Filters any polarity", 762667433c4SIan Rogers "UMask": "0x3", 763579c0472SIan Rogers "Unit": "CBOX" 7647003f00fSAndi Kleen }, 7657003f00fSAndi Kleen { 766859fe0f4SIan Rogers "BriefDescription": "UNC_C_RING_SINK_STARVED.AD", 76711c2302cSIan Rogers "Counter": "0,1,2,3", 768bedd1738SZhengjun Xing "EventCode": "0x6", 769bedd1738SZhengjun Xing "EventName": "UNC_C_RING_SINK_STARVED.AD", 7707003f00fSAndi Kleen "PerPkg": "1", 771bedd1738SZhengjun Xing "UMask": "0x1", 772579c0472SIan Rogers "Unit": "CBOX" 7737003f00fSAndi Kleen }, 7747003f00fSAndi Kleen { 775859fe0f4SIan Rogers "BriefDescription": "UNC_C_RING_SINK_STARVED.AK", 77611c2302cSIan Rogers "Counter": "0,1,2,3", 777bedd1738SZhengjun Xing "EventCode": "0x6", 778bedd1738SZhengjun Xing "EventName": "UNC_C_RING_SINK_STARVED.AK", 7797003f00fSAndi Kleen "PerPkg": "1", 780bedd1738SZhengjun Xing "UMask": "0x2", 781579c0472SIan Rogers "Unit": "CBOX" 7827003f00fSAndi Kleen }, 7837003f00fSAndi Kleen { 784859fe0f4SIan Rogers "BriefDescription": "UNC_C_RING_SINK_STARVED.BL", 78511c2302cSIan Rogers "Counter": "0,1,2,3", 786bedd1738SZhengjun Xing "EventCode": "0x6", 787bedd1738SZhengjun Xing "EventName": "UNC_C_RING_SINK_STARVED.BL", 7887003f00fSAndi Kleen "PerPkg": "1", 789bedd1738SZhengjun Xing "UMask": "0x4", 790579c0472SIan Rogers "Unit": "CBOX" 791bedd1738SZhengjun Xing }, 792bedd1738SZhengjun Xing { 793667433c4SIan Rogers "BriefDescription": "UNC_C_RING_SINK_STARVED.IV", 79411c2302cSIan Rogers "Counter": "0,1,2,3", 795667433c4SIan Rogers "EventCode": "0x6", 796667433c4SIan Rogers "EventName": "UNC_C_RING_SINK_STARVED.IV", 797667433c4SIan Rogers "PerPkg": "1", 798667433c4SIan Rogers "UMask": "0x8", 799579c0472SIan Rogers "Unit": "CBOX" 800667433c4SIan Rogers }, 801667433c4SIan Rogers { 802667433c4SIan Rogers "BriefDescription": "Number of cycles the Cbo is actively throttling traffic onto the Ring in order to limit bounce traffic.", 80311c2302cSIan Rogers "Counter": "0,1,2,3", 804bedd1738SZhengjun Xing "EventCode": "0x7", 805bedd1738SZhengjun Xing "EventName": "UNC_C_RING_SRC_THRTL", 806bedd1738SZhengjun Xing "PerPkg": "1", 807579c0472SIan Rogers "Unit": "CBOX" 808bedd1738SZhengjun Xing }, 809bedd1738SZhengjun Xing { 810bedd1738SZhengjun Xing "BriefDescription": "Ingress Arbiter Blocking Cycles; IRQ", 81111c2302cSIan Rogers "Counter": "0,1,2,3", 812bedd1738SZhengjun Xing "EventCode": "0x12", 813bedd1738SZhengjun Xing "EventName": "UNC_C_RxR_EXT_STARVED.IPQ", 814bedd1738SZhengjun Xing "PerPkg": "1", 815*be67d89fSIan Rogers "PublicDescription": "Counts cycles in external starvation. This occurs when one of the ingress queues is being starved by the other queues.; IPQ is externally starved and therefore we are blocking the IRQ.", 816bedd1738SZhengjun Xing "UMask": "0x2", 817579c0472SIan Rogers "Unit": "CBOX" 818bedd1738SZhengjun Xing }, 819bedd1738SZhengjun Xing { 820667433c4SIan Rogers "BriefDescription": "Ingress Arbiter Blocking Cycles; IPQ", 82111c2302cSIan Rogers "Counter": "0,1,2,3", 822bedd1738SZhengjun Xing "EventCode": "0x12", 823667433c4SIan Rogers "EventName": "UNC_C_RxR_EXT_STARVED.IRQ", 824bedd1738SZhengjun Xing "PerPkg": "1", 825667433c4SIan Rogers "PublicDescription": "Counts cycles in external starvation. This occurs when one of the ingress queues is being starved by the other queues.; IRQ is externally starved and therefore we are blocking the IPQ.", 826667433c4SIan Rogers "UMask": "0x1", 827579c0472SIan Rogers "Unit": "CBOX" 828bedd1738SZhengjun Xing }, 829bedd1738SZhengjun Xing { 830bedd1738SZhengjun Xing "BriefDescription": "Ingress Arbiter Blocking Cycles; ISMQ_BID", 83111c2302cSIan Rogers "Counter": "0,1,2,3", 832bedd1738SZhengjun Xing "EventCode": "0x12", 833bedd1738SZhengjun Xing "EventName": "UNC_C_RxR_EXT_STARVED.ISMQ_BIDS", 834bedd1738SZhengjun Xing "PerPkg": "1", 835667433c4SIan Rogers "PublicDescription": "Counts cycles in external starvation. This occurs when one of the ingress queues is being starved by the other queues.; Number of times that the ISMQ Bid.", 836bedd1738SZhengjun Xing "UMask": "0x8", 837579c0472SIan Rogers "Unit": "CBOX" 838bedd1738SZhengjun Xing }, 839bedd1738SZhengjun Xing { 840667433c4SIan Rogers "BriefDescription": "Ingress Arbiter Blocking Cycles; PRQ", 84111c2302cSIan Rogers "Counter": "0,1,2,3", 842667433c4SIan Rogers "EventCode": "0x12", 843667433c4SIan Rogers "EventName": "UNC_C_RxR_EXT_STARVED.PRQ", 844667433c4SIan Rogers "PerPkg": "1", 845667433c4SIan Rogers "PublicDescription": "Counts cycles in external starvation. This occurs when one of the ingress queues is being starved by the other queues.", 846667433c4SIan Rogers "UMask": "0x4", 847579c0472SIan Rogers "Unit": "CBOX" 848667433c4SIan Rogers }, 849667433c4SIan Rogers { 850667433c4SIan Rogers "BriefDescription": "Ingress Allocations; IPQ", 85111c2302cSIan Rogers "Counter": "0,1,2,3", 852667433c4SIan Rogers "EventCode": "0x13", 853667433c4SIan Rogers "EventName": "UNC_C_RxR_INSERTS.IPQ", 854667433c4SIan Rogers "PerPkg": "1", 855667433c4SIan Rogers "PublicDescription": "Counts number of allocations per cycle into the specified Ingress queue.", 856667433c4SIan Rogers "UMask": "0x4", 857579c0472SIan Rogers "Unit": "CBOX" 858667433c4SIan Rogers }, 859667433c4SIan Rogers { 860bedd1738SZhengjun Xing "BriefDescription": "Ingress Allocations; IRQ", 86111c2302cSIan Rogers "Counter": "0,1,2,3", 862bedd1738SZhengjun Xing "EventCode": "0x13", 863bedd1738SZhengjun Xing "EventName": "UNC_C_RxR_INSERTS.IRQ", 864bedd1738SZhengjun Xing "PerPkg": "1", 865667433c4SIan Rogers "PublicDescription": "Counts number of allocations per cycle into the specified Ingress queue.", 866bedd1738SZhengjun Xing "UMask": "0x1", 867579c0472SIan Rogers "Unit": "CBOX" 868bedd1738SZhengjun Xing }, 869bedd1738SZhengjun Xing { 870bedd1738SZhengjun Xing "BriefDescription": "Ingress Allocations; IRQ Rejected", 87111c2302cSIan Rogers "Counter": "0,1,2,3", 872bedd1738SZhengjun Xing "EventCode": "0x13", 873bedd1738SZhengjun Xing "EventName": "UNC_C_RxR_INSERTS.IRQ_REJ", 874bedd1738SZhengjun Xing "PerPkg": "1", 875667433c4SIan Rogers "PublicDescription": "Counts number of allocations per cycle into the specified Ingress queue.", 876bedd1738SZhengjun Xing "UMask": "0x2", 877579c0472SIan Rogers "Unit": "CBOX" 878bedd1738SZhengjun Xing }, 879bedd1738SZhengjun Xing { 880bedd1738SZhengjun Xing "BriefDescription": "Ingress Allocations; PRQ", 88111c2302cSIan Rogers "Counter": "0,1,2,3", 882bedd1738SZhengjun Xing "EventCode": "0x13", 883bedd1738SZhengjun Xing "EventName": "UNC_C_RxR_INSERTS.PRQ", 884bedd1738SZhengjun Xing "PerPkg": "1", 885667433c4SIan Rogers "PublicDescription": "Counts number of allocations per cycle into the specified Ingress queue.", 886bedd1738SZhengjun Xing "UMask": "0x10", 887579c0472SIan Rogers "Unit": "CBOX" 888bedd1738SZhengjun Xing }, 889bedd1738SZhengjun Xing { 890bedd1738SZhengjun Xing "BriefDescription": "Ingress Allocations; PRQ", 89111c2302cSIan Rogers "Counter": "0,1,2,3", 892bedd1738SZhengjun Xing "EventCode": "0x13", 893bedd1738SZhengjun Xing "EventName": "UNC_C_RxR_INSERTS.PRQ_REJ", 894bedd1738SZhengjun Xing "PerPkg": "1", 895667433c4SIan Rogers "PublicDescription": "Counts number of allocations per cycle into the specified Ingress queue.", 896bedd1738SZhengjun Xing "UMask": "0x20", 897579c0472SIan Rogers "Unit": "CBOX" 898bedd1738SZhengjun Xing }, 899bedd1738SZhengjun Xing { 900bedd1738SZhengjun Xing "BriefDescription": "Ingress Internal Starvation Cycles; IPQ", 90111c2302cSIan Rogers "Counter": "0,1,2,3", 902bedd1738SZhengjun Xing "EventCode": "0x14", 903bedd1738SZhengjun Xing "EventName": "UNC_C_RxR_INT_STARVED.IPQ", 904bedd1738SZhengjun Xing "PerPkg": "1", 905667433c4SIan Rogers "PublicDescription": "Counts cycles in internal starvation. This occurs when one (or more) of the entries in the ingress queue are being starved out by other entries in that queue.; Cycles with the IPQ in Internal Starvation.", 906bedd1738SZhengjun Xing "UMask": "0x4", 907579c0472SIan Rogers "Unit": "CBOX" 908bedd1738SZhengjun Xing }, 909bedd1738SZhengjun Xing { 910667433c4SIan Rogers "BriefDescription": "Ingress Internal Starvation Cycles; IRQ", 91111c2302cSIan Rogers "Counter": "0,1,2,3", 912667433c4SIan Rogers "EventCode": "0x14", 913667433c4SIan Rogers "EventName": "UNC_C_RxR_INT_STARVED.IRQ", 914667433c4SIan Rogers "PerPkg": "1", 915667433c4SIan Rogers "PublicDescription": "Counts cycles in internal starvation. This occurs when one (or more) of the entries in the ingress queue are being starved out by other entries in that queue.; Cycles with the IRQ in Internal Starvation.", 916667433c4SIan Rogers "UMask": "0x1", 917579c0472SIan Rogers "Unit": "CBOX" 918667433c4SIan Rogers }, 919667433c4SIan Rogers { 920bedd1738SZhengjun Xing "BriefDescription": "Ingress Internal Starvation Cycles; ISMQ", 92111c2302cSIan Rogers "Counter": "0,1,2,3", 922bedd1738SZhengjun Xing "EventCode": "0x14", 923bedd1738SZhengjun Xing "EventName": "UNC_C_RxR_INT_STARVED.ISMQ", 924bedd1738SZhengjun Xing "PerPkg": "1", 925667433c4SIan Rogers "PublicDescription": "Counts cycles in internal starvation. This occurs when one (or more) of the entries in the ingress queue are being starved out by other entries in that queue.; Cycles with the ISMQ in Internal Starvation.", 926bedd1738SZhengjun Xing "UMask": "0x8", 927579c0472SIan Rogers "Unit": "CBOX" 928bedd1738SZhengjun Xing }, 929bedd1738SZhengjun Xing { 930bedd1738SZhengjun Xing "BriefDescription": "Ingress Internal Starvation Cycles; PRQ", 93111c2302cSIan Rogers "Counter": "0,1,2,3", 932bedd1738SZhengjun Xing "EventCode": "0x14", 933bedd1738SZhengjun Xing "EventName": "UNC_C_RxR_INT_STARVED.PRQ", 934bedd1738SZhengjun Xing "PerPkg": "1", 935667433c4SIan Rogers "PublicDescription": "Counts cycles in internal starvation. This occurs when one (or more) of the entries in the ingress queue are being starved out by other entries in that queue.", 936bedd1738SZhengjun Xing "UMask": "0x10", 937579c0472SIan Rogers "Unit": "CBOX" 938bedd1738SZhengjun Xing }, 939bedd1738SZhengjun Xing { 940667433c4SIan Rogers "BriefDescription": "Probe Queue Retries; Address Conflict", 94111c2302cSIan Rogers "Counter": "0,1,2,3", 942667433c4SIan Rogers "EventCode": "0x31", 943667433c4SIan Rogers "EventName": "UNC_C_RxR_IPQ_RETRY.ADDR_CONFLICT", 944667433c4SIan Rogers "PerPkg": "1", 945667433c4SIan Rogers "PublicDescription": "Number of times a snoop (probe) request had to retry. Filters exist to cover some of the common cases retries.; Counts the number of times that a request form the IPQ was retried because of a TOR reject from an address conflicts. Address conflicts out of the IPQ should be rare. They will generally only occur if two different sockets are sending requests to the same address at the same time. This is a true conflict case, unlike the IPQ Address Conflict which is commonly caused by prefetching characteristics.", 946667433c4SIan Rogers "UMask": "0x4", 947579c0472SIan Rogers "Unit": "CBOX" 948667433c4SIan Rogers }, 949667433c4SIan Rogers { 950bedd1738SZhengjun Xing "BriefDescription": "Probe Queue Retries; Any Reject", 95111c2302cSIan Rogers "Counter": "0,1,2,3", 952bedd1738SZhengjun Xing "EventCode": "0x31", 953bedd1738SZhengjun Xing "EventName": "UNC_C_RxR_IPQ_RETRY.ANY", 954bedd1738SZhengjun Xing "PerPkg": "1", 955667433c4SIan Rogers "PublicDescription": "Number of times a snoop (probe) request had to retry. Filters exist to cover some of the common cases retries.; Counts the number of times that a request form the IPQ was retried because of a TOR reject. TOR rejects from the IPQ can be caused by the Egress being full or Address Conflicts.", 956bedd1738SZhengjun Xing "UMask": "0x1", 957579c0472SIan Rogers "Unit": "CBOX" 958bedd1738SZhengjun Xing }, 959bedd1738SZhengjun Xing { 960bedd1738SZhengjun Xing "BriefDescription": "Probe Queue Retries; No Egress Credits", 96111c2302cSIan Rogers "Counter": "0,1,2,3", 962bedd1738SZhengjun Xing "EventCode": "0x31", 963bedd1738SZhengjun Xing "EventName": "UNC_C_RxR_IPQ_RETRY.FULL", 964bedd1738SZhengjun Xing "PerPkg": "1", 965667433c4SIan Rogers "PublicDescription": "Number of times a snoop (probe) request had to retry. Filters exist to cover some of the common cases retries.; Counts the number of times that a request form the IPQ was retried because of a TOR reject from the Egress being full. IPQ requests make use of the AD Egress for regular responses, the BL egress to forward data, and the AK egress to return credits.", 966bedd1738SZhengjun Xing "UMask": "0x2", 967579c0472SIan Rogers "Unit": "CBOX" 968bedd1738SZhengjun Xing }, 969bedd1738SZhengjun Xing { 970bedd1738SZhengjun Xing "BriefDescription": "Probe Queue Retries; No QPI Credits", 97111c2302cSIan Rogers "Counter": "0,1,2,3", 972bedd1738SZhengjun Xing "EventCode": "0x31", 973bedd1738SZhengjun Xing "EventName": "UNC_C_RxR_IPQ_RETRY.QPI_CREDITS", 974bedd1738SZhengjun Xing "PerPkg": "1", 975667433c4SIan Rogers "PublicDescription": "Number of times a snoop (probe) request had to retry. Filters exist to cover some of the common cases retries.", 976bedd1738SZhengjun Xing "UMask": "0x10", 977579c0472SIan Rogers "Unit": "CBOX" 978bedd1738SZhengjun Xing }, 979bedd1738SZhengjun Xing { 980bedd1738SZhengjun Xing "BriefDescription": "Probe Queue Retries; No AD Sbo Credits", 98111c2302cSIan Rogers "Counter": "0,1,2,3", 982bedd1738SZhengjun Xing "EventCode": "0x28", 983bedd1738SZhengjun Xing "EventName": "UNC_C_RxR_IPQ_RETRY2.AD_SBO", 984bedd1738SZhengjun Xing "PerPkg": "1", 985667433c4SIan Rogers "PublicDescription": "Number of times a snoop (probe) request had to retry. Filters exist to cover some of the common cases retries.; Counts the number of times that a request from the IPQ was retried because of it lacked credits to send an AD packet to the Sbo.", 986bedd1738SZhengjun Xing "UMask": "0x1", 987579c0472SIan Rogers "Unit": "CBOX" 988bedd1738SZhengjun Xing }, 989bedd1738SZhengjun Xing { 990bedd1738SZhengjun Xing "BriefDescription": "Probe Queue Retries; Target Node Filter", 99111c2302cSIan Rogers "Counter": "0,1,2,3", 992bedd1738SZhengjun Xing "EventCode": "0x28", 993bedd1738SZhengjun Xing "EventName": "UNC_C_RxR_IPQ_RETRY2.TARGET", 994bedd1738SZhengjun Xing "PerPkg": "1", 995667433c4SIan Rogers "PublicDescription": "Number of times a snoop (probe) request had to retry. Filters exist to cover some of the common cases retries.; Counts the number of times that a request from the IPQ was retried filtered by the Target NodeID as specified in the Cbox's Filter register.", 996bedd1738SZhengjun Xing "UMask": "0x40", 997579c0472SIan Rogers "Unit": "CBOX" 998bedd1738SZhengjun Xing }, 999bedd1738SZhengjun Xing { 1000667433c4SIan Rogers "BriefDescription": "Ingress Request Queue Rejects; Address Conflict", 100111c2302cSIan Rogers "Counter": "0,1,2,3", 1002667433c4SIan Rogers "EventCode": "0x32", 1003667433c4SIan Rogers "EventName": "UNC_C_RxR_IRQ_RETRY.ADDR_CONFLICT", 1004667433c4SIan Rogers "PerPkg": "1", 1005667433c4SIan Rogers "PublicDescription": "Counts the number of times that a request from the IRQ was retried because of an address match in the TOR. In order to maintain coherency, requests to the same address are not allowed to pass each other up in the Cbo. Therefore, if there is an outstanding request to a given address, one cannot issue another request to that address until it is complete. This comes up most commonly with prefetches. Outstanding prefetches occasionally will not complete their memory fetch and a demand request to the same address will then sit in the IRQ and get retried until the prefetch fills the data into the LLC. Therefore, it will not be uncommon to see this case in high bandwidth streaming workloads when the LLC Prefetcher in the core is enabled.", 1006667433c4SIan Rogers "UMask": "0x4", 1007579c0472SIan Rogers "Unit": "CBOX" 1008667433c4SIan Rogers }, 1009667433c4SIan Rogers { 1010bedd1738SZhengjun Xing "BriefDescription": "Ingress Request Queue Rejects; Any Reject", 101111c2302cSIan Rogers "Counter": "0,1,2,3", 1012bedd1738SZhengjun Xing "EventCode": "0x32", 1013bedd1738SZhengjun Xing "EventName": "UNC_C_RxR_IRQ_RETRY.ANY", 1014bedd1738SZhengjun Xing "PerPkg": "1", 1015667433c4SIan Rogers "PublicDescription": "Counts the number of IRQ retries that occur. Requests from the IRQ are retried if they are rejected from the TOR pipeline for a variety of reasons. Some of the most common reasons include if the Egress is full, there are no RTIDs, or there is a Physical Address match to another outstanding request.", 1016bedd1738SZhengjun Xing "UMask": "0x1", 1017579c0472SIan Rogers "Unit": "CBOX" 1018bedd1738SZhengjun Xing }, 1019bedd1738SZhengjun Xing { 1020bedd1738SZhengjun Xing "BriefDescription": "Ingress Request Queue Rejects; No Egress Credits", 102111c2302cSIan Rogers "Counter": "0,1,2,3", 1022bedd1738SZhengjun Xing "EventCode": "0x32", 1023bedd1738SZhengjun Xing "EventName": "UNC_C_RxR_IRQ_RETRY.FULL", 1024bedd1738SZhengjun Xing "PerPkg": "1", 1025667433c4SIan Rogers "PublicDescription": "Counts the number of times that a request from the IRQ was retried because it failed to acquire an entry in the Egress. The egress is the buffer that queues up for allocating onto the ring. IRQ requests can make use of all four rings and all four Egresses. If any of the queues that a given request needs to make use of are full, the request will be retried.", 1026bedd1738SZhengjun Xing "UMask": "0x2", 1027579c0472SIan Rogers "Unit": "CBOX" 1028bedd1738SZhengjun Xing }, 1029bedd1738SZhengjun Xing { 1030bedd1738SZhengjun Xing "BriefDescription": "Ingress Request Queue Rejects; No IIO Credits", 103111c2302cSIan Rogers "Counter": "0,1,2,3", 1032bedd1738SZhengjun Xing "EventCode": "0x32", 1033bedd1738SZhengjun Xing "EventName": "UNC_C_RxR_IRQ_RETRY.IIO_CREDITS", 1034bedd1738SZhengjun Xing "PerPkg": "1", 1035667433c4SIan Rogers "PublicDescription": "Number of times a request attempted to acquire the NCS/NCB credit for sending messages on BL to the IIO. There is a single credit in each CBo that is shared between the NCS and NCB message classes for sending transactions on the BL ring (such as read data) to the IIO.", 1036bedd1738SZhengjun Xing "UMask": "0x20", 1037579c0472SIan Rogers "Unit": "CBOX" 1038bedd1738SZhengjun Xing }, 1039bedd1738SZhengjun Xing { 1040bedd1738SZhengjun Xing "BriefDescription": "Ingress Request Queue Rejects", 104111c2302cSIan Rogers "Counter": "0,1,2,3", 1042bedd1738SZhengjun Xing "EventCode": "0x32", 1043bedd1738SZhengjun Xing "EventName": "UNC_C_RxR_IRQ_RETRY.NID", 1044bedd1738SZhengjun Xing "PerPkg": "1", 1045667433c4SIan Rogers "PublicDescription": "Qualify one of the other subevents by a given RTID destination NID. The NID is programmed in Cn_MSR_PMON_BOX_FILTER1.nid.", 1046bedd1738SZhengjun Xing "UMask": "0x40", 1047579c0472SIan Rogers "Unit": "CBOX" 1048bedd1738SZhengjun Xing }, 1049bedd1738SZhengjun Xing { 1050667433c4SIan Rogers "BriefDescription": "Ingress Request Queue Rejects; No QPI Credits", 105111c2302cSIan Rogers "Counter": "0,1,2,3", 1052667433c4SIan Rogers "EventCode": "0x32", 1053667433c4SIan Rogers "EventName": "UNC_C_RxR_IRQ_RETRY.QPI_CREDITS", 1054667433c4SIan Rogers "PerPkg": "1", 1055667433c4SIan Rogers "PublicDescription": "Number of requests rejects because of lack of QPI Ingress credits. These credits are required in order to send transactions to the QPI agent. Please see the QPI_IGR_CREDITS events for more information.", 1056667433c4SIan Rogers "UMask": "0x10", 1057579c0472SIan Rogers "Unit": "CBOX" 1058667433c4SIan Rogers }, 1059667433c4SIan Rogers { 1060667433c4SIan Rogers "BriefDescription": "Ingress Request Queue Rejects; No RTIDs", 106111c2302cSIan Rogers "Counter": "0,1,2,3", 1062667433c4SIan Rogers "EventCode": "0x32", 1063667433c4SIan Rogers "EventName": "UNC_C_RxR_IRQ_RETRY.RTID", 1064667433c4SIan Rogers "PerPkg": "1", 1065667433c4SIan Rogers "PublicDescription": "Counts the number of times that requests from the IRQ were retried because there were no RTIDs available. RTIDs are required after a request misses the LLC and needs to send snoops and/or requests to memory. If there are no RTIDs available, requests will queue up in the IRQ and retry until one becomes available. Note that there are multiple RTID pools for the different sockets. There may be cases where the local RTIDs are all used, but requests destined for remote memory can still acquire an RTID because there are remote RTIDs available. This event does not provide any filtering for this case.", 1066667433c4SIan Rogers "UMask": "0x8", 1067579c0472SIan Rogers "Unit": "CBOX" 1068667433c4SIan Rogers }, 1069667433c4SIan Rogers { 1070bedd1738SZhengjun Xing "BriefDescription": "Ingress Request Queue Rejects; No AD Sbo Credits", 107111c2302cSIan Rogers "Counter": "0,1,2,3", 1072bedd1738SZhengjun Xing "EventCode": "0x29", 1073bedd1738SZhengjun Xing "EventName": "UNC_C_RxR_IRQ_RETRY2.AD_SBO", 1074bedd1738SZhengjun Xing "PerPkg": "1", 1075667433c4SIan Rogers "PublicDescription": "Counts the number of times that a request from the IPQ was retried because of it lacked credits to send an AD packet to the Sbo.", 1076bedd1738SZhengjun Xing "UMask": "0x1", 1077579c0472SIan Rogers "Unit": "CBOX" 1078bedd1738SZhengjun Xing }, 1079bedd1738SZhengjun Xing { 1080bedd1738SZhengjun Xing "BriefDescription": "Ingress Request Queue Rejects; No BL Sbo Credits", 108111c2302cSIan Rogers "Counter": "0,1,2,3", 1082bedd1738SZhengjun Xing "EventCode": "0x29", 1083bedd1738SZhengjun Xing "EventName": "UNC_C_RxR_IRQ_RETRY2.BL_SBO", 1084bedd1738SZhengjun Xing "PerPkg": "1", 1085667433c4SIan Rogers "PublicDescription": "Counts the number of times that a request from the IPQ was retried because of it lacked credits to send an BL packet to the Sbo.", 1086bedd1738SZhengjun Xing "UMask": "0x2", 1087579c0472SIan Rogers "Unit": "CBOX" 1088bedd1738SZhengjun Xing }, 1089bedd1738SZhengjun Xing { 1090bedd1738SZhengjun Xing "BriefDescription": "Ingress Request Queue Rejects; Target Node Filter", 109111c2302cSIan Rogers "Counter": "0,1,2,3", 1092bedd1738SZhengjun Xing "EventCode": "0x29", 1093bedd1738SZhengjun Xing "EventName": "UNC_C_RxR_IRQ_RETRY2.TARGET", 1094bedd1738SZhengjun Xing "PerPkg": "1", 1095667433c4SIan Rogers "PublicDescription": "Counts the number of times that a request from the IPQ was retried filtered by the Target NodeID as specified in the Cbox's Filter register.", 1096bedd1738SZhengjun Xing "UMask": "0x40", 1097579c0472SIan Rogers "Unit": "CBOX" 1098bedd1738SZhengjun Xing }, 1099bedd1738SZhengjun Xing { 1100bedd1738SZhengjun Xing "BriefDescription": "ISMQ Retries; Any Reject", 110111c2302cSIan Rogers "Counter": "0,1,2,3", 1102bedd1738SZhengjun Xing "EventCode": "0x33", 1103bedd1738SZhengjun Xing "EventName": "UNC_C_RxR_ISMQ_RETRY.ANY", 1104bedd1738SZhengjun Xing "PerPkg": "1", 1105667433c4SIan Rogers "PublicDescription": "Number of times a transaction flowing through the ISMQ had to retry. Transaction pass through the ISMQ as responses for requests that already exist in the Cbo. Some examples include: when data is returned or when snoop responses come back from the cores.; Counts the total number of times that a request from the ISMQ retried because of a TOR reject. ISMQ requests generally will not need to retry (or at least ISMQ retries are less common than IRQ retries). ISMQ requests will retry if they are not able to acquire a needed Egress credit to get onto the ring, or for cache evictions that need to acquire an RTID. Most ISMQ requests already have an RTID, so eviction retries will be less common here.", 1106bedd1738SZhengjun Xing "UMask": "0x1", 1107579c0472SIan Rogers "Unit": "CBOX" 1108bedd1738SZhengjun Xing }, 1109bedd1738SZhengjun Xing { 1110bedd1738SZhengjun Xing "BriefDescription": "ISMQ Retries; No Egress Credits", 111111c2302cSIan Rogers "Counter": "0,1,2,3", 1112bedd1738SZhengjun Xing "EventCode": "0x33", 1113bedd1738SZhengjun Xing "EventName": "UNC_C_RxR_ISMQ_RETRY.FULL", 1114bedd1738SZhengjun Xing "PerPkg": "1", 1115667433c4SIan Rogers "PublicDescription": "Number of times a transaction flowing through the ISMQ had to retry. Transaction pass through the ISMQ as responses for requests that already exist in the Cbo. Some examples include: when data is returned or when snoop responses come back from the cores.; Counts the number of times that a request from the ISMQ retried because of a TOR reject caused by a lack of Egress credits. The egress is the buffer that queues up for allocating onto the ring. If any of the Egress queues that a given request needs to make use of are full, the request will be retried.", 1116bedd1738SZhengjun Xing "UMask": "0x2", 1117579c0472SIan Rogers "Unit": "CBOX" 1118bedd1738SZhengjun Xing }, 1119bedd1738SZhengjun Xing { 1120bedd1738SZhengjun Xing "BriefDescription": "ISMQ Retries; No IIO Credits", 112111c2302cSIan Rogers "Counter": "0,1,2,3", 1122bedd1738SZhengjun Xing "EventCode": "0x33", 1123bedd1738SZhengjun Xing "EventName": "UNC_C_RxR_ISMQ_RETRY.IIO_CREDITS", 1124bedd1738SZhengjun Xing "PerPkg": "1", 1125667433c4SIan Rogers "PublicDescription": "Number of times a transaction flowing through the ISMQ had to retry. Transaction pass through the ISMQ as responses for requests that already exist in the Cbo. Some examples include: when data is returned or when snoop responses come back from the cores.; Number of times a request attempted to acquire the NCS/NCB credit for sending messages on BL to the IIO. There is a single credit in each CBo that is shared between the NCS and NCB message classes for sending transactions on the BL ring (such as read data) to the IIO.", 1126bedd1738SZhengjun Xing "UMask": "0x20", 1127579c0472SIan Rogers "Unit": "CBOX" 1128bedd1738SZhengjun Xing }, 1129bedd1738SZhengjun Xing { 1130bedd1738SZhengjun Xing "BriefDescription": "ISMQ Retries", 113111c2302cSIan Rogers "Counter": "0,1,2,3", 1132bedd1738SZhengjun Xing "EventCode": "0x33", 1133bedd1738SZhengjun Xing "EventName": "UNC_C_RxR_ISMQ_RETRY.NID", 1134bedd1738SZhengjun Xing "PerPkg": "1", 1135667433c4SIan Rogers "PublicDescription": "Number of times a transaction flowing through the ISMQ had to retry. Transaction pass through the ISMQ as responses for requests that already exist in the Cbo. Some examples include: when data is returned or when snoop responses come back from the cores.; Qualify one of the other subevents by a given RTID destination NID. The NID is programmed in Cn_MSR_PMON_BOX_FILTER1.nid.", 1136bedd1738SZhengjun Xing "UMask": "0x40", 1137579c0472SIan Rogers "Unit": "CBOX" 1138bedd1738SZhengjun Xing }, 1139bedd1738SZhengjun Xing { 1140667433c4SIan Rogers "BriefDescription": "ISMQ Retries; No QPI Credits", 114111c2302cSIan Rogers "Counter": "0,1,2,3", 1142667433c4SIan Rogers "EventCode": "0x33", 1143667433c4SIan Rogers "EventName": "UNC_C_RxR_ISMQ_RETRY.QPI_CREDITS", 1144667433c4SIan Rogers "PerPkg": "1", 1145667433c4SIan Rogers "PublicDescription": "Number of times a transaction flowing through the ISMQ had to retry. Transaction pass through the ISMQ as responses for requests that already exist in the Cbo. Some examples include: when data is returned or when snoop responses come back from the cores.", 1146667433c4SIan Rogers "UMask": "0x10", 1147579c0472SIan Rogers "Unit": "CBOX" 1148667433c4SIan Rogers }, 1149667433c4SIan Rogers { 1150667433c4SIan Rogers "BriefDescription": "ISMQ Retries; No RTIDs", 115111c2302cSIan Rogers "Counter": "0,1,2,3", 1152667433c4SIan Rogers "EventCode": "0x33", 1153667433c4SIan Rogers "EventName": "UNC_C_RxR_ISMQ_RETRY.RTID", 1154667433c4SIan Rogers "PerPkg": "1", 1155667433c4SIan Rogers "PublicDescription": "Number of times a transaction flowing through the ISMQ had to retry. Transaction pass through the ISMQ as responses for requests that already exist in the Cbo. Some examples include: when data is returned or when snoop responses come back from the cores.; Counts the number of times that a request from the ISMQ retried because of a TOR reject caused by no RTIDs. M-state cache evictions are serviced through the ISMQ, and must acquire an RTID in order to write back to memory. If no RTIDs are available, they will be retried.", 1156667433c4SIan Rogers "UMask": "0x8", 1157579c0472SIan Rogers "Unit": "CBOX" 1158667433c4SIan Rogers }, 1159667433c4SIan Rogers { 1160667433c4SIan Rogers "BriefDescription": "ISMQ Retries", 116111c2302cSIan Rogers "Counter": "0,1,2,3", 1162667433c4SIan Rogers "EventCode": "0x33", 1163667433c4SIan Rogers "EventName": "UNC_C_RxR_ISMQ_RETRY.WB_CREDITS", 1164667433c4SIan Rogers "PerPkg": "1", 1165667433c4SIan Rogers "PublicDescription": "Number of times a transaction flowing through the ISMQ had to retry. Transaction pass through the ISMQ as responses for requests that already exist in the Cbo. Some examples include: when data is returned or when snoop responses come back from the cores.; Qualify one of the other subevents by a given RTID destination NID. The NID is programmed in Cn_MSR_PMON_BOX_FILTER1.nid.", 1166667433c4SIan Rogers "UMask": "0x80", 1167579c0472SIan Rogers "Unit": "CBOX" 1168667433c4SIan Rogers }, 1169667433c4SIan Rogers { 1170bedd1738SZhengjun Xing "BriefDescription": "ISMQ Request Queue Rejects; No AD Sbo Credits", 117111c2302cSIan Rogers "Counter": "0,1,2,3", 1172bedd1738SZhengjun Xing "EventCode": "0x2A", 1173bedd1738SZhengjun Xing "EventName": "UNC_C_RxR_ISMQ_RETRY2.AD_SBO", 1174bedd1738SZhengjun Xing "PerPkg": "1", 1175667433c4SIan Rogers "PublicDescription": "Counts the number of times that a request from the ISMQ was retried because of it lacked credits to send an AD packet to the Sbo.", 1176bedd1738SZhengjun Xing "UMask": "0x1", 1177579c0472SIan Rogers "Unit": "CBOX" 1178bedd1738SZhengjun Xing }, 1179bedd1738SZhengjun Xing { 1180bedd1738SZhengjun Xing "BriefDescription": "ISMQ Request Queue Rejects; No BL Sbo Credits", 118111c2302cSIan Rogers "Counter": "0,1,2,3", 1182bedd1738SZhengjun Xing "EventCode": "0x2A", 1183bedd1738SZhengjun Xing "EventName": "UNC_C_RxR_ISMQ_RETRY2.BL_SBO", 1184bedd1738SZhengjun Xing "PerPkg": "1", 1185667433c4SIan Rogers "PublicDescription": "Counts the number of times that a request from the ISMQ was retried because of it lacked credits to send an BL packet to the Sbo.", 1186bedd1738SZhengjun Xing "UMask": "0x2", 1187579c0472SIan Rogers "Unit": "CBOX" 1188bedd1738SZhengjun Xing }, 1189bedd1738SZhengjun Xing { 1190bedd1738SZhengjun Xing "BriefDescription": "ISMQ Request Queue Rejects; Target Node Filter", 119111c2302cSIan Rogers "Counter": "0,1,2,3", 1192bedd1738SZhengjun Xing "EventCode": "0x2A", 1193bedd1738SZhengjun Xing "EventName": "UNC_C_RxR_ISMQ_RETRY2.TARGET", 1194bedd1738SZhengjun Xing "PerPkg": "1", 1195667433c4SIan Rogers "PublicDescription": "Counts the number of times that a request from the ISMQ was retried filtered by the Target NodeID as specified in the Cbox's Filter register.", 1196bedd1738SZhengjun Xing "UMask": "0x40", 1197579c0472SIan Rogers "Unit": "CBOX" 1198bedd1738SZhengjun Xing }, 1199bedd1738SZhengjun Xing { 1200bedd1738SZhengjun Xing "BriefDescription": "Ingress Occupancy; IPQ", 120111c2302cSIan Rogers "Counter": "0", 1202bedd1738SZhengjun Xing "EventCode": "0x11", 1203bedd1738SZhengjun Xing "EventName": "UNC_C_RxR_OCCUPANCY.IPQ", 1204bedd1738SZhengjun Xing "PerPkg": "1", 1205667433c4SIan Rogers "PublicDescription": "Counts number of entries in the specified Ingress queue in each cycle.", 1206bedd1738SZhengjun Xing "UMask": "0x4", 1207579c0472SIan Rogers "Unit": "CBOX" 1208bedd1738SZhengjun Xing }, 1209bedd1738SZhengjun Xing { 1210667433c4SIan Rogers "BriefDescription": "Ingress Occupancy; IRQ", 121111c2302cSIan Rogers "Counter": "0", 1212667433c4SIan Rogers "EventCode": "0x11", 1213667433c4SIan Rogers "EventName": "UNC_C_RxR_OCCUPANCY.IRQ", 1214667433c4SIan Rogers "PerPkg": "1", 1215667433c4SIan Rogers "PublicDescription": "Counts number of entries in the specified Ingress queue in each cycle.", 1216667433c4SIan Rogers "UMask": "0x1", 1217579c0472SIan Rogers "Unit": "CBOX" 1218667433c4SIan Rogers }, 1219667433c4SIan Rogers { 1220667433c4SIan Rogers "BriefDescription": "Ingress Occupancy; IRQ Rejected", 122111c2302cSIan Rogers "Counter": "0", 1222667433c4SIan Rogers "EventCode": "0x11", 1223667433c4SIan Rogers "EventName": "UNC_C_RxR_OCCUPANCY.IRQ_REJ", 1224667433c4SIan Rogers "PerPkg": "1", 1225667433c4SIan Rogers "PublicDescription": "Counts number of entries in the specified Ingress queue in each cycle.", 1226667433c4SIan Rogers "UMask": "0x2", 1227579c0472SIan Rogers "Unit": "CBOX" 1228667433c4SIan Rogers }, 1229667433c4SIan Rogers { 1230bedd1738SZhengjun Xing "BriefDescription": "Ingress Occupancy; PRQ Rejects", 123111c2302cSIan Rogers "Counter": "0", 1232bedd1738SZhengjun Xing "EventCode": "0x11", 1233bedd1738SZhengjun Xing "EventName": "UNC_C_RxR_OCCUPANCY.PRQ_REJ", 1234bedd1738SZhengjun Xing "PerPkg": "1", 1235667433c4SIan Rogers "PublicDescription": "Counts number of entries in the specified Ingress queue in each cycle.", 1236bedd1738SZhengjun Xing "UMask": "0x20", 1237579c0472SIan Rogers "Unit": "CBOX" 1238bedd1738SZhengjun Xing }, 1239bedd1738SZhengjun Xing { 1240bedd1738SZhengjun Xing "BriefDescription": "SBo Credits Acquired; For AD Ring", 124111c2302cSIan Rogers "Counter": "0,1,2,3", 1242bedd1738SZhengjun Xing "EventCode": "0x3D", 1243bedd1738SZhengjun Xing "EventName": "UNC_C_SBO_CREDITS_ACQUIRED.AD", 1244bedd1738SZhengjun Xing "PerPkg": "1", 1245667433c4SIan Rogers "PublicDescription": "Number of Sbo credits acquired in a given cycle, per ring. Each Cbo is assigned an Sbo it can communicate with.", 1246bedd1738SZhengjun Xing "UMask": "0x1", 1247579c0472SIan Rogers "Unit": "CBOX" 1248bedd1738SZhengjun Xing }, 1249bedd1738SZhengjun Xing { 1250bedd1738SZhengjun Xing "BriefDescription": "SBo Credits Acquired; For BL Ring", 125111c2302cSIan Rogers "Counter": "0,1,2,3", 1252bedd1738SZhengjun Xing "EventCode": "0x3D", 1253bedd1738SZhengjun Xing "EventName": "UNC_C_SBO_CREDITS_ACQUIRED.BL", 1254bedd1738SZhengjun Xing "PerPkg": "1", 1255667433c4SIan Rogers "PublicDescription": "Number of Sbo credits acquired in a given cycle, per ring. Each Cbo is assigned an Sbo it can communicate with.", 1256bedd1738SZhengjun Xing "UMask": "0x2", 1257579c0472SIan Rogers "Unit": "CBOX" 1258bedd1738SZhengjun Xing }, 1259bedd1738SZhengjun Xing { 1260bedd1738SZhengjun Xing "BriefDescription": "SBo Credits Occupancy; For AD Ring", 126111c2302cSIan Rogers "Counter": "0", 1262bedd1738SZhengjun Xing "EventCode": "0x3E", 1263bedd1738SZhengjun Xing "EventName": "UNC_C_SBO_CREDIT_OCCUPANCY.AD", 1264bedd1738SZhengjun Xing "PerPkg": "1", 1265667433c4SIan Rogers "PublicDescription": "Number of Sbo credits in use in a given cycle, per ring. Each Cbo is assigned an Sbo it can communicate with.", 1266bedd1738SZhengjun Xing "UMask": "0x1", 1267579c0472SIan Rogers "Unit": "CBOX" 1268bedd1738SZhengjun Xing }, 1269bedd1738SZhengjun Xing { 1270bedd1738SZhengjun Xing "BriefDescription": "SBo Credits Occupancy; For BL Ring", 127111c2302cSIan Rogers "Counter": "0", 1272bedd1738SZhengjun Xing "EventCode": "0x3E", 1273bedd1738SZhengjun Xing "EventName": "UNC_C_SBO_CREDIT_OCCUPANCY.BL", 1274bedd1738SZhengjun Xing "PerPkg": "1", 1275667433c4SIan Rogers "PublicDescription": "Number of Sbo credits in use in a given cycle, per ring. Each Cbo is assigned an Sbo it can communicate with.", 1276bedd1738SZhengjun Xing "UMask": "0x2", 1277579c0472SIan Rogers "Unit": "CBOX" 12787003f00fSAndi Kleen }, 12797003f00fSAndi Kleen { 1280bedd1738SZhengjun Xing "BriefDescription": "TOR Inserts; All", 128111c2302cSIan Rogers "Counter": "0,1,2,3", 1282bedd1738SZhengjun Xing "EventCode": "0x35", 1283bedd1738SZhengjun Xing "EventName": "UNC_C_TOR_INSERTS.ALL", 1284bedd1738SZhengjun Xing "PerPkg": "1", 1285667433c4SIan Rogers "PublicDescription": "Counts the number of entries successfully inserted into the TOR that match qualifications specified by the subevent. There are a number of subevent 'filters' but only a subset of the subevent combinations are valid. Subevents that require an opcode or NID match require the Cn_MSR_PMON_BOX_FILTER.{opc, nid} field to be set. If, for example, one wanted to count DRD Local Misses, one should select MISS_OPC_MATCH and set Cn_MSR_PMON_BOX_FILTER.opc to DRD (0x182).; All transactions inserted into the TOR. This includes requests that reside in the TOR for a short time, such as LLC Hits that do not need to snoop cores or requests that get rejected and have to be retried through one of the ingress queues. The TOR is more commonly a bottleneck in skews with smaller core counts, where the ratio of RTIDs to TOR entries is larger. Note that there are reserved TOR entries for various request types, so it is possible that a given request type be blocked with an occupancy that is less than 20. Also note that generally requests will not be able to arbitrate into the TOR pipeline if there are no available TOR slots.", 1286bedd1738SZhengjun Xing "UMask": "0x8", 1287579c0472SIan Rogers "Unit": "CBOX" 1288bedd1738SZhengjun Xing }, 1289bedd1738SZhengjun Xing { 1290667433c4SIan Rogers "BriefDescription": "TOR Inserts; Evictions", 129111c2302cSIan Rogers "Counter": "0,1,2,3", 1292bedd1738SZhengjun Xing "EventCode": "0x35", 1293667433c4SIan Rogers "EventName": "UNC_C_TOR_INSERTS.EVICTION", 1294bedd1738SZhengjun Xing "PerPkg": "1", 1295667433c4SIan Rogers "PublicDescription": "Counts the number of entries successfully inserted into the TOR that match qualifications specified by the subevent. There are a number of subevent 'filters' but only a subset of the subevent combinations are valid. Subevents that require an opcode or NID match require the Cn_MSR_PMON_BOX_FILTER.{opc, nid} field to be set. If, for example, one wanted to count DRD Local Misses, one should select MISS_OPC_MATCH and set Cn_MSR_PMON_BOX_FILTER.opc to DRD (0x182).; Eviction transactions inserted into the TOR. Evictions can be quick, such as when the line is in the F, S, or E states and no core valid bits are set. They can also be longer if either CV bits are set (so the cores need to be snooped) and/or if there is a HitM (in which case it is necessary to write the request out to memory).", 1296667433c4SIan Rogers "UMask": "0x4", 1297579c0472SIan Rogers "Unit": "CBOX" 1298bedd1738SZhengjun Xing }, 1299bedd1738SZhengjun Xing { 1300bedd1738SZhengjun Xing "BriefDescription": "TOR Inserts; Local Memory", 130111c2302cSIan Rogers "Counter": "0,1,2,3", 1302bedd1738SZhengjun Xing "EventCode": "0x35", 1303bedd1738SZhengjun Xing "EventName": "UNC_C_TOR_INSERTS.LOCAL", 1304bedd1738SZhengjun Xing "PerPkg": "1", 1305667433c4SIan Rogers "PublicDescription": "Counts the number of entries successfully inserted into the TOR that match qualifications specified by the subevent. There are a number of subevent 'filters' but only a subset of the subevent combinations are valid. Subevents that require an opcode or NID match require the Cn_MSR_PMON_BOX_FILTER.{opc, nid} field to be set. If, for example, one wanted to count DRD Local Misses, one should select MISS_OPC_MATCH and set Cn_MSR_PMON_BOX_FILTER.opc to DRD (0x182).; All transactions inserted into the TOR that are satisfied by locally HOMed memory.", 1306bedd1738SZhengjun Xing "UMask": "0x28", 1307579c0472SIan Rogers "Unit": "CBOX" 1308bedd1738SZhengjun Xing }, 1309bedd1738SZhengjun Xing { 1310bedd1738SZhengjun Xing "BriefDescription": "TOR Inserts; Local Memory - Opcode Matched", 131111c2302cSIan Rogers "Counter": "0,1,2,3", 1312bedd1738SZhengjun Xing "EventCode": "0x35", 1313bedd1738SZhengjun Xing "EventName": "UNC_C_TOR_INSERTS.LOCAL_OPCODE", 1314bedd1738SZhengjun Xing "PerPkg": "1", 1315667433c4SIan Rogers "PublicDescription": "Counts the number of entries successfully inserted into the TOR that match qualifications specified by the subevent. There are a number of subevent 'filters' but only a subset of the subevent combinations are valid. Subevents that require an opcode or NID match require the Cn_MSR_PMON_BOX_FILTER.{opc, nid} field to be set. If, for example, one wanted to count DRD Local Misses, one should select MISS_OPC_MATCH and set Cn_MSR_PMON_BOX_FILTER.opc to DRD (0x182).; All transactions, satisfied by an opcode, inserted into the TOR that are satisfied by locally HOMed memory.", 1316bedd1738SZhengjun Xing "UMask": "0x21", 1317579c0472SIan Rogers "Unit": "CBOX" 1318bedd1738SZhengjun Xing }, 1319bedd1738SZhengjun Xing { 1320667433c4SIan Rogers "BriefDescription": "TOR Inserts; Misses to Local Memory", 132111c2302cSIan Rogers "Counter": "0,1,2,3", 1322bedd1738SZhengjun Xing "EventCode": "0x35", 1323667433c4SIan Rogers "EventName": "UNC_C_TOR_INSERTS.MISS_LOCAL", 1324bedd1738SZhengjun Xing "PerPkg": "1", 1325667433c4SIan Rogers "PublicDescription": "Counts the number of entries successfully inserted into the TOR that match qualifications specified by the subevent. There are a number of subevent 'filters' but only a subset of the subevent combinations are valid. Subevents that require an opcode or NID match require the Cn_MSR_PMON_BOX_FILTER.{opc, nid} field to be set. If, for example, one wanted to count DRD Local Misses, one should select MISS_OPC_MATCH and set Cn_MSR_PMON_BOX_FILTER.opc to DRD (0x182).; Miss transactions inserted into the TOR that are satisfied by locally HOMed memory.", 1326667433c4SIan Rogers "UMask": "0x2a", 1327579c0472SIan Rogers "Unit": "CBOX" 1328bedd1738SZhengjun Xing }, 1329bedd1738SZhengjun Xing { 1330667433c4SIan Rogers "BriefDescription": "TOR Inserts; Misses to Local Memory - Opcode Matched", 133111c2302cSIan Rogers "Counter": "0,1,2,3", 1332667433c4SIan Rogers "EventCode": "0x35", 1333667433c4SIan Rogers "EventName": "UNC_C_TOR_INSERTS.MISS_LOCAL_OPCODE", 1334bedd1738SZhengjun Xing "PerPkg": "1", 1335667433c4SIan Rogers "PublicDescription": "Counts the number of entries successfully inserted into the TOR that match qualifications specified by the subevent. There are a number of subevent 'filters' but only a subset of the subevent combinations are valid. Subevents that require an opcode or NID match require the Cn_MSR_PMON_BOX_FILTER.{opc, nid} field to be set. If, for example, one wanted to count DRD Local Misses, one should select MISS_OPC_MATCH and set Cn_MSR_PMON_BOX_FILTER.opc to DRD (0x182).; Miss transactions, satisfied by an opcode, inserted into the TOR that are satisfied by locally HOMed memory.", 1336667433c4SIan Rogers "UMask": "0x23", 1337579c0472SIan Rogers "Unit": "CBOX" 1338667433c4SIan Rogers }, 1339667433c4SIan Rogers { 1340667433c4SIan Rogers "BriefDescription": "TOR Inserts; Miss Opcode Match", 134111c2302cSIan Rogers "Counter": "0,1,2,3", 1342667433c4SIan Rogers "EventCode": "0x35", 1343667433c4SIan Rogers "EventName": "UNC_C_TOR_INSERTS.MISS_OPCODE", 1344667433c4SIan Rogers "PerPkg": "1", 1345667433c4SIan Rogers "PublicDescription": "Counts the number of entries successfully inserted into the TOR that match qualifications specified by the subevent. There are a number of subevent 'filters' but only a subset of the subevent combinations are valid. Subevents that require an opcode or NID match require the Cn_MSR_PMON_BOX_FILTER.{opc, nid} field to be set. If, for example, one wanted to count DRD Local Misses, one should select MISS_OPC_MATCH and set Cn_MSR_PMON_BOX_FILTER.opc to DRD (0x182).; Miss transactions inserted into the TOR that match an opcode.", 1346667433c4SIan Rogers "UMask": "0x3", 1347579c0472SIan Rogers "Unit": "CBOX" 1348667433c4SIan Rogers }, 1349667433c4SIan Rogers { 1350667433c4SIan Rogers "BriefDescription": "TOR Inserts; Misses to Remote Memory", 135111c2302cSIan Rogers "Counter": "0,1,2,3", 1352667433c4SIan Rogers "EventCode": "0x35", 1353667433c4SIan Rogers "EventName": "UNC_C_TOR_INSERTS.MISS_REMOTE", 1354667433c4SIan Rogers "PerPkg": "1", 1355667433c4SIan Rogers "PublicDescription": "Counts the number of entries successfully inserted into the TOR that match qualifications specified by the subevent. There are a number of subevent 'filters' but only a subset of the subevent combinations are valid. Subevents that require an opcode or NID match require the Cn_MSR_PMON_BOX_FILTER.{opc, nid} field to be set. If, for example, one wanted to count DRD Local Misses, one should select MISS_OPC_MATCH and set Cn_MSR_PMON_BOX_FILTER.opc to DRD (0x182).; Miss transactions inserted into the TOR that are satisfied by remote caches or remote memory.", 1356667433c4SIan Rogers "UMask": "0x8a", 1357579c0472SIan Rogers "Unit": "CBOX" 1358667433c4SIan Rogers }, 1359667433c4SIan Rogers { 1360667433c4SIan Rogers "BriefDescription": "TOR Inserts; Misses to Remote Memory - Opcode Matched", 136111c2302cSIan Rogers "Counter": "0,1,2,3", 1362667433c4SIan Rogers "EventCode": "0x35", 1363667433c4SIan Rogers "EventName": "UNC_C_TOR_INSERTS.MISS_REMOTE_OPCODE", 1364667433c4SIan Rogers "PerPkg": "1", 1365667433c4SIan Rogers "PublicDescription": "Counts the number of entries successfully inserted into the TOR that match qualifications specified by the subevent. There are a number of subevent 'filters' but only a subset of the subevent combinations are valid. Subevents that require an opcode or NID match require the Cn_MSR_PMON_BOX_FILTER.{opc, nid} field to be set. If, for example, one wanted to count DRD Local Misses, one should select MISS_OPC_MATCH and set Cn_MSR_PMON_BOX_FILTER.opc to DRD (0x182).; Miss transactions, satisfied by an opcode, inserted into the TOR that are satisfied by remote caches or remote memory.", 1366667433c4SIan Rogers "UMask": "0x83", 1367579c0472SIan Rogers "Unit": "CBOX" 1368667433c4SIan Rogers }, 1369667433c4SIan Rogers { 1370667433c4SIan Rogers "BriefDescription": "TOR Inserts; NID Matched", 137111c2302cSIan Rogers "Counter": "0,1,2,3", 1372667433c4SIan Rogers "EventCode": "0x35", 1373667433c4SIan Rogers "EventName": "UNC_C_TOR_INSERTS.NID_ALL", 1374667433c4SIan Rogers "PerPkg": "1", 1375667433c4SIan Rogers "PublicDescription": "Counts the number of entries successfully inserted into the TOR that match qualifications specified by the subevent. There are a number of subevent 'filters' but only a subset of the subevent combinations are valid. Subevents that require an opcode or NID match require the Cn_MSR_PMON_BOX_FILTER.{opc, nid} field to be set. If, for example, one wanted to count DRD Local Misses, one should select MISS_OPC_MATCH and set Cn_MSR_PMON_BOX_FILTER.opc to DRD (0x182).; All NID matched (matches an RTID destination) transactions inserted into the TOR. The NID is programmed in Cn_MSR_PMON_BOX_FILTER.nid. In conjunction with STATE = I, it is possible to monitor misses to specific NIDs in the system.", 1376667433c4SIan Rogers "UMask": "0x48", 1377579c0472SIan Rogers "Unit": "CBOX" 1378667433c4SIan Rogers }, 1379667433c4SIan Rogers { 1380667433c4SIan Rogers "BriefDescription": "TOR Inserts; NID Matched Evictions", 138111c2302cSIan Rogers "Counter": "0,1,2,3", 1382667433c4SIan Rogers "EventCode": "0x35", 1383667433c4SIan Rogers "EventName": "UNC_C_TOR_INSERTS.NID_EVICTION", 1384667433c4SIan Rogers "PerPkg": "1", 1385667433c4SIan Rogers "PublicDescription": "Counts the number of entries successfully inserted into the TOR that match qualifications specified by the subevent. There are a number of subevent 'filters' but only a subset of the subevent combinations are valid. Subevents that require an opcode or NID match require the Cn_MSR_PMON_BOX_FILTER.{opc, nid} field to be set. If, for example, one wanted to count DRD Local Misses, one should select MISS_OPC_MATCH and set Cn_MSR_PMON_BOX_FILTER.opc to DRD (0x182).; NID matched eviction transactions inserted into the TOR.", 1386667433c4SIan Rogers "UMask": "0x44", 1387579c0472SIan Rogers "Unit": "CBOX" 1388667433c4SIan Rogers }, 1389667433c4SIan Rogers { 1390667433c4SIan Rogers "BriefDescription": "TOR Inserts; NID Matched Miss All", 139111c2302cSIan Rogers "Counter": "0,1,2,3", 1392667433c4SIan Rogers "EventCode": "0x35", 1393667433c4SIan Rogers "EventName": "UNC_C_TOR_INSERTS.NID_MISS_ALL", 1394667433c4SIan Rogers "PerPkg": "1", 1395667433c4SIan Rogers "PublicDescription": "Counts the number of entries successfully inserted into the TOR that match qualifications specified by the subevent. There are a number of subevent 'filters' but only a subset of the subevent combinations are valid. Subevents that require an opcode or NID match require the Cn_MSR_PMON_BOX_FILTER.{opc, nid} field to be set. If, for example, one wanted to count DRD Local Misses, one should select MISS_OPC_MATCH and set Cn_MSR_PMON_BOX_FILTER.opc to DRD (0x182).; All NID matched miss requests that were inserted into the TOR.", 1396667433c4SIan Rogers "UMask": "0x4a", 1397579c0472SIan Rogers "Unit": "CBOX" 1398667433c4SIan Rogers }, 1399667433c4SIan Rogers { 1400667433c4SIan Rogers "BriefDescription": "TOR Inserts; NID and Opcode Matched Miss", 140111c2302cSIan Rogers "Counter": "0,1,2,3", 1402667433c4SIan Rogers "EventCode": "0x35", 1403667433c4SIan Rogers "EventName": "UNC_C_TOR_INSERTS.NID_MISS_OPCODE", 1404667433c4SIan Rogers "PerPkg": "1", 1405667433c4SIan Rogers "PublicDescription": "Counts the number of entries successfully inserted into the TOR that match qualifications specified by the subevent. There are a number of subevent 'filters' but only a subset of the subevent combinations are valid. Subevents that require an opcode or NID match require the Cn_MSR_PMON_BOX_FILTER.{opc, nid} field to be set. If, for example, one wanted to count DRD Local Misses, one should select MISS_OPC_MATCH and set Cn_MSR_PMON_BOX_FILTER.opc to DRD (0x182).; Miss transactions inserted into the TOR that match a NID and an opcode.", 1406667433c4SIan Rogers "UMask": "0x43", 1407579c0472SIan Rogers "Unit": "CBOX" 1408667433c4SIan Rogers }, 1409667433c4SIan Rogers { 1410667433c4SIan Rogers "BriefDescription": "TOR Inserts; NID and Opcode Matched", 141111c2302cSIan Rogers "Counter": "0,1,2,3", 1412667433c4SIan Rogers "EventCode": "0x35", 1413667433c4SIan Rogers "EventName": "UNC_C_TOR_INSERTS.NID_OPCODE", 1414667433c4SIan Rogers "PerPkg": "1", 1415667433c4SIan Rogers "PublicDescription": "Counts the number of entries successfully inserted into the TOR that match qualifications specified by the subevent. There are a number of subevent 'filters' but only a subset of the subevent combinations are valid. Subevents that require an opcode or NID match require the Cn_MSR_PMON_BOX_FILTER.{opc, nid} field to be set. If, for example, one wanted to count DRD Local Misses, one should select MISS_OPC_MATCH and set Cn_MSR_PMON_BOX_FILTER.opc to DRD (0x182).; Transactions inserted into the TOR that match a NID and an opcode.", 1416667433c4SIan Rogers "UMask": "0x41", 1417579c0472SIan Rogers "Unit": "CBOX" 1418667433c4SIan Rogers }, 1419667433c4SIan Rogers { 1420667433c4SIan Rogers "BriefDescription": "TOR Inserts; NID Matched Writebacks", 142111c2302cSIan Rogers "Counter": "0,1,2,3", 1422667433c4SIan Rogers "EventCode": "0x35", 1423667433c4SIan Rogers "EventName": "UNC_C_TOR_INSERTS.NID_WB", 1424667433c4SIan Rogers "PerPkg": "1", 1425667433c4SIan Rogers "PublicDescription": "Counts the number of entries successfully inserted into the TOR that match qualifications specified by the subevent. There are a number of subevent 'filters' but only a subset of the subevent combinations are valid. Subevents that require an opcode or NID match require the Cn_MSR_PMON_BOX_FILTER.{opc, nid} field to be set. If, for example, one wanted to count DRD Local Misses, one should select MISS_OPC_MATCH and set Cn_MSR_PMON_BOX_FILTER.opc to DRD (0x182).; NID matched write transactions inserted into the TOR.", 1426667433c4SIan Rogers "UMask": "0x50", 1427579c0472SIan Rogers "Unit": "CBOX" 1428667433c4SIan Rogers }, 1429667433c4SIan Rogers { 1430667433c4SIan Rogers "BriefDescription": "TOR Inserts; Opcode Match", 143111c2302cSIan Rogers "Counter": "0,1,2,3", 1432667433c4SIan Rogers "EventCode": "0x35", 1433667433c4SIan Rogers "EventName": "UNC_C_TOR_INSERTS.OPCODE", 1434667433c4SIan Rogers "PerPkg": "1", 1435667433c4SIan Rogers "PublicDescription": "Counts the number of entries successfully inserted into the TOR that match qualifications specified by the subevent. There are a number of subevent 'filters' but only a subset of the subevent combinations are valid. Subevents that require an opcode or NID match require the Cn_MSR_PMON_BOX_FILTER.{opc, nid} field to be set. If, for example, one wanted to count DRD Local Misses, one should select MISS_OPC_MATCH and set Cn_MSR_PMON_BOX_FILTER.opc to DRD (0x182).; Transactions inserted into the TOR that match an opcode (matched by Cn_MSR_PMON_BOX_FILTER.opc)", 1436bedd1738SZhengjun Xing "UMask": "0x1", 1437579c0472SIan Rogers "Unit": "CBOX" 1438bedd1738SZhengjun Xing }, 1439bedd1738SZhengjun Xing { 1440667433c4SIan Rogers "BriefDescription": "TOR Inserts; Remote Memory", 144111c2302cSIan Rogers "Counter": "0,1,2,3", 1442667433c4SIan Rogers "EventCode": "0x35", 1443667433c4SIan Rogers "EventName": "UNC_C_TOR_INSERTS.REMOTE", 1444bedd1738SZhengjun Xing "PerPkg": "1", 1445667433c4SIan Rogers "PublicDescription": "Counts the number of entries successfully inserted into the TOR that match qualifications specified by the subevent. There are a number of subevent 'filters' but only a subset of the subevent combinations are valid. Subevents that require an opcode or NID match require the Cn_MSR_PMON_BOX_FILTER.{opc, nid} field to be set. If, for example, one wanted to count DRD Local Misses, one should select MISS_OPC_MATCH and set Cn_MSR_PMON_BOX_FILTER.opc to DRD (0x182).; All transactions inserted into the TOR that are satisfied by remote caches or remote memory.", 1446667433c4SIan Rogers "UMask": "0x88", 1447579c0472SIan Rogers "Unit": "CBOX" 1448667433c4SIan Rogers }, 1449667433c4SIan Rogers { 1450667433c4SIan Rogers "BriefDescription": "TOR Inserts; Remote Memory - Opcode Matched", 145111c2302cSIan Rogers "Counter": "0,1,2,3", 1452667433c4SIan Rogers "EventCode": "0x35", 1453667433c4SIan Rogers "EventName": "UNC_C_TOR_INSERTS.REMOTE_OPCODE", 1454667433c4SIan Rogers "PerPkg": "1", 1455667433c4SIan Rogers "PublicDescription": "Counts the number of entries successfully inserted into the TOR that match qualifications specified by the subevent. There are a number of subevent 'filters' but only a subset of the subevent combinations are valid. Subevents that require an opcode or NID match require the Cn_MSR_PMON_BOX_FILTER.{opc, nid} field to be set. If, for example, one wanted to count DRD Local Misses, one should select MISS_OPC_MATCH and set Cn_MSR_PMON_BOX_FILTER.opc to DRD (0x182).; All transactions, satisfied by an opcode, inserted into the TOR that are satisfied by remote caches or remote memory.", 1456667433c4SIan Rogers "UMask": "0x81", 1457579c0472SIan Rogers "Unit": "CBOX" 1458667433c4SIan Rogers }, 1459667433c4SIan Rogers { 1460667433c4SIan Rogers "BriefDescription": "TOR Inserts; Writebacks", 146111c2302cSIan Rogers "Counter": "0,1,2,3", 1462667433c4SIan Rogers "EventCode": "0x35", 1463667433c4SIan Rogers "EventName": "UNC_C_TOR_INSERTS.WB", 1464667433c4SIan Rogers "PerPkg": "1", 1465667433c4SIan Rogers "PublicDescription": "Counts the number of entries successfully inserted into the TOR that match qualifications specified by the subevent. There are a number of subevent 'filters' but only a subset of the subevent combinations are valid. Subevents that require an opcode or NID match require the Cn_MSR_PMON_BOX_FILTER.{opc, nid} field to be set. If, for example, one wanted to count DRD Local Misses, one should select MISS_OPC_MATCH and set Cn_MSR_PMON_BOX_FILTER.opc to DRD (0x182).; Write transactions inserted into the TOR. This does not include RFO, but actual operations that contain data being sent from the core.", 1466667433c4SIan Rogers "UMask": "0x10", 1467579c0472SIan Rogers "Unit": "CBOX" 1468bedd1738SZhengjun Xing }, 1469bedd1738SZhengjun Xing { 1470bedd1738SZhengjun Xing "BriefDescription": "TOR Occupancy; Any", 147111c2302cSIan Rogers "Counter": "0", 1472bedd1738SZhengjun Xing "EventCode": "0x36", 1473bedd1738SZhengjun Xing "EventName": "UNC_C_TOR_OCCUPANCY.ALL", 1474bedd1738SZhengjun Xing "PerPkg": "1", 1475667433c4SIan Rogers "PublicDescription": "For each cycle, this event accumulates the number of valid entries in the TOR that match qualifications specified by the subevent. There are a number of subevent 'filters' but only a subset of the subevent combinations are valid. Subevents that require an opcode or NID match require the Cn_MSR_PMON_BOX_FILTER.{opc, nid} field to be set. If, for example, one wanted to count DRD Local Misses, one should select MISS_OPC_MATCH and set Cn_MSR_PMON_BOX_FILTER.opc to DRD (0x182); All valid TOR entries. This includes requests that reside in the TOR for a short time, such as LLC Hits that do not need to snoop cores or requests that get rejected and have to be retried through one of the ingress queues. The TOR is more commonly a bottleneck in skews with smaller core counts, where the ratio of RTIDs to TOR entries is larger. Note that there are reserved TOR entries for various request types, so it is possible that a given request type be blocked with an occupancy that is less than 20. Also note that generally requests will not be able to arbitrate into the TOR pipeline if there are no available TOR slots.", 1476bedd1738SZhengjun Xing "UMask": "0x8", 1477579c0472SIan Rogers "Unit": "CBOX" 1478bedd1738SZhengjun Xing }, 1479bedd1738SZhengjun Xing { 1480667433c4SIan Rogers "BriefDescription": "TOR Occupancy; Evictions", 148111c2302cSIan Rogers "Counter": "0", 1482667433c4SIan Rogers "EventCode": "0x36", 1483667433c4SIan Rogers "EventName": "UNC_C_TOR_OCCUPANCY.EVICTION", 1484667433c4SIan Rogers "PerPkg": "1", 1485667433c4SIan Rogers "PublicDescription": "For each cycle, this event accumulates the number of valid entries in the TOR that match qualifications specified by the subevent. There are a number of subevent 'filters' but only a subset of the subevent combinations are valid. Subevents that require an opcode or NID match require the Cn_MSR_PMON_BOX_FILTER.{opc, nid} field to be set. If, for example, one wanted to count DRD Local Misses, one should select MISS_OPC_MATCH and set Cn_MSR_PMON_BOX_FILTER.opc to DRD (0x182); Number of outstanding eviction transactions in the TOR. Evictions can be quick, such as when the line is in the F, S, or E states and no core valid bits are set. They can also be longer if either CV bits are set (so the cores need to be snooped) and/or if there is a HitM (in which case it is necessary to write the request out to memory).", 1486667433c4SIan Rogers "UMask": "0x4", 1487579c0472SIan Rogers "Unit": "CBOX" 1488667433c4SIan Rogers }, 1489667433c4SIan Rogers { 14907003f00fSAndi Kleen "BriefDescription": "Occupancy counter for LLC data reads (demand and L2 prefetch). Derived from unc_c_tor_occupancy.miss_opcode", 149111c2302cSIan Rogers "Counter": "0", 14927003f00fSAndi Kleen "EventCode": "0x36", 14937003f00fSAndi Kleen "EventName": "UNC_C_TOR_OCCUPANCY.LLC_DATA_READ", 14947003f00fSAndi Kleen "Filter": "filter_opc=0x182", 14957003f00fSAndi Kleen "PerPkg": "1", 1496667433c4SIan Rogers "PublicDescription": "For each cycle, this event accumulates the number of valid entries in the TOR that match qualifications specified by the subevent. There are a number of subevent 'filters' but only a subset of the subevent combinations are valid. Subevents that require an opcode or NID match require the Cn_MSR_PMON_BOX_FILTER.{opc, nid} field to be set. If, for example, one wanted to count DRD Local Misses, one should select MISS_OPC_MATCH and set Cn_MSR_PMON_BOX_FILTER.opc to DRD (0x182); TOR entries for miss transactions that match an opcode. This generally means that the request was sent to memory or MMIO.", 14977003f00fSAndi Kleen "UMask": "0x3", 1498579c0472SIan Rogers "Unit": "CBOX" 14997003f00fSAndi Kleen }, 15007003f00fSAndi Kleen { 1501bedd1738SZhengjun Xing "BriefDescription": "TOR Occupancy", 150211c2302cSIan Rogers "Counter": "0", 1503bedd1738SZhengjun Xing "EventCode": "0x36", 1504bedd1738SZhengjun Xing "EventName": "UNC_C_TOR_OCCUPANCY.LOCAL", 1505bedd1738SZhengjun Xing "PerPkg": "1", 1506667433c4SIan Rogers "PublicDescription": "For each cycle, this event accumulates the number of valid entries in the TOR that match qualifications specified by the subevent. There are a number of subevent 'filters' but only a subset of the subevent combinations are valid. Subevents that require an opcode or NID match require the Cn_MSR_PMON_BOX_FILTER.{opc, nid} field to be set. If, for example, one wanted to count DRD Local Misses, one should select MISS_OPC_MATCH and set Cn_MSR_PMON_BOX_FILTER.opc to DRD (0x182)", 1507bedd1738SZhengjun Xing "UMask": "0x28", 1508579c0472SIan Rogers "Unit": "CBOX" 1509bedd1738SZhengjun Xing }, 1510bedd1738SZhengjun Xing { 1511bedd1738SZhengjun Xing "BriefDescription": "TOR Occupancy; Local Memory - Opcode Matched", 151211c2302cSIan Rogers "Counter": "0", 1513bedd1738SZhengjun Xing "EventCode": "0x36", 1514bedd1738SZhengjun Xing "EventName": "UNC_C_TOR_OCCUPANCY.LOCAL_OPCODE", 1515bedd1738SZhengjun Xing "PerPkg": "1", 1516667433c4SIan Rogers "PublicDescription": "For each cycle, this event accumulates the number of valid entries in the TOR that match qualifications specified by the subevent. There are a number of subevent 'filters' but only a subset of the subevent combinations are valid. Subevents that require an opcode or NID match require the Cn_MSR_PMON_BOX_FILTER.{opc, nid} field to be set. If, for example, one wanted to count DRD Local Misses, one should select MISS_OPC_MATCH and set Cn_MSR_PMON_BOX_FILTER.opc to DRD (0x182); Number of outstanding transactions, satisfied by an opcode, in the TOR that are satisfied by locally HOMed memory.", 1517bedd1738SZhengjun Xing "UMask": "0x21", 1518579c0472SIan Rogers "Unit": "CBOX" 1519bedd1738SZhengjun Xing }, 1520bedd1738SZhengjun Xing { 1521667433c4SIan Rogers "BriefDescription": "TOR Occupancy; Miss All", 152211c2302cSIan Rogers "Counter": "0", 1523667433c4SIan Rogers "EventCode": "0x36", 1524667433c4SIan Rogers "EventName": "UNC_C_TOR_OCCUPANCY.MISS_ALL", 1525667433c4SIan Rogers "PerPkg": "1", 1526667433c4SIan Rogers "PublicDescription": "For each cycle, this event accumulates the number of valid entries in the TOR that match qualifications specified by the subevent. There are a number of subevent 'filters' but only a subset of the subevent combinations are valid. Subevents that require an opcode or NID match require the Cn_MSR_PMON_BOX_FILTER.{opc, nid} field to be set. If, for example, one wanted to count DRD Local Misses, one should select MISS_OPC_MATCH and set Cn_MSR_PMON_BOX_FILTER.opc to DRD (0x182); Number of outstanding miss requests in the TOR. 'Miss' means the allocation requires an RTID. This generally means that the request was sent to memory or MMIO.", 1527667433c4SIan Rogers "UMask": "0xa", 1528579c0472SIan Rogers "Unit": "CBOX" 1529667433c4SIan Rogers }, 1530667433c4SIan Rogers { 1531667433c4SIan Rogers "BriefDescription": "TOR Occupancy", 153211c2302cSIan Rogers "Counter": "0", 1533667433c4SIan Rogers "EventCode": "0x36", 1534667433c4SIan Rogers "EventName": "UNC_C_TOR_OCCUPANCY.MISS_LOCAL", 1535667433c4SIan Rogers "PerPkg": "1", 1536667433c4SIan Rogers "PublicDescription": "For each cycle, this event accumulates the number of valid entries in the TOR that match qualifications specified by the subevent. There are a number of subevent 'filters' but only a subset of the subevent combinations are valid. Subevents that require an opcode or NID match require the Cn_MSR_PMON_BOX_FILTER.{opc, nid} field to be set. If, for example, one wanted to count DRD Local Misses, one should select MISS_OPC_MATCH and set Cn_MSR_PMON_BOX_FILTER.opc to DRD (0x182)", 1537667433c4SIan Rogers "UMask": "0x2a", 1538579c0472SIan Rogers "Unit": "CBOX" 1539667433c4SIan Rogers }, 1540667433c4SIan Rogers { 1541667433c4SIan Rogers "BriefDescription": "TOR Occupancy; Misses to Local Memory - Opcode Matched", 154211c2302cSIan Rogers "Counter": "0", 1543667433c4SIan Rogers "EventCode": "0x36", 1544667433c4SIan Rogers "EventName": "UNC_C_TOR_OCCUPANCY.MISS_LOCAL_OPCODE", 1545667433c4SIan Rogers "PerPkg": "1", 1546667433c4SIan Rogers "PublicDescription": "For each cycle, this event accumulates the number of valid entries in the TOR that match qualifications specified by the subevent. There are a number of subevent 'filters' but only a subset of the subevent combinations are valid. Subevents that require an opcode or NID match require the Cn_MSR_PMON_BOX_FILTER.{opc, nid} field to be set. If, for example, one wanted to count DRD Local Misses, one should select MISS_OPC_MATCH and set Cn_MSR_PMON_BOX_FILTER.opc to DRD (0x182); Number of outstanding Miss transactions, satisfied by an opcode, in the TOR that are satisfied by locally HOMed memory.", 1547667433c4SIan Rogers "UMask": "0x23", 1548579c0472SIan Rogers "Unit": "CBOX" 1549667433c4SIan Rogers }, 1550667433c4SIan Rogers { 1551667433c4SIan Rogers "BriefDescription": "TOR Occupancy; Miss Opcode Match", 155211c2302cSIan Rogers "Counter": "0", 1553667433c4SIan Rogers "EventCode": "0x36", 1554667433c4SIan Rogers "EventName": "UNC_C_TOR_OCCUPANCY.MISS_OPCODE", 1555667433c4SIan Rogers "PerPkg": "1", 1556667433c4SIan Rogers "PublicDescription": "For each cycle, this event accumulates the number of valid entries in the TOR that match qualifications specified by the subevent. There are a number of subevent 'filters' but only a subset of the subevent combinations are valid. Subevents that require an opcode or NID match require the Cn_MSR_PMON_BOX_FILTER.{opc, nid} field to be set. If, for example, one wanted to count DRD Local Misses, one should select MISS_OPC_MATCH and set Cn_MSR_PMON_BOX_FILTER.opc to DRD (0x182); TOR entries for miss transactions that match an opcode. This generally means that the request was sent to memory or MMIO.", 1557667433c4SIan Rogers "UMask": "0x3", 1558579c0472SIan Rogers "Unit": "CBOX" 1559667433c4SIan Rogers }, 1560667433c4SIan Rogers { 1561667433c4SIan Rogers "BriefDescription": "TOR Occupancy", 156211c2302cSIan Rogers "Counter": "0", 1563667433c4SIan Rogers "EventCode": "0x36", 1564667433c4SIan Rogers "EventName": "UNC_C_TOR_OCCUPANCY.MISS_REMOTE", 1565667433c4SIan Rogers "PerPkg": "1", 1566667433c4SIan Rogers "PublicDescription": "For each cycle, this event accumulates the number of valid entries in the TOR that match qualifications specified by the subevent. There are a number of subevent 'filters' but only a subset of the subevent combinations are valid. Subevents that require an opcode or NID match require the Cn_MSR_PMON_BOX_FILTER.{opc, nid} field to be set. If, for example, one wanted to count DRD Local Misses, one should select MISS_OPC_MATCH and set Cn_MSR_PMON_BOX_FILTER.opc to DRD (0x182)", 1567667433c4SIan Rogers "UMask": "0x8a", 1568579c0472SIan Rogers "Unit": "CBOX" 1569667433c4SIan Rogers }, 1570667433c4SIan Rogers { 1571667433c4SIan Rogers "BriefDescription": "TOR Occupancy; Misses to Remote Memory - Opcode Matched", 157211c2302cSIan Rogers "Counter": "0", 1573667433c4SIan Rogers "EventCode": "0x36", 1574667433c4SIan Rogers "EventName": "UNC_C_TOR_OCCUPANCY.MISS_REMOTE_OPCODE", 1575667433c4SIan Rogers "PerPkg": "1", 1576667433c4SIan Rogers "PublicDescription": "For each cycle, this event accumulates the number of valid entries in the TOR that match qualifications specified by the subevent. There are a number of subevent 'filters' but only a subset of the subevent combinations are valid. Subevents that require an opcode or NID match require the Cn_MSR_PMON_BOX_FILTER.{opc, nid} field to be set. If, for example, one wanted to count DRD Local Misses, one should select MISS_OPC_MATCH and set Cn_MSR_PMON_BOX_FILTER.opc to DRD (0x182); Number of outstanding Miss transactions, satisfied by an opcode, in the TOR that are satisfied by remote caches or remote memory.", 1577667433c4SIan Rogers "UMask": "0x83", 1578579c0472SIan Rogers "Unit": "CBOX" 1579667433c4SIan Rogers }, 1580667433c4SIan Rogers { 1581667433c4SIan Rogers "BriefDescription": "TOR Occupancy; NID Matched", 158211c2302cSIan Rogers "Counter": "0", 1583667433c4SIan Rogers "EventCode": "0x36", 1584667433c4SIan Rogers "EventName": "UNC_C_TOR_OCCUPANCY.NID_ALL", 1585667433c4SIan Rogers "PerPkg": "1", 1586667433c4SIan Rogers "PublicDescription": "For each cycle, this event accumulates the number of valid entries in the TOR that match qualifications specified by the subevent. There are a number of subevent 'filters' but only a subset of the subevent combinations are valid. Subevents that require an opcode or NID match require the Cn_MSR_PMON_BOX_FILTER.{opc, nid} field to be set. If, for example, one wanted to count DRD Local Misses, one should select MISS_OPC_MATCH and set Cn_MSR_PMON_BOX_FILTER.opc to DRD (0x182); Number of NID matched outstanding requests in the TOR. The NID is programmed in Cn_MSR_PMON_BOX_FILTER.nid.In conjunction with STATE = I, it is possible to monitor misses to specific NIDs in the system.", 1587667433c4SIan Rogers "UMask": "0x48", 1588579c0472SIan Rogers "Unit": "CBOX" 1589667433c4SIan Rogers }, 1590667433c4SIan Rogers { 1591667433c4SIan Rogers "BriefDescription": "TOR Occupancy; NID Matched Evictions", 159211c2302cSIan Rogers "Counter": "0", 1593667433c4SIan Rogers "EventCode": "0x36", 1594667433c4SIan Rogers "EventName": "UNC_C_TOR_OCCUPANCY.NID_EVICTION", 1595667433c4SIan Rogers "PerPkg": "1", 1596667433c4SIan Rogers "PublicDescription": "For each cycle, this event accumulates the number of valid entries in the TOR that match qualifications specified by the subevent. There are a number of subevent 'filters' but only a subset of the subevent combinations are valid. Subevents that require an opcode or NID match require the Cn_MSR_PMON_BOX_FILTER.{opc, nid} field to be set. If, for example, one wanted to count DRD Local Misses, one should select MISS_OPC_MATCH and set Cn_MSR_PMON_BOX_FILTER.opc to DRD (0x182); Number of outstanding NID matched eviction transactions in the TOR .", 1597667433c4SIan Rogers "UMask": "0x44", 1598579c0472SIan Rogers "Unit": "CBOX" 1599667433c4SIan Rogers }, 1600667433c4SIan Rogers { 1601667433c4SIan Rogers "BriefDescription": "TOR Occupancy; NID Matched", 160211c2302cSIan Rogers "Counter": "0", 1603667433c4SIan Rogers "EventCode": "0x36", 1604667433c4SIan Rogers "EventName": "UNC_C_TOR_OCCUPANCY.NID_MISS_ALL", 1605667433c4SIan Rogers "PerPkg": "1", 1606667433c4SIan Rogers "PublicDescription": "For each cycle, this event accumulates the number of valid entries in the TOR that match qualifications specified by the subevent. There are a number of subevent 'filters' but only a subset of the subevent combinations are valid. Subevents that require an opcode or NID match require the Cn_MSR_PMON_BOX_FILTER.{opc, nid} field to be set. If, for example, one wanted to count DRD Local Misses, one should select MISS_OPC_MATCH and set Cn_MSR_PMON_BOX_FILTER.opc to DRD (0x182); Number of outstanding Miss requests in the TOR that match a NID.", 1607667433c4SIan Rogers "UMask": "0x4a", 1608579c0472SIan Rogers "Unit": "CBOX" 1609667433c4SIan Rogers }, 1610667433c4SIan Rogers { 1611667433c4SIan Rogers "BriefDescription": "TOR Occupancy; NID and Opcode Matched Miss", 161211c2302cSIan Rogers "Counter": "0", 1613667433c4SIan Rogers "EventCode": "0x36", 1614667433c4SIan Rogers "EventName": "UNC_C_TOR_OCCUPANCY.NID_MISS_OPCODE", 1615667433c4SIan Rogers "PerPkg": "1", 1616667433c4SIan Rogers "PublicDescription": "For each cycle, this event accumulates the number of valid entries in the TOR that match qualifications specified by the subevent. There are a number of subevent 'filters' but only a subset of the subevent combinations are valid. Subevents that require an opcode or NID match require the Cn_MSR_PMON_BOX_FILTER.{opc, nid} field to be set. If, for example, one wanted to count DRD Local Misses, one should select MISS_OPC_MATCH and set Cn_MSR_PMON_BOX_FILTER.opc to DRD (0x182); Number of outstanding Miss requests in the TOR that match a NID and an opcode.", 1617667433c4SIan Rogers "UMask": "0x43", 1618579c0472SIan Rogers "Unit": "CBOX" 1619667433c4SIan Rogers }, 1620667433c4SIan Rogers { 1621667433c4SIan Rogers "BriefDescription": "TOR Occupancy; NID and Opcode Matched", 162211c2302cSIan Rogers "Counter": "0", 1623667433c4SIan Rogers "EventCode": "0x36", 1624667433c4SIan Rogers "EventName": "UNC_C_TOR_OCCUPANCY.NID_OPCODE", 1625667433c4SIan Rogers "PerPkg": "1", 1626667433c4SIan Rogers "PublicDescription": "For each cycle, this event accumulates the number of valid entries in the TOR that match qualifications specified by the subevent. There are a number of subevent 'filters' but only a subset of the subevent combinations are valid. Subevents that require an opcode or NID match require the Cn_MSR_PMON_BOX_FILTER.{opc, nid} field to be set. If, for example, one wanted to count DRD Local Misses, one should select MISS_OPC_MATCH and set Cn_MSR_PMON_BOX_FILTER.opc to DRD (0x182); TOR entries that match a NID and an opcode.", 1627667433c4SIan Rogers "UMask": "0x41", 1628579c0472SIan Rogers "Unit": "CBOX" 1629667433c4SIan Rogers }, 1630667433c4SIan Rogers { 1631667433c4SIan Rogers "BriefDescription": "TOR Occupancy; NID Matched Writebacks", 163211c2302cSIan Rogers "Counter": "0", 1633667433c4SIan Rogers "EventCode": "0x36", 1634667433c4SIan Rogers "EventName": "UNC_C_TOR_OCCUPANCY.NID_WB", 1635667433c4SIan Rogers "PerPkg": "1", 1636667433c4SIan Rogers "PublicDescription": "For each cycle, this event accumulates the number of valid entries in the TOR that match qualifications specified by the subevent. There are a number of subevent 'filters' but only a subset of the subevent combinations are valid. Subevents that require an opcode or NID match require the Cn_MSR_PMON_BOX_FILTER.{opc, nid} field to be set. If, for example, one wanted to count DRD Local Misses, one should select MISS_OPC_MATCH and set Cn_MSR_PMON_BOX_FILTER.opc to DRD (0x182); NID matched write transactions int the TOR.", 1637667433c4SIan Rogers "UMask": "0x50", 1638579c0472SIan Rogers "Unit": "CBOX" 1639667433c4SIan Rogers }, 1640667433c4SIan Rogers { 1641667433c4SIan Rogers "BriefDescription": "TOR Occupancy; Opcode Match", 164211c2302cSIan Rogers "Counter": "0", 1643667433c4SIan Rogers "EventCode": "0x36", 1644667433c4SIan Rogers "EventName": "UNC_C_TOR_OCCUPANCY.OPCODE", 1645667433c4SIan Rogers "PerPkg": "1", 1646667433c4SIan Rogers "PublicDescription": "For each cycle, this event accumulates the number of valid entries in the TOR that match qualifications specified by the subevent. There are a number of subevent 'filters' but only a subset of the subevent combinations are valid. Subevents that require an opcode or NID match require the Cn_MSR_PMON_BOX_FILTER.{opc, nid} field to be set. If, for example, one wanted to count DRD Local Misses, one should select MISS_OPC_MATCH and set Cn_MSR_PMON_BOX_FILTER.opc to DRD (0x182); TOR entries that match an opcode (matched by Cn_MSR_PMON_BOX_FILTER.opc).", 1647667433c4SIan Rogers "UMask": "0x1", 1648579c0472SIan Rogers "Unit": "CBOX" 1649667433c4SIan Rogers }, 1650667433c4SIan Rogers { 1651667433c4SIan Rogers "BriefDescription": "TOR Occupancy", 165211c2302cSIan Rogers "Counter": "0", 1653667433c4SIan Rogers "EventCode": "0x36", 1654667433c4SIan Rogers "EventName": "UNC_C_TOR_OCCUPANCY.REMOTE", 1655667433c4SIan Rogers "PerPkg": "1", 1656667433c4SIan Rogers "PublicDescription": "For each cycle, this event accumulates the number of valid entries in the TOR that match qualifications specified by the subevent. There are a number of subevent 'filters' but only a subset of the subevent combinations are valid. Subevents that require an opcode or NID match require the Cn_MSR_PMON_BOX_FILTER.{opc, nid} field to be set. If, for example, one wanted to count DRD Local Misses, one should select MISS_OPC_MATCH and set Cn_MSR_PMON_BOX_FILTER.opc to DRD (0x182)", 1657667433c4SIan Rogers "UMask": "0x88", 1658579c0472SIan Rogers "Unit": "CBOX" 1659667433c4SIan Rogers }, 1660667433c4SIan Rogers { 1661bedd1738SZhengjun Xing "BriefDescription": "TOR Occupancy; Remote Memory - Opcode Matched", 166211c2302cSIan Rogers "Counter": "0", 1663bedd1738SZhengjun Xing "EventCode": "0x36", 1664bedd1738SZhengjun Xing "EventName": "UNC_C_TOR_OCCUPANCY.REMOTE_OPCODE", 1665bedd1738SZhengjun Xing "PerPkg": "1", 1666667433c4SIan Rogers "PublicDescription": "For each cycle, this event accumulates the number of valid entries in the TOR that match qualifications specified by the subevent. There are a number of subevent 'filters' but only a subset of the subevent combinations are valid. Subevents that require an opcode or NID match require the Cn_MSR_PMON_BOX_FILTER.{opc, nid} field to be set. If, for example, one wanted to count DRD Local Misses, one should select MISS_OPC_MATCH and set Cn_MSR_PMON_BOX_FILTER.opc to DRD (0x182); Number of outstanding transactions, satisfied by an opcode, in the TOR that are satisfied by remote caches or remote memory.", 1667bedd1738SZhengjun Xing "UMask": "0x81", 1668579c0472SIan Rogers "Unit": "CBOX" 1669bedd1738SZhengjun Xing }, 1670bedd1738SZhengjun Xing { 1671bedd1738SZhengjun Xing "BriefDescription": "TOR Occupancy; Writebacks", 167211c2302cSIan Rogers "Counter": "0", 1673bedd1738SZhengjun Xing "EventCode": "0x36", 1674bedd1738SZhengjun Xing "EventName": "UNC_C_TOR_OCCUPANCY.WB", 1675bedd1738SZhengjun Xing "PerPkg": "1", 1676667433c4SIan Rogers "PublicDescription": "For each cycle, this event accumulates the number of valid entries in the TOR that match qualifications specified by the subevent. There are a number of subevent 'filters' but only a subset of the subevent combinations are valid. Subevents that require an opcode or NID match require the Cn_MSR_PMON_BOX_FILTER.{opc, nid} field to be set. If, for example, one wanted to count DRD Local Misses, one should select MISS_OPC_MATCH and set Cn_MSR_PMON_BOX_FILTER.opc to DRD (0x182); Write transactions in the TOR. This does not include RFO, but actual operations that contain data being sent from the core.", 1677bedd1738SZhengjun Xing "UMask": "0x10", 1678579c0472SIan Rogers "Unit": "CBOX" 1679bedd1738SZhengjun Xing }, 1680bedd1738SZhengjun Xing { 1681bedd1738SZhengjun Xing "BriefDescription": "Onto AD Ring", 168211c2302cSIan Rogers "Counter": "0,1,2,3", 1683bedd1738SZhengjun Xing "EventCode": "0x4", 1684bedd1738SZhengjun Xing "EventName": "UNC_C_TxR_ADS_USED.AD", 1685bedd1738SZhengjun Xing "PerPkg": "1", 1686bedd1738SZhengjun Xing "UMask": "0x1", 1687579c0472SIan Rogers "Unit": "CBOX" 1688bedd1738SZhengjun Xing }, 1689bedd1738SZhengjun Xing { 1690bedd1738SZhengjun Xing "BriefDescription": "Onto AK Ring", 169111c2302cSIan Rogers "Counter": "0,1,2,3", 1692bedd1738SZhengjun Xing "EventCode": "0x4", 1693bedd1738SZhengjun Xing "EventName": "UNC_C_TxR_ADS_USED.AK", 1694bedd1738SZhengjun Xing "PerPkg": "1", 1695bedd1738SZhengjun Xing "UMask": "0x2", 1696579c0472SIan Rogers "Unit": "CBOX" 1697bedd1738SZhengjun Xing }, 1698bedd1738SZhengjun Xing { 1699bedd1738SZhengjun Xing "BriefDescription": "Onto BL Ring", 170011c2302cSIan Rogers "Counter": "0,1,2,3", 1701bedd1738SZhengjun Xing "EventCode": "0x4", 1702bedd1738SZhengjun Xing "EventName": "UNC_C_TxR_ADS_USED.BL", 1703bedd1738SZhengjun Xing "PerPkg": "1", 1704bedd1738SZhengjun Xing "UMask": "0x4", 1705579c0472SIan Rogers "Unit": "CBOX" 1706bedd1738SZhengjun Xing }, 1707bedd1738SZhengjun Xing { 1708bedd1738SZhengjun Xing "BriefDescription": "Egress Allocations; AD - Cachebo", 170911c2302cSIan Rogers "Counter": "0,1,2,3", 1710bedd1738SZhengjun Xing "EventCode": "0x2", 1711bedd1738SZhengjun Xing "EventName": "UNC_C_TxR_INSERTS.AD_CACHE", 1712bedd1738SZhengjun Xing "PerPkg": "1", 1713667433c4SIan Rogers "PublicDescription": "Number of allocations into the Cbo Egress. The Egress is used to queue up requests destined for the ring.; Ring transactions from the Cachebo destined for the AD ring. Some example include outbound requests, snoop requests, and snoop responses.", 1714bedd1738SZhengjun Xing "UMask": "0x1", 1715579c0472SIan Rogers "Unit": "CBOX" 1716bedd1738SZhengjun Xing }, 1717bedd1738SZhengjun Xing { 1718bedd1738SZhengjun Xing "BriefDescription": "Egress Allocations; AD - Corebo", 171911c2302cSIan Rogers "Counter": "0,1,2,3", 1720bedd1738SZhengjun Xing "EventCode": "0x2", 1721bedd1738SZhengjun Xing "EventName": "UNC_C_TxR_INSERTS.AD_CORE", 1722bedd1738SZhengjun Xing "PerPkg": "1", 1723667433c4SIan Rogers "PublicDescription": "Number of allocations into the Cbo Egress. The Egress is used to queue up requests destined for the ring.; Ring transactions from the Corebo destined for the AD ring. This is commonly used for outbound requests.", 1724bedd1738SZhengjun Xing "UMask": "0x10", 1725579c0472SIan Rogers "Unit": "CBOX" 1726bedd1738SZhengjun Xing }, 1727bedd1738SZhengjun Xing { 1728667433c4SIan Rogers "BriefDescription": "Egress Allocations; AK - Cachebo", 172911c2302cSIan Rogers "Counter": "0,1,2,3", 1730bedd1738SZhengjun Xing "EventCode": "0x2", 1731667433c4SIan Rogers "EventName": "UNC_C_TxR_INSERTS.AK_CACHE", 1732bedd1738SZhengjun Xing "PerPkg": "1", 1733667433c4SIan Rogers "PublicDescription": "Number of allocations into the Cbo Egress. The Egress is used to queue up requests destined for the ring.; Ring transactions from the Cachebo destined for the AK ring. This is commonly used for credit returns and GO responses.", 1734bedd1738SZhengjun Xing "UMask": "0x2", 1735579c0472SIan Rogers "Unit": "CBOX" 1736bedd1738SZhengjun Xing }, 1737bedd1738SZhengjun Xing { 1738667433c4SIan Rogers "BriefDescription": "Egress Allocations; AK - Corebo", 173911c2302cSIan Rogers "Counter": "0,1,2,3", 1740667433c4SIan Rogers "EventCode": "0x2", 1741667433c4SIan Rogers "EventName": "UNC_C_TxR_INSERTS.AK_CORE", 1742bedd1738SZhengjun Xing "PerPkg": "1", 1743667433c4SIan Rogers "PublicDescription": "Number of allocations into the Cbo Egress. The Egress is used to queue up requests destined for the ring.; Ring transactions from the Corebo destined for the AK ring. This is commonly used for snoop responses coming from the core and destined for a Cachebo.", 1744667433c4SIan Rogers "UMask": "0x20", 1745579c0472SIan Rogers "Unit": "CBOX" 1746667433c4SIan Rogers }, 1747667433c4SIan Rogers { 1748667433c4SIan Rogers "BriefDescription": "Egress Allocations; BL - Cacheno", 174911c2302cSIan Rogers "Counter": "0,1,2,3", 1750667433c4SIan Rogers "EventCode": "0x2", 1751667433c4SIan Rogers "EventName": "UNC_C_TxR_INSERTS.BL_CACHE", 1752667433c4SIan Rogers "PerPkg": "1", 1753667433c4SIan Rogers "PublicDescription": "Number of allocations into the Cbo Egress. The Egress is used to queue up requests destined for the ring.; Ring transactions from the Cachebo destined for the BL ring. This is commonly used to send data from the cache to various destinations.", 1754bedd1738SZhengjun Xing "UMask": "0x4", 1755579c0472SIan Rogers "Unit": "CBOX" 1756bedd1738SZhengjun Xing }, 1757bedd1738SZhengjun Xing { 1758667433c4SIan Rogers "BriefDescription": "Egress Allocations; BL - Corebo", 175911c2302cSIan Rogers "Counter": "0,1,2,3", 1760667433c4SIan Rogers "EventCode": "0x2", 1761667433c4SIan Rogers "EventName": "UNC_C_TxR_INSERTS.BL_CORE", 1762bedd1738SZhengjun Xing "PerPkg": "1", 1763667433c4SIan Rogers "PublicDescription": "Number of allocations into the Cbo Egress. The Egress is used to queue up requests destined for the ring.; Ring transactions from the Corebo destined for the BL ring. This is commonly used for transferring writeback data to the cache.", 1764667433c4SIan Rogers "UMask": "0x40", 1765579c0472SIan Rogers "Unit": "CBOX" 1766667433c4SIan Rogers }, 1767667433c4SIan Rogers { 1768667433c4SIan Rogers "BriefDescription": "Egress Allocations; IV - Cachebo", 176911c2302cSIan Rogers "Counter": "0,1,2,3", 1770667433c4SIan Rogers "EventCode": "0x2", 1771667433c4SIan Rogers "EventName": "UNC_C_TxR_INSERTS.IV_CACHE", 1772667433c4SIan Rogers "PerPkg": "1", 1773667433c4SIan Rogers "PublicDescription": "Number of allocations into the Cbo Egress. The Egress is used to queue up requests destined for the ring.; Ring transactions from the Cachebo destined for the IV ring. This is commonly used for snoops to the cores.", 1774bedd1738SZhengjun Xing "UMask": "0x8", 1775579c0472SIan Rogers "Unit": "CBOX" 1776bedd1738SZhengjun Xing }, 1777bedd1738SZhengjun Xing { 1778bedd1738SZhengjun Xing "BriefDescription": "Injection Starvation; Onto AD Ring (to core)", 177911c2302cSIan Rogers "Counter": "0,1,2,3", 1780bedd1738SZhengjun Xing "EventCode": "0x3", 1781bedd1738SZhengjun Xing "EventName": "UNC_C_TxR_STARVED.AD_CORE", 1782bedd1738SZhengjun Xing "PerPkg": "1", 1783667433c4SIan Rogers "PublicDescription": "Counts injection starvation. This starvation is triggered when the Egress cannot send a transaction onto the ring for a long period of time.; cycles that the core AD egress spent in starvation", 1784bedd1738SZhengjun Xing "UMask": "0x10", 1785579c0472SIan Rogers "Unit": "CBOX" 1786bedd1738SZhengjun Xing }, 1787bedd1738SZhengjun Xing { 1788667433c4SIan Rogers "BriefDescription": "Injection Starvation; Onto AK Ring", 178911c2302cSIan Rogers "Counter": "0,1,2,3", 1790667433c4SIan Rogers "EventCode": "0x3", 1791667433c4SIan Rogers "EventName": "UNC_C_TxR_STARVED.AK_BOTH", 1792bedd1738SZhengjun Xing "PerPkg": "1", 1793667433c4SIan Rogers "PublicDescription": "Counts injection starvation. This starvation is triggered when the Egress cannot send a transaction onto the ring for a long period of time.; cycles that both AK egresses spent in starvation", 1794bedd1738SZhengjun Xing "UMask": "0x2", 1795579c0472SIan Rogers "Unit": "CBOX" 1796bedd1738SZhengjun Xing }, 1797bedd1738SZhengjun Xing { 1798667433c4SIan Rogers "BriefDescription": "Injection Starvation; Onto BL Ring", 179911c2302cSIan Rogers "Counter": "0,1,2,3", 1800667433c4SIan Rogers "EventCode": "0x3", 1801667433c4SIan Rogers "EventName": "UNC_C_TxR_STARVED.BL_BOTH", 1802bedd1738SZhengjun Xing "PerPkg": "1", 1803667433c4SIan Rogers "PublicDescription": "Counts injection starvation. This starvation is triggered when the Egress cannot send a transaction onto the ring for a long period of time.; cycles that both BL egresses spent in starvation", 1804bedd1738SZhengjun Xing "UMask": "0x4", 1805579c0472SIan Rogers "Unit": "CBOX" 1806bedd1738SZhengjun Xing }, 1807bedd1738SZhengjun Xing { 1808667433c4SIan Rogers "BriefDescription": "Injection Starvation; Onto IV Ring", 180911c2302cSIan Rogers "Counter": "0,1,2,3", 1810667433c4SIan Rogers "EventCode": "0x3", 1811667433c4SIan Rogers "EventName": "UNC_C_TxR_STARVED.IV", 1812bedd1738SZhengjun Xing "PerPkg": "1", 1813667433c4SIan Rogers "PublicDescription": "Counts injection starvation. This starvation is triggered when the Egress cannot send a transaction onto the ring for a long period of time.; cycles that the cachebo IV egress spent in starvation", 1814bedd1738SZhengjun Xing "UMask": "0x8", 1815579c0472SIan Rogers "Unit": "CBOX" 1816bedd1738SZhengjun Xing }, 1817bedd1738SZhengjun Xing { 1818bedd1738SZhengjun Xing "BriefDescription": "BT Cycles Not Empty", 181911c2302cSIan Rogers "Counter": "0,1,2,3", 1820bedd1738SZhengjun Xing "EventCode": "0x42", 1821bedd1738SZhengjun Xing "EventName": "UNC_H_BT_CYCLES_NE", 1822bedd1738SZhengjun Xing "PerPkg": "1", 1823667433c4SIan Rogers "PublicDescription": "Cycles the Backup Tracker (BT) is not empty. The BT is the actual HOM tracker in IVT.", 1824667433c4SIan Rogers "Unit": "HA" 1825667433c4SIan Rogers }, 1826667433c4SIan Rogers { 1827667433c4SIan Rogers "BriefDescription": "BT to HT Not Issued; Incoming Data Hazard", 182811c2302cSIan Rogers "Counter": "0,1,2,3", 1829667433c4SIan Rogers "EventCode": "0x51", 1830667433c4SIan Rogers "EventName": "UNC_H_BT_TO_HT_NOT_ISSUED.INCOMING_BL_HAZARD", 1831667433c4SIan Rogers "PerPkg": "1", 1832667433c4SIan Rogers "PublicDescription": "Counts the number of cycles when the HA does not issue transaction from BT to HT.; Cycles unable to issue from BT due to incoming BL data hazard", 1833667433c4SIan Rogers "UMask": "0x4", 1834bedd1738SZhengjun Xing "Unit": "HA" 1835bedd1738SZhengjun Xing }, 1836bedd1738SZhengjun Xing { 1837bedd1738SZhengjun Xing "BriefDescription": "BT to HT Not Issued; Incoming Snoop Hazard", 183811c2302cSIan Rogers "Counter": "0,1,2,3", 1839bedd1738SZhengjun Xing "EventCode": "0x51", 1840bedd1738SZhengjun Xing "EventName": "UNC_H_BT_TO_HT_NOT_ISSUED.INCOMING_SNP_HAZARD", 1841bedd1738SZhengjun Xing "PerPkg": "1", 1842667433c4SIan Rogers "PublicDescription": "Counts the number of cycles when the HA does not issue transaction from BT to HT.; Cycles unable to issue from BT due to incoming snoop hazard", 1843bedd1738SZhengjun Xing "UMask": "0x2", 1844bedd1738SZhengjun Xing "Unit": "HA" 1845bedd1738SZhengjun Xing }, 1846bedd1738SZhengjun Xing { 1847bedd1738SZhengjun Xing "BriefDescription": "BT to HT Not Issued; Incoming Data Hazard", 184811c2302cSIan Rogers "Counter": "0,1,2,3", 1849bedd1738SZhengjun Xing "EventCode": "0x51", 1850bedd1738SZhengjun Xing "EventName": "UNC_H_BT_TO_HT_NOT_ISSUED.RSPACKCFLT_HAZARD", 1851bedd1738SZhengjun Xing "PerPkg": "1", 1852667433c4SIan Rogers "PublicDescription": "Counts the number of cycles when the HA does not issue transaction from BT to HT.; Cycles unable to issue from BT due to incoming BL data hazard", 1853bedd1738SZhengjun Xing "UMask": "0x8", 1854bedd1738SZhengjun Xing "Unit": "HA" 1855bedd1738SZhengjun Xing }, 1856bedd1738SZhengjun Xing { 1857bedd1738SZhengjun Xing "BriefDescription": "BT to HT Not Issued; Incoming Data Hazard", 185811c2302cSIan Rogers "Counter": "0,1,2,3", 1859bedd1738SZhengjun Xing "EventCode": "0x51", 1860bedd1738SZhengjun Xing "EventName": "UNC_H_BT_TO_HT_NOT_ISSUED.WBMDATA_HAZARD", 1861bedd1738SZhengjun Xing "PerPkg": "1", 1862667433c4SIan Rogers "PublicDescription": "Counts the number of cycles when the HA does not issue transaction from BT to HT.; Cycles unable to issue from BT due to incoming BL data hazard", 1863bedd1738SZhengjun Xing "UMask": "0x10", 1864bedd1738SZhengjun Xing "Unit": "HA" 1865bedd1738SZhengjun Xing }, 1866bedd1738SZhengjun Xing { 1867bedd1738SZhengjun Xing "BriefDescription": "HA to iMC Bypass; Not Taken", 186811c2302cSIan Rogers "Counter": "0,1,2,3", 1869bedd1738SZhengjun Xing "EventCode": "0x14", 1870bedd1738SZhengjun Xing "EventName": "UNC_H_BYPASS_IMC.NOT_TAKEN", 1871bedd1738SZhengjun Xing "PerPkg": "1", 1872*be67d89fSIan Rogers "PublicDescription": "Counts the number of times when the HA was able to bypass was attempted. This is a latency optimization for situations when there is light loadings on the memory subsystem. This can be filtered by when the bypass was taken and when it was not.; Filter for transactions that could not take the bypass.", 1873bedd1738SZhengjun Xing "UMask": "0x2", 1874bedd1738SZhengjun Xing "Unit": "HA" 1875bedd1738SZhengjun Xing }, 1876bedd1738SZhengjun Xing { 1877667433c4SIan Rogers "BriefDescription": "HA to iMC Bypass; Taken", 187811c2302cSIan Rogers "Counter": "0,1,2,3", 1879667433c4SIan Rogers "EventCode": "0x14", 1880667433c4SIan Rogers "EventName": "UNC_H_BYPASS_IMC.TAKEN", 1881bedd1738SZhengjun Xing "PerPkg": "1", 1882*be67d89fSIan Rogers "PublicDescription": "Counts the number of times when the HA was able to bypass was attempted. This is a latency optimization for situations when there is light loadings on the memory subsystem. This can be filtered by when the bypass was taken and when it was not.; Filter for transactions that succeeded in taking the bypass.", 1883bedd1738SZhengjun Xing "UMask": "0x1", 1884bedd1738SZhengjun Xing "Unit": "HA" 1885bedd1738SZhengjun Xing }, 1886bedd1738SZhengjun Xing { 1887667433c4SIan Rogers "BriefDescription": "uclks", 188811c2302cSIan Rogers "Counter": "0,1,2,3", 1889667433c4SIan Rogers "EventName": "UNC_H_CLOCKTICKS", 1890667433c4SIan Rogers "PerPkg": "1", 1891667433c4SIan Rogers "PublicDescription": "Counts the number of uclks in the HA. This will be slightly different than the count in the Ubox because of enable/freeze delays. The HA is on the other side of the die from the fixed Ubox uclk counter, so the drift could be somewhat larger than in units that are closer like the QPI Agent.", 1892667433c4SIan Rogers "Unit": "HA" 1893667433c4SIan Rogers }, 1894667433c4SIan Rogers { 1895667433c4SIan Rogers "BriefDescription": "Direct2Core Messages Sent", 189611c2302cSIan Rogers "Counter": "0,1,2,3", 1897667433c4SIan Rogers "EventCode": "0x11", 1898667433c4SIan Rogers "EventName": "UNC_H_DIRECT2CORE_COUNT", 1899667433c4SIan Rogers "PerPkg": "1", 1900667433c4SIan Rogers "PublicDescription": "Number of Direct2Core messages sent", 1901667433c4SIan Rogers "Unit": "HA" 1902667433c4SIan Rogers }, 1903667433c4SIan Rogers { 1904667433c4SIan Rogers "BriefDescription": "Cycles when Direct2Core was Disabled", 190511c2302cSIan Rogers "Counter": "0,1,2,3", 1906667433c4SIan Rogers "EventCode": "0x12", 1907667433c4SIan Rogers "EventName": "UNC_H_DIRECT2CORE_CYCLES_DISABLED", 1908667433c4SIan Rogers "PerPkg": "1", 1909667433c4SIan Rogers "PublicDescription": "Number of cycles in which Direct2Core was disabled", 1910667433c4SIan Rogers "Unit": "HA" 1911667433c4SIan Rogers }, 1912667433c4SIan Rogers { 1913667433c4SIan Rogers "BriefDescription": "Number of Reads that had Direct2Core Overridden", 191411c2302cSIan Rogers "Counter": "0,1,2,3", 1915667433c4SIan Rogers "EventCode": "0x13", 1916667433c4SIan Rogers "EventName": "UNC_H_DIRECT2CORE_TXN_OVERRIDE", 1917667433c4SIan Rogers "PerPkg": "1", 1918667433c4SIan Rogers "PublicDescription": "Number of Reads where Direct2Core overridden", 1919667433c4SIan Rogers "Unit": "HA" 1920667433c4SIan Rogers }, 1921667433c4SIan Rogers { 1922667433c4SIan Rogers "BriefDescription": "Directory Lat Opt Return", 192311c2302cSIan Rogers "Counter": "0,1,2,3", 1924667433c4SIan Rogers "EventCode": "0x41", 1925667433c4SIan Rogers "EventName": "UNC_H_DIRECTORY_LAT_OPT", 1926667433c4SIan Rogers "PerPkg": "1", 1927667433c4SIan Rogers "PublicDescription": "Directory Latency Optimization Data Return Path Taken. When directory mode is enabled and the directory returned for a read is Dir=I, then data can be returned using a faster path if certain conditions are met (credits, free pipeline, etc).", 1928667433c4SIan Rogers "Unit": "HA" 1929667433c4SIan Rogers }, 1930667433c4SIan Rogers { 1931bedd1738SZhengjun Xing "BriefDescription": "Directory Lookups; Snoop Not Needed", 193211c2302cSIan Rogers "Counter": "0,1,2,3", 1933bedd1738SZhengjun Xing "EventCode": "0xC", 1934bedd1738SZhengjun Xing "EventName": "UNC_H_DIRECTORY_LOOKUP.NO_SNP", 1935bedd1738SZhengjun Xing "PerPkg": "1", 1936667433c4SIan Rogers "PublicDescription": "Counts the number of transactions that looked up the directory. Can be filtered by requests that had to snoop and those that did not have to.; Filters for transactions that did not have to send any snoops because the directory bit was clear.", 1937667433c4SIan Rogers "UMask": "0x2", 1938667433c4SIan Rogers "Unit": "HA" 1939667433c4SIan Rogers }, 1940667433c4SIan Rogers { 1941667433c4SIan Rogers "BriefDescription": "Directory Lookups; Snoop Needed", 194211c2302cSIan Rogers "Counter": "0,1,2,3", 1943667433c4SIan Rogers "EventCode": "0xC", 1944667433c4SIan Rogers "EventName": "UNC_H_DIRECTORY_LOOKUP.SNP", 1945667433c4SIan Rogers "PerPkg": "1", 1946667433c4SIan Rogers "PublicDescription": "Counts the number of transactions that looked up the directory. Can be filtered by requests that had to snoop and those that did not have to.; Filters for transactions that had to send one or more snoops because the directory bit was set.", 1947667433c4SIan Rogers "UMask": "0x1", 1948667433c4SIan Rogers "Unit": "HA" 1949667433c4SIan Rogers }, 1950667433c4SIan Rogers { 1951667433c4SIan Rogers "BriefDescription": "Directory Updates; Any Directory Update", 195211c2302cSIan Rogers "Counter": "0,1,2,3", 1953667433c4SIan Rogers "EventCode": "0xD", 1954667433c4SIan Rogers "EventName": "UNC_H_DIRECTORY_UPDATE.ANY", 1955667433c4SIan Rogers "PerPkg": "1", 1956667433c4SIan Rogers "PublicDescription": "Counts the number of directory updates that were required. These result in writes to the memory controller. This can be filtered by directory sets and directory clears.", 1957667433c4SIan Rogers "UMask": "0x3", 1958667433c4SIan Rogers "Unit": "HA" 1959667433c4SIan Rogers }, 1960667433c4SIan Rogers { 1961667433c4SIan Rogers "BriefDescription": "Directory Updates; Directory Clear", 196211c2302cSIan Rogers "Counter": "0,1,2,3", 1963667433c4SIan Rogers "EventCode": "0xD", 1964667433c4SIan Rogers "EventName": "UNC_H_DIRECTORY_UPDATE.CLEAR", 1965667433c4SIan Rogers "PerPkg": "1", 1966667433c4SIan Rogers "PublicDescription": "Counts the number of directory updates that were required. These result in writes to the memory controller. This can be filtered by directory sets and directory clears.; Filter for directory clears. This occurs when snoops were sent and all returned with RspI.", 1967bedd1738SZhengjun Xing "UMask": "0x2", 1968bedd1738SZhengjun Xing "Unit": "HA" 1969bedd1738SZhengjun Xing }, 1970bedd1738SZhengjun Xing { 1971bedd1738SZhengjun Xing "BriefDescription": "Directory Updates; Directory Set", 197211c2302cSIan Rogers "Counter": "0,1,2,3", 1973bedd1738SZhengjun Xing "EventCode": "0xD", 1974bedd1738SZhengjun Xing "EventName": "UNC_H_DIRECTORY_UPDATE.SET", 1975bedd1738SZhengjun Xing "PerPkg": "1", 1976667433c4SIan Rogers "PublicDescription": "Counts the number of directory updates that were required. These result in writes to the memory controller. This can be filtered by directory sets and directory clears.; Filter for directory sets. This occurs when a remote read transaction requests memory, bringing it to a remote cache.", 1977bedd1738SZhengjun Xing "UMask": "0x1", 1978bedd1738SZhengjun Xing "Unit": "HA" 1979bedd1738SZhengjun Xing }, 1980bedd1738SZhengjun Xing { 1981bedd1738SZhengjun Xing "BriefDescription": "Counts Number of Hits in HitMe Cache; op is AckCnfltWbI", 198211c2302cSIan Rogers "Counter": "0,1,2,3", 1983bedd1738SZhengjun Xing "EventCode": "0x71", 1984bedd1738SZhengjun Xing "EventName": "UNC_H_HITME_HIT.ACKCNFLTWBI", 1985bedd1738SZhengjun Xing "PerPkg": "1", 1986bedd1738SZhengjun Xing "UMask": "0x4", 1987bedd1738SZhengjun Xing "Unit": "HA" 1988bedd1738SZhengjun Xing }, 1989bedd1738SZhengjun Xing { 1990667433c4SIan Rogers "BriefDescription": "Counts Number of Hits in HitMe Cache; All Requests", 199111c2302cSIan Rogers "Counter": "0,1,2,3", 1992bedd1738SZhengjun Xing "EventCode": "0x71", 1993667433c4SIan Rogers "EventName": "UNC_H_HITME_HIT.ALL", 1994bedd1738SZhengjun Xing "PerPkg": "1", 1995667433c4SIan Rogers "UMask": "0xff", 1996bedd1738SZhengjun Xing "Unit": "HA" 1997bedd1738SZhengjun Xing }, 1998bedd1738SZhengjun Xing { 1999bedd1738SZhengjun Xing "BriefDescription": "Counts Number of Hits in HitMe Cache; Allocations", 200011c2302cSIan Rogers "Counter": "0,1,2,3", 2001bedd1738SZhengjun Xing "EventCode": "0x71", 2002bedd1738SZhengjun Xing "EventName": "UNC_H_HITME_HIT.ALLOCS", 2003bedd1738SZhengjun Xing "PerPkg": "1", 2004bedd1738SZhengjun Xing "UMask": "0x70", 2005bedd1738SZhengjun Xing "Unit": "HA" 2006bedd1738SZhengjun Xing }, 2007bedd1738SZhengjun Xing { 2008bedd1738SZhengjun Xing "BriefDescription": "Counts Number of Hits in HitMe Cache; Allocations", 200911c2302cSIan Rogers "Counter": "0,1,2,3", 2010bedd1738SZhengjun Xing "EventCode": "0x71", 2011bedd1738SZhengjun Xing "EventName": "UNC_H_HITME_HIT.EVICTS", 2012bedd1738SZhengjun Xing "PerPkg": "1", 2013bedd1738SZhengjun Xing "UMask": "0x42", 2014bedd1738SZhengjun Xing "Unit": "HA" 2015bedd1738SZhengjun Xing }, 2016bedd1738SZhengjun Xing { 2017667433c4SIan Rogers "BriefDescription": "Counts Number of Hits in HitMe Cache; HOM Requests", 201811c2302cSIan Rogers "Counter": "0,1,2,3", 2019667433c4SIan Rogers "EventCode": "0x71", 2020667433c4SIan Rogers "EventName": "UNC_H_HITME_HIT.HOM", 2021667433c4SIan Rogers "PerPkg": "1", 2022667433c4SIan Rogers "UMask": "0xf", 2023667433c4SIan Rogers "Unit": "HA" 2024667433c4SIan Rogers }, 2025667433c4SIan Rogers { 2026bedd1738SZhengjun Xing "BriefDescription": "Counts Number of Hits in HitMe Cache; Invalidations", 202711c2302cSIan Rogers "Counter": "0,1,2,3", 2028bedd1738SZhengjun Xing "EventCode": "0x71", 2029bedd1738SZhengjun Xing "EventName": "UNC_H_HITME_HIT.INVALS", 2030bedd1738SZhengjun Xing "PerPkg": "1", 2031bedd1738SZhengjun Xing "UMask": "0x26", 2032bedd1738SZhengjun Xing "Unit": "HA" 2033bedd1738SZhengjun Xing }, 2034bedd1738SZhengjun Xing { 2035667433c4SIan Rogers "BriefDescription": "Counts Number of Hits in HitMe Cache; op is RdCode, RdData, RdDataMigratory, RdInvOwn, RdCur or InvItoE", 203611c2302cSIan Rogers "Counter": "0,1,2,3", 2037bedd1738SZhengjun Xing "EventCode": "0x71", 2038667433c4SIan Rogers "EventName": "UNC_H_HITME_HIT.READ_OR_INVITOE", 2039bedd1738SZhengjun Xing "PerPkg": "1", 2040bedd1738SZhengjun Xing "UMask": "0x1", 2041bedd1738SZhengjun Xing "Unit": "HA" 2042bedd1738SZhengjun Xing }, 2043bedd1738SZhengjun Xing { 2044667433c4SIan Rogers "BriefDescription": "Counts Number of Hits in HitMe Cache; op is RspI, RspIWb, RspS, RspSWb, RspCnflt or RspCnfltWbI", 204511c2302cSIan Rogers "Counter": "0,1,2,3", 2046667433c4SIan Rogers "EventCode": "0x71", 2047667433c4SIan Rogers "EventName": "UNC_H_HITME_HIT.RSP", 2048667433c4SIan Rogers "PerPkg": "1", 2049667433c4SIan Rogers "UMask": "0x80", 2050667433c4SIan Rogers "Unit": "HA" 2051667433c4SIan Rogers }, 2052667433c4SIan Rogers { 2053667433c4SIan Rogers "BriefDescription": "Counts Number of Hits in HitMe Cache; op is RspIFwd or RspIFwdWb for a local request", 205411c2302cSIan Rogers "Counter": "0,1,2,3", 2055667433c4SIan Rogers "EventCode": "0x71", 2056667433c4SIan Rogers "EventName": "UNC_H_HITME_HIT.RSPFWDI_LOCAL", 2057667433c4SIan Rogers "PerPkg": "1", 2058667433c4SIan Rogers "UMask": "0x20", 2059667433c4SIan Rogers "Unit": "HA" 2060667433c4SIan Rogers }, 2061667433c4SIan Rogers { 2062667433c4SIan Rogers "BriefDescription": "Counts Number of Hits in HitMe Cache; op is RspIFwd or RspIFwdWb for a remote request", 206311c2302cSIan Rogers "Counter": "0,1,2,3", 2064667433c4SIan Rogers "EventCode": "0x71", 2065667433c4SIan Rogers "EventName": "UNC_H_HITME_HIT.RSPFWDI_REMOTE", 2066667433c4SIan Rogers "PerPkg": "1", 2067667433c4SIan Rogers "UMask": "0x10", 2068667433c4SIan Rogers "Unit": "HA" 2069667433c4SIan Rogers }, 2070667433c4SIan Rogers { 2071667433c4SIan Rogers "BriefDescription": "Counts Number of Hits in HitMe Cache; op is RsSFwd or RspSFwdWb", 207211c2302cSIan Rogers "Counter": "0,1,2,3", 2073667433c4SIan Rogers "EventCode": "0x71", 2074667433c4SIan Rogers "EventName": "UNC_H_HITME_HIT.RSPFWDS", 2075667433c4SIan Rogers "PerPkg": "1", 2076667433c4SIan Rogers "UMask": "0x40", 2077667433c4SIan Rogers "Unit": "HA" 2078667433c4SIan Rogers }, 2079667433c4SIan Rogers { 2080667433c4SIan Rogers "BriefDescription": "Counts Number of Hits in HitMe Cache; op is WbMtoE or WbMtoS", 208111c2302cSIan Rogers "Counter": "0,1,2,3", 2082667433c4SIan Rogers "EventCode": "0x71", 2083667433c4SIan Rogers "EventName": "UNC_H_HITME_HIT.WBMTOE_OR_S", 2084667433c4SIan Rogers "PerPkg": "1", 2085667433c4SIan Rogers "UMask": "0x8", 2086667433c4SIan Rogers "Unit": "HA" 2087667433c4SIan Rogers }, 2088667433c4SIan Rogers { 2089667433c4SIan Rogers "BriefDescription": "Counts Number of Hits in HitMe Cache; op is WbMtoI", 209011c2302cSIan Rogers "Counter": "0,1,2,3", 2091667433c4SIan Rogers "EventCode": "0x71", 2092667433c4SIan Rogers "EventName": "UNC_H_HITME_HIT.WBMTOI", 2093bedd1738SZhengjun Xing "PerPkg": "1", 2094bedd1738SZhengjun Xing "UMask": "0x2", 2095bedd1738SZhengjun Xing "Unit": "HA" 2096bedd1738SZhengjun Xing }, 2097bedd1738SZhengjun Xing { 2098bedd1738SZhengjun Xing "BriefDescription": "Accumulates Number of PV bits set on HitMe Cache Hits; op is AckCnfltWbI", 209911c2302cSIan Rogers "Counter": "0,1,2,3", 2100bedd1738SZhengjun Xing "EventCode": "0x72", 2101bedd1738SZhengjun Xing "EventName": "UNC_H_HITME_HIT_PV_BITS_SET.ACKCNFLTWBI", 2102bedd1738SZhengjun Xing "PerPkg": "1", 2103bedd1738SZhengjun Xing "UMask": "0x4", 2104bedd1738SZhengjun Xing "Unit": "HA" 2105bedd1738SZhengjun Xing }, 2106bedd1738SZhengjun Xing { 2107667433c4SIan Rogers "BriefDescription": "Accumulates Number of PV bits set on HitMe Cache Hits; All Requests", 210811c2302cSIan Rogers "Counter": "0,1,2,3", 2109bedd1738SZhengjun Xing "EventCode": "0x72", 2110667433c4SIan Rogers "EventName": "UNC_H_HITME_HIT_PV_BITS_SET.ALL", 2111bedd1738SZhengjun Xing "PerPkg": "1", 2112667433c4SIan Rogers "UMask": "0xff", 2113bedd1738SZhengjun Xing "Unit": "HA" 2114bedd1738SZhengjun Xing }, 2115bedd1738SZhengjun Xing { 2116667433c4SIan Rogers "BriefDescription": "Accumulates Number of PV bits set on HitMe Cache Hits; HOM Requests", 211711c2302cSIan Rogers "Counter": "0,1,2,3", 2118bedd1738SZhengjun Xing "EventCode": "0x72", 2119667433c4SIan Rogers "EventName": "UNC_H_HITME_HIT_PV_BITS_SET.HOM", 2120bedd1738SZhengjun Xing "PerPkg": "1", 2121667433c4SIan Rogers "UMask": "0xf", 2122bedd1738SZhengjun Xing "Unit": "HA" 2123bedd1738SZhengjun Xing }, 2124bedd1738SZhengjun Xing { 2125667433c4SIan Rogers "BriefDescription": "Accumulates Number of PV bits set on HitMe Cache Hits; op is RdCode, RdData, RdDataMigratory, RdInvOwn, RdCur or InvItoE", 212611c2302cSIan Rogers "Counter": "0,1,2,3", 2127bedd1738SZhengjun Xing "EventCode": "0x72", 2128667433c4SIan Rogers "EventName": "UNC_H_HITME_HIT_PV_BITS_SET.READ_OR_INVITOE", 2129bedd1738SZhengjun Xing "PerPkg": "1", 2130667433c4SIan Rogers "UMask": "0x1", 2131bedd1738SZhengjun Xing "Unit": "HA" 2132bedd1738SZhengjun Xing }, 2133bedd1738SZhengjun Xing { 2134bedd1738SZhengjun Xing "BriefDescription": "Accumulates Number of PV bits set on HitMe Cache Hits; op is RspI, RspIWb, RspS, RspSWb, RspCnflt or RspCnfltWbI", 213511c2302cSIan Rogers "Counter": "0,1,2,3", 2136bedd1738SZhengjun Xing "EventCode": "0x72", 2137bedd1738SZhengjun Xing "EventName": "UNC_H_HITME_HIT_PV_BITS_SET.RSP", 2138bedd1738SZhengjun Xing "PerPkg": "1", 2139bedd1738SZhengjun Xing "UMask": "0x80", 2140bedd1738SZhengjun Xing "Unit": "HA" 2141bedd1738SZhengjun Xing }, 2142bedd1738SZhengjun Xing { 2143667433c4SIan Rogers "BriefDescription": "Accumulates Number of PV bits set on HitMe Cache Hits; op is RspIFwd or RspIFwdWb for a local request", 214411c2302cSIan Rogers "Counter": "0,1,2,3", 2145bedd1738SZhengjun Xing "EventCode": "0x72", 2146667433c4SIan Rogers "EventName": "UNC_H_HITME_HIT_PV_BITS_SET.RSPFWDI_LOCAL", 2147bedd1738SZhengjun Xing "PerPkg": "1", 2148667433c4SIan Rogers "UMask": "0x20", 2149bedd1738SZhengjun Xing "Unit": "HA" 2150bedd1738SZhengjun Xing }, 2151bedd1738SZhengjun Xing { 2152667433c4SIan Rogers "BriefDescription": "Accumulates Number of PV bits set on HitMe Cache Hits; op is RspIFwd or RspIFwdWb for a remote request", 215311c2302cSIan Rogers "Counter": "0,1,2,3", 2154bedd1738SZhengjun Xing "EventCode": "0x72", 2155667433c4SIan Rogers "EventName": "UNC_H_HITME_HIT_PV_BITS_SET.RSPFWDI_REMOTE", 2156bedd1738SZhengjun Xing "PerPkg": "1", 2157667433c4SIan Rogers "UMask": "0x10", 2158bedd1738SZhengjun Xing "Unit": "HA" 2159bedd1738SZhengjun Xing }, 2160bedd1738SZhengjun Xing { 2161667433c4SIan Rogers "BriefDescription": "Accumulates Number of PV bits set on HitMe Cache Hits; op is RsSFwd or RspSFwdWb", 216211c2302cSIan Rogers "Counter": "0,1,2,3", 2163667433c4SIan Rogers "EventCode": "0x72", 2164667433c4SIan Rogers "EventName": "UNC_H_HITME_HIT_PV_BITS_SET.RSPFWDS", 2165bedd1738SZhengjun Xing "PerPkg": "1", 2166667433c4SIan Rogers "UMask": "0x40", 2167bedd1738SZhengjun Xing "Unit": "HA" 2168bedd1738SZhengjun Xing }, 2169bedd1738SZhengjun Xing { 2170667433c4SIan Rogers "BriefDescription": "Accumulates Number of PV bits set on HitMe Cache Hits; op is WbMtoE or WbMtoS", 217111c2302cSIan Rogers "Counter": "0,1,2,3", 2172667433c4SIan Rogers "EventCode": "0x72", 2173667433c4SIan Rogers "EventName": "UNC_H_HITME_HIT_PV_BITS_SET.WBMTOE_OR_S", 2174667433c4SIan Rogers "PerPkg": "1", 2175667433c4SIan Rogers "UMask": "0x8", 2176667433c4SIan Rogers "Unit": "HA" 2177667433c4SIan Rogers }, 2178667433c4SIan Rogers { 2179667433c4SIan Rogers "BriefDescription": "Accumulates Number of PV bits set on HitMe Cache Hits; op is WbMtoI", 218011c2302cSIan Rogers "Counter": "0,1,2,3", 2181667433c4SIan Rogers "EventCode": "0x72", 2182667433c4SIan Rogers "EventName": "UNC_H_HITME_HIT_PV_BITS_SET.WBMTOI", 2183bedd1738SZhengjun Xing "PerPkg": "1", 2184bedd1738SZhengjun Xing "UMask": "0x2", 2185bedd1738SZhengjun Xing "Unit": "HA" 2186bedd1738SZhengjun Xing }, 2187bedd1738SZhengjun Xing { 2188bedd1738SZhengjun Xing "BriefDescription": "Counts Number of times HitMe Cache is accessed; op is AckCnfltWbI", 218911c2302cSIan Rogers "Counter": "0,1,2,3", 2190bedd1738SZhengjun Xing "EventCode": "0x70", 2191bedd1738SZhengjun Xing "EventName": "UNC_H_HITME_LOOKUP.ACKCNFLTWBI", 2192bedd1738SZhengjun Xing "PerPkg": "1", 2193bedd1738SZhengjun Xing "UMask": "0x4", 2194bedd1738SZhengjun Xing "Unit": "HA" 2195bedd1738SZhengjun Xing }, 2196bedd1738SZhengjun Xing { 2197667433c4SIan Rogers "BriefDescription": "Counts Number of times HitMe Cache is accessed; All Requests", 219811c2302cSIan Rogers "Counter": "0,1,2,3", 2199bedd1738SZhengjun Xing "EventCode": "0x70", 2200667433c4SIan Rogers "EventName": "UNC_H_HITME_LOOKUP.ALL", 2201bedd1738SZhengjun Xing "PerPkg": "1", 2202667433c4SIan Rogers "UMask": "0xff", 2203bedd1738SZhengjun Xing "Unit": "HA" 2204bedd1738SZhengjun Xing }, 2205bedd1738SZhengjun Xing { 2206bedd1738SZhengjun Xing "BriefDescription": "Counts Number of times HitMe Cache is accessed; Allocations", 220711c2302cSIan Rogers "Counter": "0,1,2,3", 2208bedd1738SZhengjun Xing "EventCode": "0x70", 2209bedd1738SZhengjun Xing "EventName": "UNC_H_HITME_LOOKUP.ALLOCS", 2210bedd1738SZhengjun Xing "PerPkg": "1", 2211bedd1738SZhengjun Xing "UMask": "0x70", 2212bedd1738SZhengjun Xing "Unit": "HA" 2213bedd1738SZhengjun Xing }, 2214bedd1738SZhengjun Xing { 2215667433c4SIan Rogers "BriefDescription": "Counts Number of times HitMe Cache is accessed; HOM Requests", 221611c2302cSIan Rogers "Counter": "0,1,2,3", 2217667433c4SIan Rogers "EventCode": "0x70", 2218667433c4SIan Rogers "EventName": "UNC_H_HITME_LOOKUP.HOM", 2219667433c4SIan Rogers "PerPkg": "1", 2220667433c4SIan Rogers "UMask": "0xf", 2221667433c4SIan Rogers "Unit": "HA" 2222667433c4SIan Rogers }, 2223667433c4SIan Rogers { 2224bedd1738SZhengjun Xing "BriefDescription": "Counts Number of times HitMe Cache is accessed; Invalidations", 222511c2302cSIan Rogers "Counter": "0,1,2,3", 2226bedd1738SZhengjun Xing "EventCode": "0x70", 2227bedd1738SZhengjun Xing "EventName": "UNC_H_HITME_LOOKUP.INVALS", 2228bedd1738SZhengjun Xing "PerPkg": "1", 2229bedd1738SZhengjun Xing "UMask": "0x26", 2230bedd1738SZhengjun Xing "Unit": "HA" 2231bedd1738SZhengjun Xing }, 2232bedd1738SZhengjun Xing { 2233667433c4SIan Rogers "BriefDescription": "Counts Number of times HitMe Cache is accessed; op is RdCode, RdData, RdDataMigratory, RdInvOwn, RdCur or InvItoE", 223411c2302cSIan Rogers "Counter": "0,1,2,3", 2235bedd1738SZhengjun Xing "EventCode": "0x70", 2236667433c4SIan Rogers "EventName": "UNC_H_HITME_LOOKUP.READ_OR_INVITOE", 2237bedd1738SZhengjun Xing "PerPkg": "1", 2238bedd1738SZhengjun Xing "UMask": "0x1", 2239bedd1738SZhengjun Xing "Unit": "HA" 2240bedd1738SZhengjun Xing }, 2241bedd1738SZhengjun Xing { 2242667433c4SIan Rogers "BriefDescription": "Counts Number of times HitMe Cache is accessed; op is RspI, RspIWb, RspS, RspSWb, RspCnflt or RspCnfltWbI", 224311c2302cSIan Rogers "Counter": "0,1,2,3", 2244667433c4SIan Rogers "EventCode": "0x70", 2245667433c4SIan Rogers "EventName": "UNC_H_HITME_LOOKUP.RSP", 2246bedd1738SZhengjun Xing "PerPkg": "1", 2247667433c4SIan Rogers "UMask": "0x80", 2248bedd1738SZhengjun Xing "Unit": "HA" 2249bedd1738SZhengjun Xing }, 2250bedd1738SZhengjun Xing { 2251667433c4SIan Rogers "BriefDescription": "Counts Number of times HitMe Cache is accessed; op is RspIFwd or RspIFwdWb for a local request", 225211c2302cSIan Rogers "Counter": "0,1,2,3", 2253667433c4SIan Rogers "EventCode": "0x70", 2254667433c4SIan Rogers "EventName": "UNC_H_HITME_LOOKUP.RSPFWDI_LOCAL", 2255bedd1738SZhengjun Xing "PerPkg": "1", 2256bedd1738SZhengjun Xing "UMask": "0x20", 2257bedd1738SZhengjun Xing "Unit": "HA" 2258bedd1738SZhengjun Xing }, 2259bedd1738SZhengjun Xing { 2260667433c4SIan Rogers "BriefDescription": "Counts Number of times HitMe Cache is accessed; op is RspIFwd or RspIFwdWb for a remote request", 226111c2302cSIan Rogers "Counter": "0,1,2,3", 2262667433c4SIan Rogers "EventCode": "0x70", 2263667433c4SIan Rogers "EventName": "UNC_H_HITME_LOOKUP.RSPFWDI_REMOTE", 2264667433c4SIan Rogers "PerPkg": "1", 2265667433c4SIan Rogers "UMask": "0x10", 2266667433c4SIan Rogers "Unit": "HA" 2267667433c4SIan Rogers }, 2268667433c4SIan Rogers { 2269667433c4SIan Rogers "BriefDescription": "Counts Number of times HitMe Cache is accessed; op is RsSFwd or RspSFwdWb", 227011c2302cSIan Rogers "Counter": "0,1,2,3", 2271667433c4SIan Rogers "EventCode": "0x70", 2272667433c4SIan Rogers "EventName": "UNC_H_HITME_LOOKUP.RSPFWDS", 2273667433c4SIan Rogers "PerPkg": "1", 2274667433c4SIan Rogers "UMask": "0x40", 2275667433c4SIan Rogers "Unit": "HA" 2276667433c4SIan Rogers }, 2277667433c4SIan Rogers { 2278667433c4SIan Rogers "BriefDescription": "Counts Number of times HitMe Cache is accessed; op is WbMtoE or WbMtoS", 227911c2302cSIan Rogers "Counter": "0,1,2,3", 2280667433c4SIan Rogers "EventCode": "0x70", 2281667433c4SIan Rogers "EventName": "UNC_H_HITME_LOOKUP.WBMTOE_OR_S", 2282667433c4SIan Rogers "PerPkg": "1", 2283667433c4SIan Rogers "UMask": "0x8", 2284667433c4SIan Rogers "Unit": "HA" 2285667433c4SIan Rogers }, 2286667433c4SIan Rogers { 2287667433c4SIan Rogers "BriefDescription": "Counts Number of times HitMe Cache is accessed; op is WbMtoI", 228811c2302cSIan Rogers "Counter": "0,1,2,3", 2289667433c4SIan Rogers "EventCode": "0x70", 2290667433c4SIan Rogers "EventName": "UNC_H_HITME_LOOKUP.WBMTOI", 2291667433c4SIan Rogers "PerPkg": "1", 2292667433c4SIan Rogers "UMask": "0x2", 2293667433c4SIan Rogers "Unit": "HA" 2294667433c4SIan Rogers }, 2295667433c4SIan Rogers { 2296667433c4SIan Rogers "BriefDescription": "Cycles without QPI Ingress Credits; AD to QPI Link 0", 229711c2302cSIan Rogers "Counter": "0,1,2,3", 2298667433c4SIan Rogers "EventCode": "0x22", 2299667433c4SIan Rogers "EventName": "UNC_H_IGR_NO_CREDIT_CYCLES.AD_QPI0", 2300667433c4SIan Rogers "PerPkg": "1", 2301667433c4SIan Rogers "PublicDescription": "Counts the number of cycles when the HA does not have credits to send messages to the QPI Agent. This can be filtered by the different credit pools and the different links.", 2302667433c4SIan Rogers "UMask": "0x1", 2303667433c4SIan Rogers "Unit": "HA" 2304667433c4SIan Rogers }, 2305667433c4SIan Rogers { 2306667433c4SIan Rogers "BriefDescription": "Cycles without QPI Ingress Credits; AD to QPI Link 1", 230711c2302cSIan Rogers "Counter": "0,1,2,3", 2308667433c4SIan Rogers "EventCode": "0x22", 2309667433c4SIan Rogers "EventName": "UNC_H_IGR_NO_CREDIT_CYCLES.AD_QPI1", 2310667433c4SIan Rogers "PerPkg": "1", 2311667433c4SIan Rogers "PublicDescription": "Counts the number of cycles when the HA does not have credits to send messages to the QPI Agent. This can be filtered by the different credit pools and the different links.", 2312667433c4SIan Rogers "UMask": "0x2", 2313667433c4SIan Rogers "Unit": "HA" 2314667433c4SIan Rogers }, 2315667433c4SIan Rogers { 2316667433c4SIan Rogers "BriefDescription": "Cycles without QPI Ingress Credits; BL to QPI Link 0", 231711c2302cSIan Rogers "Counter": "0,1,2,3", 2318667433c4SIan Rogers "EventCode": "0x22", 2319667433c4SIan Rogers "EventName": "UNC_H_IGR_NO_CREDIT_CYCLES.AD_QPI2", 2320667433c4SIan Rogers "PerPkg": "1", 2321667433c4SIan Rogers "PublicDescription": "Counts the number of cycles when the HA does not have credits to send messages to the QPI Agent. This can be filtered by the different credit pools and the different links.", 2322667433c4SIan Rogers "UMask": "0x10", 2323667433c4SIan Rogers "Unit": "HA" 2324667433c4SIan Rogers }, 2325667433c4SIan Rogers { 2326667433c4SIan Rogers "BriefDescription": "Cycles without QPI Ingress Credits; BL to QPI Link 0", 232711c2302cSIan Rogers "Counter": "0,1,2,3", 2328667433c4SIan Rogers "EventCode": "0x22", 2329667433c4SIan Rogers "EventName": "UNC_H_IGR_NO_CREDIT_CYCLES.BL_QPI0", 2330667433c4SIan Rogers "PerPkg": "1", 2331667433c4SIan Rogers "PublicDescription": "Counts the number of cycles when the HA does not have credits to send messages to the QPI Agent. This can be filtered by the different credit pools and the different links.", 2332667433c4SIan Rogers "UMask": "0x4", 2333667433c4SIan Rogers "Unit": "HA" 2334667433c4SIan Rogers }, 2335667433c4SIan Rogers { 2336667433c4SIan Rogers "BriefDescription": "Cycles without QPI Ingress Credits; BL to QPI Link 1", 233711c2302cSIan Rogers "Counter": "0,1,2,3", 2338667433c4SIan Rogers "EventCode": "0x22", 2339667433c4SIan Rogers "EventName": "UNC_H_IGR_NO_CREDIT_CYCLES.BL_QPI1", 2340667433c4SIan Rogers "PerPkg": "1", 2341667433c4SIan Rogers "PublicDescription": "Counts the number of cycles when the HA does not have credits to send messages to the QPI Agent. This can be filtered by the different credit pools and the different links.", 2342667433c4SIan Rogers "UMask": "0x8", 2343667433c4SIan Rogers "Unit": "HA" 2344667433c4SIan Rogers }, 2345667433c4SIan Rogers { 2346667433c4SIan Rogers "BriefDescription": "Cycles without QPI Ingress Credits; BL to QPI Link 1", 234711c2302cSIan Rogers "Counter": "0,1,2,3", 2348667433c4SIan Rogers "EventCode": "0x22", 2349667433c4SIan Rogers "EventName": "UNC_H_IGR_NO_CREDIT_CYCLES.BL_QPI2", 2350667433c4SIan Rogers "PerPkg": "1", 2351667433c4SIan Rogers "PublicDescription": "Counts the number of cycles when the HA does not have credits to send messages to the QPI Agent. This can be filtered by the different credit pools and the different links.", 2352667433c4SIan Rogers "UMask": "0x20", 2353667433c4SIan Rogers "Unit": "HA" 2354667433c4SIan Rogers }, 2355667433c4SIan Rogers { 2356bedd1738SZhengjun Xing "BriefDescription": "HA to iMC Normal Priority Reads Issued; Normal Priority", 235711c2302cSIan Rogers "Counter": "0,1,2,3", 2358bedd1738SZhengjun Xing "EventCode": "0x17", 2359bedd1738SZhengjun Xing "EventName": "UNC_H_IMC_READS.NORMAL", 2360bedd1738SZhengjun Xing "PerPkg": "1", 2361667433c4SIan Rogers "PublicDescription": "Count of the number of reads issued to any of the memory controller channels. This can be filtered by the priority of the reads.", 2362bedd1738SZhengjun Xing "UMask": "0x1", 2363bedd1738SZhengjun Xing "Unit": "HA" 2364bedd1738SZhengjun Xing }, 2365bedd1738SZhengjun Xing { 2366bedd1738SZhengjun Xing "BriefDescription": "Retry Events", 236711c2302cSIan Rogers "Counter": "0,1,2,3", 2368bedd1738SZhengjun Xing "EventCode": "0x1E", 2369bedd1738SZhengjun Xing "EventName": "UNC_H_IMC_RETRY", 2370bedd1738SZhengjun Xing "PerPkg": "1", 2371bedd1738SZhengjun Xing "Unit": "HA" 2372bedd1738SZhengjun Xing }, 2373bedd1738SZhengjun Xing { 2374667433c4SIan Rogers "BriefDescription": "HA to iMC Full Line Writes Issued; All Writes", 237511c2302cSIan Rogers "Counter": "0,1,2,3", 2376bedd1738SZhengjun Xing "EventCode": "0x1A", 2377667433c4SIan Rogers "EventName": "UNC_H_IMC_WRITES.ALL", 2378bedd1738SZhengjun Xing "PerPkg": "1", 2379667433c4SIan Rogers "PublicDescription": "Counts the total number of full line writes issued from the HA into the memory controller. This counts for all four channels. It can be filtered by full/partial and ISOCH/non-ISOCH.", 2380667433c4SIan Rogers "UMask": "0xf", 2381bedd1738SZhengjun Xing "Unit": "HA" 2382bedd1738SZhengjun Xing }, 2383bedd1738SZhengjun Xing { 2384667433c4SIan Rogers "BriefDescription": "HA to iMC Full Line Writes Issued; Full Line Non-ISOCH", 238511c2302cSIan Rogers "Counter": "0,1,2,3", 2386bedd1738SZhengjun Xing "EventCode": "0x1A", 2387667433c4SIan Rogers "EventName": "UNC_H_IMC_WRITES.FULL", 2388bedd1738SZhengjun Xing "PerPkg": "1", 2389667433c4SIan Rogers "PublicDescription": "Counts the total number of full line writes issued from the HA into the memory controller. This counts for all four channels. It can be filtered by full/partial and ISOCH/non-ISOCH.", 2390667433c4SIan Rogers "UMask": "0x1", 2391bedd1738SZhengjun Xing "Unit": "HA" 2392bedd1738SZhengjun Xing }, 2393bedd1738SZhengjun Xing { 2394bedd1738SZhengjun Xing "BriefDescription": "HA to iMC Full Line Writes Issued; ISOCH Full Line", 239511c2302cSIan Rogers "Counter": "0,1,2,3", 2396bedd1738SZhengjun Xing "EventCode": "0x1A", 2397bedd1738SZhengjun Xing "EventName": "UNC_H_IMC_WRITES.FULL_ISOCH", 2398bedd1738SZhengjun Xing "PerPkg": "1", 2399667433c4SIan Rogers "PublicDescription": "Counts the total number of full line writes issued from the HA into the memory controller. This counts for all four channels. It can be filtered by full/partial and ISOCH/non-ISOCH.", 2400bedd1738SZhengjun Xing "UMask": "0x4", 2401bedd1738SZhengjun Xing "Unit": "HA" 2402bedd1738SZhengjun Xing }, 2403bedd1738SZhengjun Xing { 2404667433c4SIan Rogers "BriefDescription": "HA to iMC Full Line Writes Issued; Partial Non-ISOCH", 240511c2302cSIan Rogers "Counter": "0,1,2,3", 2406667433c4SIan Rogers "EventCode": "0x1A", 2407667433c4SIan Rogers "EventName": "UNC_H_IMC_WRITES.PARTIAL", 2408667433c4SIan Rogers "PerPkg": "1", 2409667433c4SIan Rogers "PublicDescription": "Counts the total number of full line writes issued from the HA into the memory controller. This counts for all four channels. It can be filtered by full/partial and ISOCH/non-ISOCH.", 2410667433c4SIan Rogers "UMask": "0x2", 2411667433c4SIan Rogers "Unit": "HA" 2412667433c4SIan Rogers }, 2413667433c4SIan Rogers { 2414bedd1738SZhengjun Xing "BriefDescription": "HA to iMC Full Line Writes Issued; ISOCH Partial", 241511c2302cSIan Rogers "Counter": "0,1,2,3", 2416bedd1738SZhengjun Xing "EventCode": "0x1A", 2417bedd1738SZhengjun Xing "EventName": "UNC_H_IMC_WRITES.PARTIAL_ISOCH", 2418bedd1738SZhengjun Xing "PerPkg": "1", 2419667433c4SIan Rogers "PublicDescription": "Counts the total number of full line writes issued from the HA into the memory controller. This counts for all four channels. It can be filtered by full/partial and ISOCH/non-ISOCH.", 2420bedd1738SZhengjun Xing "UMask": "0x8", 2421bedd1738SZhengjun Xing "Unit": "HA" 2422bedd1738SZhengjun Xing }, 2423bedd1738SZhengjun Xing { 2424bedd1738SZhengjun Xing "BriefDescription": "IOT Backpressure", 242511c2302cSIan Rogers "Counter": "0,1,2", 2426bedd1738SZhengjun Xing "EventCode": "0x61", 2427bedd1738SZhengjun Xing "EventName": "UNC_H_IOT_BACKPRESSURE.HUB", 2428bedd1738SZhengjun Xing "PerPkg": "1", 2429bedd1738SZhengjun Xing "UMask": "0x2", 2430bedd1738SZhengjun Xing "Unit": "HA" 2431bedd1738SZhengjun Xing }, 2432bedd1738SZhengjun Xing { 2433667433c4SIan Rogers "BriefDescription": "IOT Backpressure", 243411c2302cSIan Rogers "Counter": "0,1,2", 2435667433c4SIan Rogers "EventCode": "0x61", 2436667433c4SIan Rogers "EventName": "UNC_H_IOT_BACKPRESSURE.SAT", 2437667433c4SIan Rogers "PerPkg": "1", 2438667433c4SIan Rogers "UMask": "0x1", 2439667433c4SIan Rogers "Unit": "HA" 2440667433c4SIan Rogers }, 2441667433c4SIan Rogers { 2442bedd1738SZhengjun Xing "BriefDescription": "IOT Common Trigger Sequencer - Lo", 244311c2302cSIan Rogers "Counter": "0,1,2", 2444bedd1738SZhengjun Xing "EventCode": "0x64", 2445bedd1738SZhengjun Xing "EventName": "UNC_H_IOT_CTS_EAST_LO.CTS0", 2446bedd1738SZhengjun Xing "PerPkg": "1", 2447667433c4SIan Rogers "PublicDescription": "Debug Mask/Match Tie-Ins", 2448bedd1738SZhengjun Xing "UMask": "0x1", 2449bedd1738SZhengjun Xing "Unit": "HA" 2450bedd1738SZhengjun Xing }, 2451bedd1738SZhengjun Xing { 2452bedd1738SZhengjun Xing "BriefDescription": "IOT Common Trigger Sequencer - Lo", 245311c2302cSIan Rogers "Counter": "0,1,2", 2454bedd1738SZhengjun Xing "EventCode": "0x64", 2455bedd1738SZhengjun Xing "EventName": "UNC_H_IOT_CTS_EAST_LO.CTS1", 2456bedd1738SZhengjun Xing "PerPkg": "1", 2457667433c4SIan Rogers "PublicDescription": "Debug Mask/Match Tie-Ins", 2458bedd1738SZhengjun Xing "UMask": "0x2", 2459bedd1738SZhengjun Xing "Unit": "HA" 2460bedd1738SZhengjun Xing }, 2461bedd1738SZhengjun Xing { 2462bedd1738SZhengjun Xing "BriefDescription": "IOT Common Trigger Sequencer - Hi", 246311c2302cSIan Rogers "Counter": "0,1,2", 2464bedd1738SZhengjun Xing "EventCode": "0x65", 2465bedd1738SZhengjun Xing "EventName": "UNC_H_IOT_CTS_HI.CTS2", 2466bedd1738SZhengjun Xing "PerPkg": "1", 2467667433c4SIan Rogers "PublicDescription": "Debug Mask/Match Tie-Ins", 2468bedd1738SZhengjun Xing "UMask": "0x1", 2469bedd1738SZhengjun Xing "Unit": "HA" 2470bedd1738SZhengjun Xing }, 2471bedd1738SZhengjun Xing { 2472bedd1738SZhengjun Xing "BriefDescription": "IOT Common Trigger Sequencer - Hi", 247311c2302cSIan Rogers "Counter": "0,1,2", 2474bedd1738SZhengjun Xing "EventCode": "0x65", 2475bedd1738SZhengjun Xing "EventName": "UNC_H_IOT_CTS_HI.CTS3", 2476bedd1738SZhengjun Xing "PerPkg": "1", 2477667433c4SIan Rogers "PublicDescription": "Debug Mask/Match Tie-Ins", 2478bedd1738SZhengjun Xing "UMask": "0x2", 2479bedd1738SZhengjun Xing "Unit": "HA" 2480bedd1738SZhengjun Xing }, 2481bedd1738SZhengjun Xing { 2482bedd1738SZhengjun Xing "BriefDescription": "IOT Common Trigger Sequencer - Lo", 248311c2302cSIan Rogers "Counter": "0,1,2", 2484bedd1738SZhengjun Xing "EventCode": "0x62", 2485bedd1738SZhengjun Xing "EventName": "UNC_H_IOT_CTS_WEST_LO.CTS0", 2486bedd1738SZhengjun Xing "PerPkg": "1", 2487667433c4SIan Rogers "PublicDescription": "Debug Mask/Match Tie-Ins", 2488bedd1738SZhengjun Xing "UMask": "0x1", 2489bedd1738SZhengjun Xing "Unit": "HA" 2490bedd1738SZhengjun Xing }, 2491bedd1738SZhengjun Xing { 2492bedd1738SZhengjun Xing "BriefDescription": "IOT Common Trigger Sequencer - Lo", 249311c2302cSIan Rogers "Counter": "0,1,2", 2494bedd1738SZhengjun Xing "EventCode": "0x62", 2495bedd1738SZhengjun Xing "EventName": "UNC_H_IOT_CTS_WEST_LO.CTS1", 2496bedd1738SZhengjun Xing "PerPkg": "1", 2497667433c4SIan Rogers "PublicDescription": "Debug Mask/Match Tie-Ins", 2498bedd1738SZhengjun Xing "UMask": "0x2", 2499bedd1738SZhengjun Xing "Unit": "HA" 2500bedd1738SZhengjun Xing }, 2501bedd1738SZhengjun Xing { 2502bedd1738SZhengjun Xing "BriefDescription": "OSB Snoop Broadcast; Cancelled", 250311c2302cSIan Rogers "Counter": "0,1,2,3", 2504bedd1738SZhengjun Xing "EventCode": "0x53", 2505bedd1738SZhengjun Xing "EventName": "UNC_H_OSB.CANCELLED", 2506bedd1738SZhengjun Xing "PerPkg": "1", 2507667433c4SIan Rogers "PublicDescription": "Count of OSB snoop broadcasts. Counts by 1 per request causing OSB snoops to be broadcast. Does not count all the snoops generated by OSB.; OSB Snoop broadcast cancelled due to D2C or Other. OSB cancel is counted when OSB local read is not allowed even when the transaction in local InItoE. It also counts D2C OSB cancel, but also includes the cases were D2C was not set in the first place for the transaction coming from the ring.", 2508bedd1738SZhengjun Xing "UMask": "0x10", 2509bedd1738SZhengjun Xing "Unit": "HA" 2510bedd1738SZhengjun Xing }, 2511bedd1738SZhengjun Xing { 2512667433c4SIan Rogers "BriefDescription": "OSB Snoop Broadcast; Local InvItoE", 251311c2302cSIan Rogers "Counter": "0,1,2,3", 2514667433c4SIan Rogers "EventCode": "0x53", 2515667433c4SIan Rogers "EventName": "UNC_H_OSB.INVITOE_LOCAL", 2516667433c4SIan Rogers "PerPkg": "1", 2517667433c4SIan Rogers "PublicDescription": "Count of OSB snoop broadcasts. Counts by 1 per request causing OSB snoops to be broadcast. Does not count all the snoops generated by OSB.", 2518667433c4SIan Rogers "UMask": "0x4", 2519667433c4SIan Rogers "Unit": "HA" 2520667433c4SIan Rogers }, 2521667433c4SIan Rogers { 2522667433c4SIan Rogers "BriefDescription": "OSB Snoop Broadcast; Local Reads", 252311c2302cSIan Rogers "Counter": "0,1,2,3", 2524667433c4SIan Rogers "EventCode": "0x53", 2525667433c4SIan Rogers "EventName": "UNC_H_OSB.READS_LOCAL", 2526667433c4SIan Rogers "PerPkg": "1", 2527667433c4SIan Rogers "PublicDescription": "Count of OSB snoop broadcasts. Counts by 1 per request causing OSB snoops to be broadcast. Does not count all the snoops generated by OSB.", 2528667433c4SIan Rogers "UMask": "0x2", 2529667433c4SIan Rogers "Unit": "HA" 2530667433c4SIan Rogers }, 2531667433c4SIan Rogers { 2532bedd1738SZhengjun Xing "BriefDescription": "OSB Snoop Broadcast; Reads Local - Useful", 253311c2302cSIan Rogers "Counter": "0,1,2,3", 2534bedd1738SZhengjun Xing "EventCode": "0x53", 2535bedd1738SZhengjun Xing "EventName": "UNC_H_OSB.READS_LOCAL_USEFUL", 2536bedd1738SZhengjun Xing "PerPkg": "1", 2537667433c4SIan Rogers "PublicDescription": "Count of OSB snoop broadcasts. Counts by 1 per request causing OSB snoops to be broadcast. Does not count all the snoops generated by OSB.", 2538bedd1738SZhengjun Xing "UMask": "0x20", 2539bedd1738SZhengjun Xing "Unit": "HA" 2540bedd1738SZhengjun Xing }, 2541bedd1738SZhengjun Xing { 2542667433c4SIan Rogers "BriefDescription": "OSB Snoop Broadcast; Remote", 254311c2302cSIan Rogers "Counter": "0,1,2,3", 2544667433c4SIan Rogers "EventCode": "0x53", 2545667433c4SIan Rogers "EventName": "UNC_H_OSB.REMOTE", 2546667433c4SIan Rogers "PerPkg": "1", 2547667433c4SIan Rogers "PublicDescription": "Count of OSB snoop broadcasts. Counts by 1 per request causing OSB snoops to be broadcast. Does not count all the snoops generated by OSB.", 2548667433c4SIan Rogers "UMask": "0x8", 2549667433c4SIan Rogers "Unit": "HA" 2550667433c4SIan Rogers }, 2551667433c4SIan Rogers { 2552bedd1738SZhengjun Xing "BriefDescription": "OSB Snoop Broadcast; Remote - Useful", 255311c2302cSIan Rogers "Counter": "0,1,2,3", 2554bedd1738SZhengjun Xing "EventCode": "0x53", 2555bedd1738SZhengjun Xing "EventName": "UNC_H_OSB.REMOTE_USEFUL", 2556bedd1738SZhengjun Xing "PerPkg": "1", 2557667433c4SIan Rogers "PublicDescription": "Count of OSB snoop broadcasts. Counts by 1 per request causing OSB snoops to be broadcast. Does not count all the snoops generated by OSB.", 2558bedd1738SZhengjun Xing "UMask": "0x40", 2559bedd1738SZhengjun Xing "Unit": "HA" 2560bedd1738SZhengjun Xing }, 2561bedd1738SZhengjun Xing { 2562bedd1738SZhengjun Xing "BriefDescription": "OSB Early Data Return; All", 256311c2302cSIan Rogers "Counter": "0,1,2,3", 2564bedd1738SZhengjun Xing "EventCode": "0x54", 2565bedd1738SZhengjun Xing "EventName": "UNC_H_OSB_EDR.ALL", 2566bedd1738SZhengjun Xing "PerPkg": "1", 2567667433c4SIan Rogers "PublicDescription": "Counts the number of transactions that broadcast snoop due to OSB, but found clean data in memory and was able to do early data return", 2568bedd1738SZhengjun Xing "UMask": "0x1", 2569bedd1738SZhengjun Xing "Unit": "HA" 2570bedd1738SZhengjun Xing }, 2571bedd1738SZhengjun Xing { 2572bedd1738SZhengjun Xing "BriefDescription": "OSB Early Data Return; Reads to Local I", 257311c2302cSIan Rogers "Counter": "0,1,2,3", 2574bedd1738SZhengjun Xing "EventCode": "0x54", 2575bedd1738SZhengjun Xing "EventName": "UNC_H_OSB_EDR.READS_LOCAL_I", 2576bedd1738SZhengjun Xing "PerPkg": "1", 2577667433c4SIan Rogers "PublicDescription": "Counts the number of transactions that broadcast snoop due to OSB, but found clean data in memory and was able to do early data return", 2578bedd1738SZhengjun Xing "UMask": "0x2", 2579bedd1738SZhengjun Xing "Unit": "HA" 2580bedd1738SZhengjun Xing }, 2581bedd1738SZhengjun Xing { 2582bedd1738SZhengjun Xing "BriefDescription": "OSB Early Data Return; Reads to Local S", 258311c2302cSIan Rogers "Counter": "0,1,2,3", 2584bedd1738SZhengjun Xing "EventCode": "0x54", 2585bedd1738SZhengjun Xing "EventName": "UNC_H_OSB_EDR.READS_LOCAL_S", 2586bedd1738SZhengjun Xing "PerPkg": "1", 2587667433c4SIan Rogers "PublicDescription": "Counts the number of transactions that broadcast snoop due to OSB, but found clean data in memory and was able to do early data return", 2588bedd1738SZhengjun Xing "UMask": "0x8", 2589bedd1738SZhengjun Xing "Unit": "HA" 2590bedd1738SZhengjun Xing }, 2591bedd1738SZhengjun Xing { 2592667433c4SIan Rogers "BriefDescription": "OSB Early Data Return; Reads to Remote I", 259311c2302cSIan Rogers "Counter": "0,1,2,3", 2594bedd1738SZhengjun Xing "EventCode": "0x54", 2595667433c4SIan Rogers "EventName": "UNC_H_OSB_EDR.READS_REMOTE_I", 2596bedd1738SZhengjun Xing "PerPkg": "1", 2597667433c4SIan Rogers "PublicDescription": "Counts the number of transactions that broadcast snoop due to OSB, but found clean data in memory and was able to do early data return", 25987003f00fSAndi Kleen "UMask": "0x4", 25997003f00fSAndi Kleen "Unit": "HA" 26007003f00fSAndi Kleen }, 26017003f00fSAndi Kleen { 2602667433c4SIan Rogers "BriefDescription": "OSB Early Data Return; Reads to Remote S", 260311c2302cSIan Rogers "Counter": "0,1,2,3", 2604667433c4SIan Rogers "EventCode": "0x54", 2605667433c4SIan Rogers "EventName": "UNC_H_OSB_EDR.READS_REMOTE_S", 26067003f00fSAndi Kleen "PerPkg": "1", 2607667433c4SIan Rogers "PublicDescription": "Counts the number of transactions that broadcast snoop due to OSB, but found clean data in memory and was able to do early data return", 2608667433c4SIan Rogers "UMask": "0x10", 26097003f00fSAndi Kleen "Unit": "HA" 26107003f00fSAndi Kleen }, 26117003f00fSAndi Kleen { 2612bedd1738SZhengjun Xing "BriefDescription": "Read and Write Requests; Local InvItoEs", 261311c2302cSIan Rogers "Counter": "0,1,2,3", 2614bedd1738SZhengjun Xing "EventCode": "0x1", 2615bedd1738SZhengjun Xing "EventName": "UNC_H_REQUESTS.INVITOE_LOCAL", 26167003f00fSAndi Kleen "PerPkg": "1", 2617667433c4SIan Rogers "PublicDescription": "Counts the total number of read requests made into the Home Agent. Reads include all read opcodes (including RFO). Writes include all writes (streaming, evictions, HitM, etc).; This filter includes only InvItoEs coming from the local socket.", 2618bedd1738SZhengjun Xing "UMask": "0x10", 26197003f00fSAndi Kleen "Unit": "HA" 26207003f00fSAndi Kleen }, 26217003f00fSAndi Kleen { 2622bedd1738SZhengjun Xing "BriefDescription": "Read and Write Requests; Remote InvItoEs", 262311c2302cSIan Rogers "Counter": "0,1,2,3", 2624bedd1738SZhengjun Xing "EventCode": "0x1", 2625bedd1738SZhengjun Xing "EventName": "UNC_H_REQUESTS.INVITOE_REMOTE", 26267003f00fSAndi Kleen "PerPkg": "1", 2627667433c4SIan Rogers "PublicDescription": "Counts the total number of read requests made into the Home Agent. Reads include all read opcodes (including RFO). Writes include all writes (streaming, evictions, HitM, etc).; This filter includes only InvItoEs coming from remote sockets.", 26287003f00fSAndi Kleen "UMask": "0x20", 26297003f00fSAndi Kleen "Unit": "HA" 26307003f00fSAndi Kleen }, 26317003f00fSAndi Kleen { 2632667433c4SIan Rogers "BriefDescription": "Read and Write Requests; Reads", 263311c2302cSIan Rogers "Counter": "0,1,2,3", 2634667433c4SIan Rogers "EventCode": "0x1", 2635667433c4SIan Rogers "EventName": "UNC_H_REQUESTS.READS", 2636bedd1738SZhengjun Xing "PerPkg": "1", 2637667433c4SIan Rogers "PublicDescription": "Counts the total number of read requests made into the Home Agent. Reads include all read opcodes (including RFO). Writes include all writes (streaming, evictions, HitM, etc).; Incoming ead requests. This is a good proxy for LLC Read Misses (including RFOs).", 2638667433c4SIan Rogers "UMask": "0x3", 2639667433c4SIan Rogers "Unit": "HA" 2640667433c4SIan Rogers }, 2641667433c4SIan Rogers { 2642667433c4SIan Rogers "BriefDescription": "Read and Write Requests; Local Reads", 264311c2302cSIan Rogers "Counter": "0,1,2,3", 2644667433c4SIan Rogers "EventCode": "0x1", 2645667433c4SIan Rogers "EventName": "UNC_H_REQUESTS.READS_LOCAL", 2646667433c4SIan Rogers "PerPkg": "1", 2647667433c4SIan Rogers "PublicDescription": "Counts the total number of read requests made into the Home Agent. Reads include all read opcodes (including RFO). Writes include all writes (streaming, evictions, HitM, etc).; This filter includes only read requests coming from the local socket. This is a good proxy for LLC Read Misses (including RFOs) from the local socket.", 2648bedd1738SZhengjun Xing "UMask": "0x1", 2649bedd1738SZhengjun Xing "Unit": "HA" 2650bedd1738SZhengjun Xing }, 2651bedd1738SZhengjun Xing { 2652667433c4SIan Rogers "BriefDescription": "Read and Write Requests; Remote Reads", 265311c2302cSIan Rogers "Counter": "0,1,2,3", 2654667433c4SIan Rogers "EventCode": "0x1", 2655667433c4SIan Rogers "EventName": "UNC_H_REQUESTS.READS_REMOTE", 2656bedd1738SZhengjun Xing "PerPkg": "1", 2657667433c4SIan Rogers "PublicDescription": "Counts the total number of read requests made into the Home Agent. Reads include all read opcodes (including RFO). Writes include all writes (streaming, evictions, HitM, etc).; This filter includes only read requests coming from the remote socket. This is a good proxy for LLC Read Misses (including RFOs) from the remote socket.", 2658bedd1738SZhengjun Xing "UMask": "0x2", 2659bedd1738SZhengjun Xing "Unit": "HA" 2660bedd1738SZhengjun Xing }, 2661bedd1738SZhengjun Xing { 2662667433c4SIan Rogers "BriefDescription": "Read and Write Requests; Writes", 266311c2302cSIan Rogers "Counter": "0,1,2,3", 2664667433c4SIan Rogers "EventCode": "0x1", 2665667433c4SIan Rogers "EventName": "UNC_H_REQUESTS.WRITES", 2666667433c4SIan Rogers "PerPkg": "1", 2667667433c4SIan Rogers "PublicDescription": "Counts the total number of read requests made into the Home Agent. Reads include all read opcodes (including RFO). Writes include all writes (streaming, evictions, HitM, etc).; Incoming write requests.", 2668667433c4SIan Rogers "UMask": "0xc", 2669667433c4SIan Rogers "Unit": "HA" 2670667433c4SIan Rogers }, 2671667433c4SIan Rogers { 2672667433c4SIan Rogers "BriefDescription": "Read and Write Requests; Local Writes", 267311c2302cSIan Rogers "Counter": "0,1,2,3", 2674667433c4SIan Rogers "EventCode": "0x1", 2675667433c4SIan Rogers "EventName": "UNC_H_REQUESTS.WRITES_LOCAL", 2676667433c4SIan Rogers "PerPkg": "1", 2677667433c4SIan Rogers "PublicDescription": "Counts the total number of read requests made into the Home Agent. Reads include all read opcodes (including RFO). Writes include all writes (streaming, evictions, HitM, etc).; This filter includes only writes coming from the local socket.", 2678667433c4SIan Rogers "UMask": "0x4", 2679667433c4SIan Rogers "Unit": "HA" 2680667433c4SIan Rogers }, 2681667433c4SIan Rogers { 2682667433c4SIan Rogers "BriefDescription": "Read and Write Requests; Remote Writes", 268311c2302cSIan Rogers "Counter": "0,1,2,3", 2684667433c4SIan Rogers "EventCode": "0x1", 2685667433c4SIan Rogers "EventName": "UNC_H_REQUESTS.WRITES_REMOTE", 2686667433c4SIan Rogers "PerPkg": "1", 2687667433c4SIan Rogers "PublicDescription": "Counts the total number of read requests made into the Home Agent. Reads include all read opcodes (including RFO). Writes include all writes (streaming, evictions, HitM, etc).; This filter includes only writes coming from remote sockets.", 2688667433c4SIan Rogers "UMask": "0x8", 2689667433c4SIan Rogers "Unit": "HA" 2690667433c4SIan Rogers }, 2691667433c4SIan Rogers { 2692667433c4SIan Rogers "BriefDescription": "HA AD Ring in Use; Counterclockwise", 269311c2302cSIan Rogers "Counter": "0,1,2,3", 2694667433c4SIan Rogers "EventCode": "0x3E", 2695667433c4SIan Rogers "EventName": "UNC_H_RING_AD_USED.CCW", 2696667433c4SIan Rogers "PerPkg": "1", 2697667433c4SIan Rogers "PublicDescription": "Counts the number of cycles that the AD ring is being used at this ring stop. This includes when packets are passing by and when packets are being sunk, but does not include when packets are being sent from the ring stop.", 2698667433c4SIan Rogers "UMask": "0xc", 2699667433c4SIan Rogers "Unit": "HA" 2700667433c4SIan Rogers }, 2701667433c4SIan Rogers { 2702bedd1738SZhengjun Xing "BriefDescription": "HA AD Ring in Use; Counterclockwise and Even", 270311c2302cSIan Rogers "Counter": "0,1,2,3", 2704bedd1738SZhengjun Xing "EventCode": "0x3E", 2705bedd1738SZhengjun Xing "EventName": "UNC_H_RING_AD_USED.CCW_EVEN", 2706bedd1738SZhengjun Xing "PerPkg": "1", 2707667433c4SIan Rogers "PublicDescription": "Counts the number of cycles that the AD ring is being used at this ring stop. This includes when packets are passing by and when packets are being sunk, but does not include when packets are being sent from the ring stop.; Filters for the Counterclockwise and Even ring polarity.", 2708bedd1738SZhengjun Xing "UMask": "0x4", 2709bedd1738SZhengjun Xing "Unit": "HA" 2710bedd1738SZhengjun Xing }, 2711bedd1738SZhengjun Xing { 2712bedd1738SZhengjun Xing "BriefDescription": "HA AD Ring in Use; Counterclockwise and Odd", 271311c2302cSIan Rogers "Counter": "0,1,2,3", 2714bedd1738SZhengjun Xing "EventCode": "0x3E", 2715bedd1738SZhengjun Xing "EventName": "UNC_H_RING_AD_USED.CCW_ODD", 2716bedd1738SZhengjun Xing "PerPkg": "1", 2717667433c4SIan Rogers "PublicDescription": "Counts the number of cycles that the AD ring is being used at this ring stop. This includes when packets are passing by and when packets are being sunk, but does not include when packets are being sent from the ring stop.; Filters for the Counterclockwise and Odd ring polarity.", 2718bedd1738SZhengjun Xing "UMask": "0x8", 2719bedd1738SZhengjun Xing "Unit": "HA" 2720bedd1738SZhengjun Xing }, 2721bedd1738SZhengjun Xing { 2722bedd1738SZhengjun Xing "BriefDescription": "HA AD Ring in Use; Clockwise", 272311c2302cSIan Rogers "Counter": "0,1,2,3", 2724bedd1738SZhengjun Xing "EventCode": "0x3E", 2725bedd1738SZhengjun Xing "EventName": "UNC_H_RING_AD_USED.CW", 2726bedd1738SZhengjun Xing "PerPkg": "1", 2727667433c4SIan Rogers "PublicDescription": "Counts the number of cycles that the AD ring is being used at this ring stop. This includes when packets are passing by and when packets are being sunk, but does not include when packets are being sent from the ring stop.", 2728bedd1738SZhengjun Xing "UMask": "0x3", 2729bedd1738SZhengjun Xing "Unit": "HA" 2730bedd1738SZhengjun Xing }, 2731bedd1738SZhengjun Xing { 2732667433c4SIan Rogers "BriefDescription": "HA AD Ring in Use; Clockwise and Even", 273311c2302cSIan Rogers "Counter": "0,1,2,3", 2734bedd1738SZhengjun Xing "EventCode": "0x3E", 2735667433c4SIan Rogers "EventName": "UNC_H_RING_AD_USED.CW_EVEN", 2736bedd1738SZhengjun Xing "PerPkg": "1", 2737667433c4SIan Rogers "PublicDescription": "Counts the number of cycles that the AD ring is being used at this ring stop. This includes when packets are passing by and when packets are being sunk, but does not include when packets are being sent from the ring stop.; Filters for the Clockwise and Even ring polarity.", 2738bedd1738SZhengjun Xing "UMask": "0x1", 2739bedd1738SZhengjun Xing "Unit": "HA" 2740bedd1738SZhengjun Xing }, 2741bedd1738SZhengjun Xing { 2742667433c4SIan Rogers "BriefDescription": "HA AD Ring in Use; Clockwise and Odd", 274311c2302cSIan Rogers "Counter": "0,1,2,3", 2744667433c4SIan Rogers "EventCode": "0x3E", 2745667433c4SIan Rogers "EventName": "UNC_H_RING_AD_USED.CW_ODD", 2746bedd1738SZhengjun Xing "PerPkg": "1", 2747667433c4SIan Rogers "PublicDescription": "Counts the number of cycles that the AD ring is being used at this ring stop. This includes when packets are passing by and when packets are being sunk, but does not include when packets are being sent from the ring stop.; Filters for the Clockwise and Odd ring polarity.", 2748bedd1738SZhengjun Xing "UMask": "0x2", 2749bedd1738SZhengjun Xing "Unit": "HA" 2750bedd1738SZhengjun Xing }, 2751bedd1738SZhengjun Xing { 2752667433c4SIan Rogers "BriefDescription": "HA AK Ring in Use; Counterclockwise", 275311c2302cSIan Rogers "Counter": "0,1,2,3", 2754667433c4SIan Rogers "EventCode": "0x3F", 2755667433c4SIan Rogers "EventName": "UNC_H_RING_AK_USED.CCW", 2756667433c4SIan Rogers "PerPkg": "1", 2757667433c4SIan Rogers "PublicDescription": "Counts the number of cycles that the AK ring is being used at this ring stop. This includes when packets are passing by and when packets are being sunk, but does not include when packets are being sent from the ring stop.", 2758667433c4SIan Rogers "UMask": "0xc", 2759667433c4SIan Rogers "Unit": "HA" 2760667433c4SIan Rogers }, 2761667433c4SIan Rogers { 2762bedd1738SZhengjun Xing "BriefDescription": "HA AK Ring in Use; Counterclockwise and Even", 276311c2302cSIan Rogers "Counter": "0,1,2,3", 2764bedd1738SZhengjun Xing "EventCode": "0x3F", 2765bedd1738SZhengjun Xing "EventName": "UNC_H_RING_AK_USED.CCW_EVEN", 2766bedd1738SZhengjun Xing "PerPkg": "1", 2767667433c4SIan Rogers "PublicDescription": "Counts the number of cycles that the AK ring is being used at this ring stop. This includes when packets are passing by and when packets are being sunk, but does not include when packets are being sent from the ring stop.; Filters for the Counterclockwise and Even ring polarity.", 2768bedd1738SZhengjun Xing "UMask": "0x4", 2769bedd1738SZhengjun Xing "Unit": "HA" 2770bedd1738SZhengjun Xing }, 2771bedd1738SZhengjun Xing { 2772bedd1738SZhengjun Xing "BriefDescription": "HA AK Ring in Use; Counterclockwise and Odd", 277311c2302cSIan Rogers "Counter": "0,1,2,3", 2774bedd1738SZhengjun Xing "EventCode": "0x3F", 2775bedd1738SZhengjun Xing "EventName": "UNC_H_RING_AK_USED.CCW_ODD", 2776bedd1738SZhengjun Xing "PerPkg": "1", 2777667433c4SIan Rogers "PublicDescription": "Counts the number of cycles that the AK ring is being used at this ring stop. This includes when packets are passing by and when packets are being sunk, but does not include when packets are being sent from the ring stop.; Filters for the Counterclockwise and Odd ring polarity.", 2778bedd1738SZhengjun Xing "UMask": "0x8", 2779bedd1738SZhengjun Xing "Unit": "HA" 2780bedd1738SZhengjun Xing }, 2781bedd1738SZhengjun Xing { 2782bedd1738SZhengjun Xing "BriefDescription": "HA AK Ring in Use; Clockwise", 278311c2302cSIan Rogers "Counter": "0,1,2,3", 2784bedd1738SZhengjun Xing "EventCode": "0x3F", 2785bedd1738SZhengjun Xing "EventName": "UNC_H_RING_AK_USED.CW", 2786bedd1738SZhengjun Xing "PerPkg": "1", 2787667433c4SIan Rogers "PublicDescription": "Counts the number of cycles that the AK ring is being used at this ring stop. This includes when packets are passing by and when packets are being sunk, but does not include when packets are being sent from the ring stop.", 2788bedd1738SZhengjun Xing "UMask": "0x3", 2789bedd1738SZhengjun Xing "Unit": "HA" 2790bedd1738SZhengjun Xing }, 2791bedd1738SZhengjun Xing { 2792667433c4SIan Rogers "BriefDescription": "HA AK Ring in Use; Clockwise and Even", 279311c2302cSIan Rogers "Counter": "0,1,2,3", 2794bedd1738SZhengjun Xing "EventCode": "0x3F", 2795667433c4SIan Rogers "EventName": "UNC_H_RING_AK_USED.CW_EVEN", 2796bedd1738SZhengjun Xing "PerPkg": "1", 2797667433c4SIan Rogers "PublicDescription": "Counts the number of cycles that the AK ring is being used at this ring stop. This includes when packets are passing by and when packets are being sunk, but does not include when packets are being sent from the ring stop.; Filters for the Clockwise and Even ring polarity.", 2798bedd1738SZhengjun Xing "UMask": "0x1", 2799bedd1738SZhengjun Xing "Unit": "HA" 2800bedd1738SZhengjun Xing }, 2801bedd1738SZhengjun Xing { 2802667433c4SIan Rogers "BriefDescription": "HA AK Ring in Use; Clockwise and Odd", 280311c2302cSIan Rogers "Counter": "0,1,2,3", 2804667433c4SIan Rogers "EventCode": "0x3F", 2805667433c4SIan Rogers "EventName": "UNC_H_RING_AK_USED.CW_ODD", 2806bedd1738SZhengjun Xing "PerPkg": "1", 2807667433c4SIan Rogers "PublicDescription": "Counts the number of cycles that the AK ring is being used at this ring stop. This includes when packets are passing by and when packets are being sunk, but does not include when packets are being sent from the ring stop.; Filters for the Clockwise and Odd ring polarity.", 2808bedd1738SZhengjun Xing "UMask": "0x2", 2809bedd1738SZhengjun Xing "Unit": "HA" 2810bedd1738SZhengjun Xing }, 2811bedd1738SZhengjun Xing { 2812667433c4SIan Rogers "BriefDescription": "HA BL Ring in Use; Counterclockwise", 281311c2302cSIan Rogers "Counter": "0,1,2,3", 2814667433c4SIan Rogers "EventCode": "0x40", 2815667433c4SIan Rogers "EventName": "UNC_H_RING_BL_USED.CCW", 2816667433c4SIan Rogers "PerPkg": "1", 2817667433c4SIan Rogers "PublicDescription": "Counts the number of cycles that the BL ring is being used at this ring stop. This includes when packets are passing by and when packets are being sunk, but does not include when packets are being sent from the ring stop.", 2818667433c4SIan Rogers "UMask": "0xc", 2819667433c4SIan Rogers "Unit": "HA" 2820667433c4SIan Rogers }, 2821667433c4SIan Rogers { 2822bedd1738SZhengjun Xing "BriefDescription": "HA BL Ring in Use; Counterclockwise and Even", 282311c2302cSIan Rogers "Counter": "0,1,2,3", 2824bedd1738SZhengjun Xing "EventCode": "0x40", 2825bedd1738SZhengjun Xing "EventName": "UNC_H_RING_BL_USED.CCW_EVEN", 2826bedd1738SZhengjun Xing "PerPkg": "1", 2827667433c4SIan Rogers "PublicDescription": "Counts the number of cycles that the BL ring is being used at this ring stop. This includes when packets are passing by and when packets are being sunk, but does not include when packets are being sent from the ring stop.; Filters for the Counterclockwise and Even ring polarity.", 2828bedd1738SZhengjun Xing "UMask": "0x4", 2829bedd1738SZhengjun Xing "Unit": "HA" 2830bedd1738SZhengjun Xing }, 2831bedd1738SZhengjun Xing { 2832bedd1738SZhengjun Xing "BriefDescription": "HA BL Ring in Use; Counterclockwise and Odd", 283311c2302cSIan Rogers "Counter": "0,1,2,3", 2834bedd1738SZhengjun Xing "EventCode": "0x40", 2835bedd1738SZhengjun Xing "EventName": "UNC_H_RING_BL_USED.CCW_ODD", 2836bedd1738SZhengjun Xing "PerPkg": "1", 2837667433c4SIan Rogers "PublicDescription": "Counts the number of cycles that the BL ring is being used at this ring stop. This includes when packets are passing by and when packets are being sunk, but does not include when packets are being sent from the ring stop.; Filters for the Counterclockwise and Odd ring polarity.", 2838bedd1738SZhengjun Xing "UMask": "0x8", 2839bedd1738SZhengjun Xing "Unit": "HA" 2840bedd1738SZhengjun Xing }, 2841bedd1738SZhengjun Xing { 2842bedd1738SZhengjun Xing "BriefDescription": "HA BL Ring in Use; Clockwise", 284311c2302cSIan Rogers "Counter": "0,1,2,3", 2844bedd1738SZhengjun Xing "EventCode": "0x40", 2845bedd1738SZhengjun Xing "EventName": "UNC_H_RING_BL_USED.CW", 2846bedd1738SZhengjun Xing "PerPkg": "1", 2847667433c4SIan Rogers "PublicDescription": "Counts the number of cycles that the BL ring is being used at this ring stop. This includes when packets are passing by and when packets are being sunk, but does not include when packets are being sent from the ring stop.", 2848bedd1738SZhengjun Xing "UMask": "0x3", 2849bedd1738SZhengjun Xing "Unit": "HA" 2850bedd1738SZhengjun Xing }, 2851bedd1738SZhengjun Xing { 2852667433c4SIan Rogers "BriefDescription": "HA BL Ring in Use; Clockwise and Even", 285311c2302cSIan Rogers "Counter": "0,1,2,3", 2854bedd1738SZhengjun Xing "EventCode": "0x40", 2855667433c4SIan Rogers "EventName": "UNC_H_RING_BL_USED.CW_EVEN", 2856bedd1738SZhengjun Xing "PerPkg": "1", 2857667433c4SIan Rogers "PublicDescription": "Counts the number of cycles that the BL ring is being used at this ring stop. This includes when packets are passing by and when packets are being sunk, but does not include when packets are being sent from the ring stop.; Filters for the Clockwise and Even ring polarity.", 2858667433c4SIan Rogers "UMask": "0x1", 2859667433c4SIan Rogers "Unit": "HA" 2860667433c4SIan Rogers }, 2861667433c4SIan Rogers { 2862667433c4SIan Rogers "BriefDescription": "HA BL Ring in Use; Clockwise and Odd", 286311c2302cSIan Rogers "Counter": "0,1,2,3", 2864667433c4SIan Rogers "EventCode": "0x40", 2865667433c4SIan Rogers "EventName": "UNC_H_RING_BL_USED.CW_ODD", 2866667433c4SIan Rogers "PerPkg": "1", 2867667433c4SIan Rogers "PublicDescription": "Counts the number of cycles that the BL ring is being used at this ring stop. This includes when packets are passing by and when packets are being sunk, but does not include when packets are being sent from the ring stop.; Filters for the Clockwise and Odd ring polarity.", 2868667433c4SIan Rogers "UMask": "0x2", 2869bedd1738SZhengjun Xing "Unit": "HA" 2870bedd1738SZhengjun Xing }, 2871bedd1738SZhengjun Xing { 2872bedd1738SZhengjun Xing "BriefDescription": "iMC RPQ Credits Empty - Regular; Channel 0", 287311c2302cSIan Rogers "Counter": "0,1,2,3", 2874bedd1738SZhengjun Xing "EventCode": "0x15", 2875bedd1738SZhengjun Xing "EventName": "UNC_H_RPQ_CYCLES_NO_REG_CREDITS.CHN0", 2876bedd1738SZhengjun Xing "PerPkg": "1", 2877*be67d89fSIan Rogers "PublicDescription": "Counts the number of cycles when there are no regular credits available for posting reads from the HA into the iMC. In order to send reads into the memory controller, the HA must first acquire a credit for the iMC's RPQ (read pending queue). This queue is broken into regular credits/buffers that are used by general reads, and special requests such as ISOCH reads. This count only tracks the regular credits Common high bandwidth workloads should be able to make use of all of the regular buffers, but it will be difficult (and uncommon) to make use of both the regular and special buffers at the same time. One can filter based on the memory controller channel. One or more channels can be tracked at a given time.; Filter for memory controller channel 0 only.", 2878bedd1738SZhengjun Xing "UMask": "0x1", 2879bedd1738SZhengjun Xing "Unit": "HA" 2880bedd1738SZhengjun Xing }, 2881bedd1738SZhengjun Xing { 2882bedd1738SZhengjun Xing "BriefDescription": "iMC RPQ Credits Empty - Regular; Channel 1", 288311c2302cSIan Rogers "Counter": "0,1,2,3", 2884bedd1738SZhengjun Xing "EventCode": "0x15", 2885bedd1738SZhengjun Xing "EventName": "UNC_H_RPQ_CYCLES_NO_REG_CREDITS.CHN1", 2886bedd1738SZhengjun Xing "PerPkg": "1", 2887*be67d89fSIan Rogers "PublicDescription": "Counts the number of cycles when there are no regular credits available for posting reads from the HA into the iMC. In order to send reads into the memory controller, the HA must first acquire a credit for the iMC's RPQ (read pending queue). This queue is broken into regular credits/buffers that are used by general reads, and special requests such as ISOCH reads. This count only tracks the regular credits Common high bandwidth workloads should be able to make use of all of the regular buffers, but it will be difficult (and uncommon) to make use of both the regular and special buffers at the same time. One can filter based on the memory controller channel. One or more channels can be tracked at a given time.; Filter for memory controller channel 1 only.", 2888bedd1738SZhengjun Xing "UMask": "0x2", 2889bedd1738SZhengjun Xing "Unit": "HA" 2890bedd1738SZhengjun Xing }, 2891bedd1738SZhengjun Xing { 2892bedd1738SZhengjun Xing "BriefDescription": "iMC RPQ Credits Empty - Regular; Channel 2", 289311c2302cSIan Rogers "Counter": "0,1,2,3", 2894bedd1738SZhengjun Xing "EventCode": "0x15", 2895bedd1738SZhengjun Xing "EventName": "UNC_H_RPQ_CYCLES_NO_REG_CREDITS.CHN2", 2896bedd1738SZhengjun Xing "PerPkg": "1", 2897*be67d89fSIan Rogers "PublicDescription": "Counts the number of cycles when there are no regular credits available for posting reads from the HA into the iMC. In order to send reads into the memory controller, the HA must first acquire a credit for the iMC's RPQ (read pending queue). This queue is broken into regular credits/buffers that are used by general reads, and special requests such as ISOCH reads. This count only tracks the regular credits Common high bandwidth workloads should be able to make use of all of the regular buffers, but it will be difficult (and uncommon) to make use of both the regular and special buffers at the same time. One can filter based on the memory controller channel. One or more channels can be tracked at a given time.; Filter for memory controller channel 2 only.", 2898bedd1738SZhengjun Xing "UMask": "0x4", 2899bedd1738SZhengjun Xing "Unit": "HA" 2900bedd1738SZhengjun Xing }, 2901bedd1738SZhengjun Xing { 2902bedd1738SZhengjun Xing "BriefDescription": "iMC RPQ Credits Empty - Regular; Channel 3", 290311c2302cSIan Rogers "Counter": "0,1,2,3", 2904bedd1738SZhengjun Xing "EventCode": "0x15", 2905bedd1738SZhengjun Xing "EventName": "UNC_H_RPQ_CYCLES_NO_REG_CREDITS.CHN3", 2906bedd1738SZhengjun Xing "PerPkg": "1", 2907*be67d89fSIan Rogers "PublicDescription": "Counts the number of cycles when there are no regular credits available for posting reads from the HA into the iMC. In order to send reads into the memory controller, the HA must first acquire a credit for the iMC's RPQ (read pending queue). This queue is broken into regular credits/buffers that are used by general reads, and special requests such as ISOCH reads. This count only tracks the regular credits Common high bandwidth workloads should be able to make use of all of the regular buffers, but it will be difficult (and uncommon) to make use of both the regular and special buffers at the same time. One can filter based on the memory controller channel. One or more channels can be tracked at a given time.; Filter for memory controller channel 3 only.", 2908bedd1738SZhengjun Xing "UMask": "0x8", 2909bedd1738SZhengjun Xing "Unit": "HA" 2910bedd1738SZhengjun Xing }, 2911bedd1738SZhengjun Xing { 2912bedd1738SZhengjun Xing "BriefDescription": "iMC RPQ Credits Empty - Special; Channel 0", 291311c2302cSIan Rogers "Counter": "0,1,2,3", 2914bedd1738SZhengjun Xing "EventCode": "0x16", 2915bedd1738SZhengjun Xing "EventName": "UNC_H_RPQ_CYCLES_NO_SPEC_CREDITS.CHN0", 2916bedd1738SZhengjun Xing "PerPkg": "1", 2917667433c4SIan Rogers "PublicDescription": "Counts the number of cycles when there are no special credits available for posting reads from the HA into the iMC. In order to send reads into the memory controller, the HA must first acquire a credit for the iMC's RPQ (read pending queue). This queue is broken into regular credits/buffers that are used by general reads, and special requests such as ISOCH reads. This count only tracks the special credits. This statistic is generally not interesting for general IA workloads, but may be of interest for understanding the characteristics of systems using ISOCH. One can filter based on the memory controller channel. One or more channels can be tracked at a given time.; Filter for memory controller channel 0 only.", 2918bedd1738SZhengjun Xing "UMask": "0x1", 2919bedd1738SZhengjun Xing "Unit": "HA" 2920bedd1738SZhengjun Xing }, 2921bedd1738SZhengjun Xing { 2922bedd1738SZhengjun Xing "BriefDescription": "iMC RPQ Credits Empty - Special; Channel 1", 292311c2302cSIan Rogers "Counter": "0,1,2,3", 2924bedd1738SZhengjun Xing "EventCode": "0x16", 2925bedd1738SZhengjun Xing "EventName": "UNC_H_RPQ_CYCLES_NO_SPEC_CREDITS.CHN1", 2926bedd1738SZhengjun Xing "PerPkg": "1", 2927667433c4SIan Rogers "PublicDescription": "Counts the number of cycles when there are no special credits available for posting reads from the HA into the iMC. In order to send reads into the memory controller, the HA must first acquire a credit for the iMC's RPQ (read pending queue). This queue is broken into regular credits/buffers that are used by general reads, and special requests such as ISOCH reads. This count only tracks the special credits. This statistic is generally not interesting for general IA workloads, but may be of interest for understanding the characteristics of systems using ISOCH. One can filter based on the memory controller channel. One or more channels can be tracked at a given time.; Filter for memory controller channel 1 only.", 2928bedd1738SZhengjun Xing "UMask": "0x2", 2929bedd1738SZhengjun Xing "Unit": "HA" 2930bedd1738SZhengjun Xing }, 2931bedd1738SZhengjun Xing { 2932bedd1738SZhengjun Xing "BriefDescription": "iMC RPQ Credits Empty - Special; Channel 2", 293311c2302cSIan Rogers "Counter": "0,1,2,3", 2934bedd1738SZhengjun Xing "EventCode": "0x16", 2935bedd1738SZhengjun Xing "EventName": "UNC_H_RPQ_CYCLES_NO_SPEC_CREDITS.CHN2", 2936bedd1738SZhengjun Xing "PerPkg": "1", 2937667433c4SIan Rogers "PublicDescription": "Counts the number of cycles when there are no special credits available for posting reads from the HA into the iMC. In order to send reads into the memory controller, the HA must first acquire a credit for the iMC's RPQ (read pending queue). This queue is broken into regular credits/buffers that are used by general reads, and special requests such as ISOCH reads. This count only tracks the special credits. This statistic is generally not interesting for general IA workloads, but may be of interest for understanding the characteristics of systems using ISOCH. One can filter based on the memory controller channel. One or more channels can be tracked at a given time.; Filter for memory controller channel 2 only.", 2938bedd1738SZhengjun Xing "UMask": "0x4", 2939bedd1738SZhengjun Xing "Unit": "HA" 2940bedd1738SZhengjun Xing }, 2941bedd1738SZhengjun Xing { 2942bedd1738SZhengjun Xing "BriefDescription": "iMC RPQ Credits Empty - Special; Channel 3", 294311c2302cSIan Rogers "Counter": "0,1,2,3", 2944bedd1738SZhengjun Xing "EventCode": "0x16", 2945bedd1738SZhengjun Xing "EventName": "UNC_H_RPQ_CYCLES_NO_SPEC_CREDITS.CHN3", 2946bedd1738SZhengjun Xing "PerPkg": "1", 2947667433c4SIan Rogers "PublicDescription": "Counts the number of cycles when there are no special credits available for posting reads from the HA into the iMC. In order to send reads into the memory controller, the HA must first acquire a credit for the iMC's RPQ (read pending queue). This queue is broken into regular credits/buffers that are used by general reads, and special requests such as ISOCH reads. This count only tracks the special credits. This statistic is generally not interesting for general IA workloads, but may be of interest for understanding the characteristics of systems using ISOCH. One can filter based on the memory controller channel. One or more channels can be tracked at a given time.; Filter for memory controller channel 3 only.", 2948bedd1738SZhengjun Xing "UMask": "0x8", 2949bedd1738SZhengjun Xing "Unit": "HA" 2950bedd1738SZhengjun Xing }, 2951bedd1738SZhengjun Xing { 2952bedd1738SZhengjun Xing "BriefDescription": "SBo0 Credits Acquired; For AD Ring", 295311c2302cSIan Rogers "Counter": "0,1,2,3", 2954bedd1738SZhengjun Xing "EventCode": "0x68", 2955bedd1738SZhengjun Xing "EventName": "UNC_H_SBO0_CREDITS_ACQUIRED.AD", 2956bedd1738SZhengjun Xing "PerPkg": "1", 2957667433c4SIan Rogers "PublicDescription": "Number of Sbo 0 credits acquired in a given cycle, per ring.", 2958bedd1738SZhengjun Xing "UMask": "0x1", 2959bedd1738SZhengjun Xing "Unit": "HA" 2960bedd1738SZhengjun Xing }, 2961bedd1738SZhengjun Xing { 2962bedd1738SZhengjun Xing "BriefDescription": "SBo0 Credits Acquired; For BL Ring", 296311c2302cSIan Rogers "Counter": "0,1,2,3", 2964bedd1738SZhengjun Xing "EventCode": "0x68", 2965bedd1738SZhengjun Xing "EventName": "UNC_H_SBO0_CREDITS_ACQUIRED.BL", 2966bedd1738SZhengjun Xing "PerPkg": "1", 2967667433c4SIan Rogers "PublicDescription": "Number of Sbo 0 credits acquired in a given cycle, per ring.", 2968bedd1738SZhengjun Xing "UMask": "0x2", 2969bedd1738SZhengjun Xing "Unit": "HA" 2970bedd1738SZhengjun Xing }, 2971bedd1738SZhengjun Xing { 2972bedd1738SZhengjun Xing "BriefDescription": "SBo0 Credits Occupancy; For AD Ring", 297311c2302cSIan Rogers "Counter": "0,1,2,3", 2974bedd1738SZhengjun Xing "EventCode": "0x6A", 2975bedd1738SZhengjun Xing "EventName": "UNC_H_SBO0_CREDIT_OCCUPANCY.AD", 2976bedd1738SZhengjun Xing "PerPkg": "1", 2977667433c4SIan Rogers "PublicDescription": "Number of Sbo 0 credits in use in a given cycle, per ring.", 2978bedd1738SZhengjun Xing "UMask": "0x1", 2979bedd1738SZhengjun Xing "Unit": "HA" 2980bedd1738SZhengjun Xing }, 2981bedd1738SZhengjun Xing { 2982bedd1738SZhengjun Xing "BriefDescription": "SBo0 Credits Occupancy; For BL Ring", 298311c2302cSIan Rogers "Counter": "0,1,2,3", 2984bedd1738SZhengjun Xing "EventCode": "0x6A", 2985bedd1738SZhengjun Xing "EventName": "UNC_H_SBO0_CREDIT_OCCUPANCY.BL", 2986bedd1738SZhengjun Xing "PerPkg": "1", 2987667433c4SIan Rogers "PublicDescription": "Number of Sbo 0 credits in use in a given cycle, per ring.", 2988bedd1738SZhengjun Xing "UMask": "0x2", 2989bedd1738SZhengjun Xing "Unit": "HA" 2990bedd1738SZhengjun Xing }, 2991bedd1738SZhengjun Xing { 2992bedd1738SZhengjun Xing "BriefDescription": "SBo1 Credits Acquired; For AD Ring", 299311c2302cSIan Rogers "Counter": "0,1,2,3", 2994bedd1738SZhengjun Xing "EventCode": "0x69", 2995bedd1738SZhengjun Xing "EventName": "UNC_H_SBO1_CREDITS_ACQUIRED.AD", 2996bedd1738SZhengjun Xing "PerPkg": "1", 2997667433c4SIan Rogers "PublicDescription": "Number of Sbo 1 credits acquired in a given cycle, per ring.", 2998bedd1738SZhengjun Xing "UMask": "0x1", 2999bedd1738SZhengjun Xing "Unit": "HA" 3000bedd1738SZhengjun Xing }, 3001bedd1738SZhengjun Xing { 3002bedd1738SZhengjun Xing "BriefDescription": "SBo1 Credits Acquired; For BL Ring", 300311c2302cSIan Rogers "Counter": "0,1,2,3", 3004bedd1738SZhengjun Xing "EventCode": "0x69", 3005bedd1738SZhengjun Xing "EventName": "UNC_H_SBO1_CREDITS_ACQUIRED.BL", 3006bedd1738SZhengjun Xing "PerPkg": "1", 3007667433c4SIan Rogers "PublicDescription": "Number of Sbo 1 credits acquired in a given cycle, per ring.", 3008bedd1738SZhengjun Xing "UMask": "0x2", 3009bedd1738SZhengjun Xing "Unit": "HA" 3010bedd1738SZhengjun Xing }, 3011bedd1738SZhengjun Xing { 3012bedd1738SZhengjun Xing "BriefDescription": "SBo1 Credits Occupancy; For AD Ring", 301311c2302cSIan Rogers "Counter": "0,1,2,3", 3014bedd1738SZhengjun Xing "EventCode": "0x6B", 3015bedd1738SZhengjun Xing "EventName": "UNC_H_SBO1_CREDIT_OCCUPANCY.AD", 3016bedd1738SZhengjun Xing "PerPkg": "1", 3017667433c4SIan Rogers "PublicDescription": "Number of Sbo 1 credits in use in a given cycle, per ring.", 3018bedd1738SZhengjun Xing "UMask": "0x1", 3019bedd1738SZhengjun Xing "Unit": "HA" 3020bedd1738SZhengjun Xing }, 3021bedd1738SZhengjun Xing { 3022bedd1738SZhengjun Xing "BriefDescription": "SBo1 Credits Occupancy; For BL Ring", 302311c2302cSIan Rogers "Counter": "0,1,2,3", 3024bedd1738SZhengjun Xing "EventCode": "0x6B", 3025bedd1738SZhengjun Xing "EventName": "UNC_H_SBO1_CREDIT_OCCUPANCY.BL", 3026bedd1738SZhengjun Xing "PerPkg": "1", 3027667433c4SIan Rogers "PublicDescription": "Number of Sbo 1 credits in use in a given cycle, per ring.", 3028bedd1738SZhengjun Xing "UMask": "0x2", 3029bedd1738SZhengjun Xing "Unit": "HA" 3030bedd1738SZhengjun Xing }, 3031bedd1738SZhengjun Xing { 3032bedd1738SZhengjun Xing "BriefDescription": "Data beat the Snoop Responses; Local Requests", 303311c2302cSIan Rogers "Counter": "0,1,2,3", 3034bedd1738SZhengjun Xing "EventCode": "0xA", 3035bedd1738SZhengjun Xing "EventName": "UNC_H_SNOOPS_RSP_AFTER_DATA.LOCAL", 3036bedd1738SZhengjun Xing "PerPkg": "1", 3037667433c4SIan Rogers "PublicDescription": "Counts the number of reads when the snoop was on the critical path to the data return.; This filter includes only requests coming from the local socket.", 3038bedd1738SZhengjun Xing "UMask": "0x1", 3039bedd1738SZhengjun Xing "Unit": "HA" 3040bedd1738SZhengjun Xing }, 3041bedd1738SZhengjun Xing { 3042bedd1738SZhengjun Xing "BriefDescription": "Data beat the Snoop Responses; Remote Requests", 304311c2302cSIan Rogers "Counter": "0,1,2,3", 3044bedd1738SZhengjun Xing "EventCode": "0xA", 3045bedd1738SZhengjun Xing "EventName": "UNC_H_SNOOPS_RSP_AFTER_DATA.REMOTE", 3046bedd1738SZhengjun Xing "PerPkg": "1", 3047667433c4SIan Rogers "PublicDescription": "Counts the number of reads when the snoop was on the critical path to the data return.; This filter includes only requests coming from remote sockets.", 3048bedd1738SZhengjun Xing "UMask": "0x2", 3049bedd1738SZhengjun Xing "Unit": "HA" 3050bedd1738SZhengjun Xing }, 3051bedd1738SZhengjun Xing { 3052bedd1738SZhengjun Xing "BriefDescription": "Cycles with Snoops Outstanding; All Requests", 305311c2302cSIan Rogers "Counter": "0,1,2,3", 3054bedd1738SZhengjun Xing "EventCode": "0x8", 3055bedd1738SZhengjun Xing "EventName": "UNC_H_SNOOP_CYCLES_NE.ALL", 3056bedd1738SZhengjun Xing "PerPkg": "1", 3057667433c4SIan Rogers "PublicDescription": "Counts cycles when one or more snoops are outstanding.; Tracked for snoops from both local and remote sockets.", 3058bedd1738SZhengjun Xing "UMask": "0x3", 3059bedd1738SZhengjun Xing "Unit": "HA" 3060bedd1738SZhengjun Xing }, 3061bedd1738SZhengjun Xing { 3062667433c4SIan Rogers "BriefDescription": "Cycles with Snoops Outstanding; Local Requests", 306311c2302cSIan Rogers "Counter": "0,1,2,3", 3064667433c4SIan Rogers "EventCode": "0x8", 3065667433c4SIan Rogers "EventName": "UNC_H_SNOOP_CYCLES_NE.LOCAL", 3066667433c4SIan Rogers "PerPkg": "1", 3067667433c4SIan Rogers "PublicDescription": "Counts cycles when one or more snoops are outstanding.; This filter includes only requests coming from the local socket.", 3068667433c4SIan Rogers "UMask": "0x1", 3069667433c4SIan Rogers "Unit": "HA" 3070667433c4SIan Rogers }, 3071667433c4SIan Rogers { 3072667433c4SIan Rogers "BriefDescription": "Cycles with Snoops Outstanding; Remote Requests", 307311c2302cSIan Rogers "Counter": "0,1,2,3", 3074667433c4SIan Rogers "EventCode": "0x8", 3075667433c4SIan Rogers "EventName": "UNC_H_SNOOP_CYCLES_NE.REMOTE", 3076667433c4SIan Rogers "PerPkg": "1", 3077667433c4SIan Rogers "PublicDescription": "Counts cycles when one or more snoops are outstanding.; This filter includes only requests coming from remote sockets.", 3078667433c4SIan Rogers "UMask": "0x2", 3079667433c4SIan Rogers "Unit": "HA" 3080667433c4SIan Rogers }, 3081667433c4SIan Rogers { 3082bedd1738SZhengjun Xing "BriefDescription": "Tracker Snoops Outstanding Accumulator; Local Requests", 308311c2302cSIan Rogers "Counter": "0,1,2,3", 3084bedd1738SZhengjun Xing "EventCode": "0x9", 3085bedd1738SZhengjun Xing "EventName": "UNC_H_SNOOP_OCCUPANCY.LOCAL", 3086bedd1738SZhengjun Xing "PerPkg": "1", 3087667433c4SIan Rogers "PublicDescription": "Accumulates the occupancy of either the local HA tracker pool that have snoops pending in every cycle. This can be used in conjection with the not empty stat to calculate average queue occupancy or the allocations stat in order to calculate average queue latency. HA trackers are allocated as soon as a request enters the HA if an HT (HomeTracker) entry is available and this occupancy is decremented when all the snoop responses have returned.; This filter includes only requests coming from the local socket.", 3088bedd1738SZhengjun Xing "UMask": "0x1", 3089bedd1738SZhengjun Xing "Unit": "HA" 3090bedd1738SZhengjun Xing }, 3091bedd1738SZhengjun Xing { 3092bedd1738SZhengjun Xing "BriefDescription": "Tracker Snoops Outstanding Accumulator; Remote Requests", 309311c2302cSIan Rogers "Counter": "0,1,2,3", 3094bedd1738SZhengjun Xing "EventCode": "0x9", 3095bedd1738SZhengjun Xing "EventName": "UNC_H_SNOOP_OCCUPANCY.REMOTE", 3096bedd1738SZhengjun Xing "PerPkg": "1", 3097667433c4SIan Rogers "PublicDescription": "Accumulates the occupancy of either the local HA tracker pool that have snoops pending in every cycle. This can be used in conjection with the not empty stat to calculate average queue occupancy or the allocations stat in order to calculate average queue latency. HA trackers are allocated as soon as a request enters the HA if an HT (HomeTracker) entry is available and this occupancy is decremented when all the snoop responses have returned.; This filter includes only requests coming from remote sockets.", 3098bedd1738SZhengjun Xing "UMask": "0x2", 3099bedd1738SZhengjun Xing "Unit": "HA" 3100bedd1738SZhengjun Xing }, 3101bedd1738SZhengjun Xing { 3102667433c4SIan Rogers "BriefDescription": "Snoop Responses Received; RSPCNFLCT*", 310311c2302cSIan Rogers "Counter": "0,1,2,3", 3104667433c4SIan Rogers "EventCode": "0x21", 3105667433c4SIan Rogers "EventName": "UNC_H_SNOOP_RESP.RSPCNFLCT", 3106667433c4SIan Rogers "PerPkg": "1", 3107667433c4SIan Rogers "PublicDescription": "Counts the total number of RspI snoop responses received. Whenever a snoops are issued, one or more snoop responses will be returned depending on the topology of the system. In systems larger than 2s, when multiple snoops are returned this will count all the snoops that are received. For example, if 3 snoops were issued and returned RspI, RspS, and RspSFwd; then each of these sub-events would increment by 1.; Filters for snoops responses of RspConflict. This is returned when a snoop finds an existing outstanding transaction in a remote caching agent when it CAMs that caching agent. This triggers conflict resolution hardware. This covers both RspCnflct and RspCnflctWbI.", 3108667433c4SIan Rogers "UMask": "0x40", 3109667433c4SIan Rogers "Unit": "HA" 3110667433c4SIan Rogers }, 3111667433c4SIan Rogers { 3112bedd1738SZhengjun Xing "BriefDescription": "Snoop Responses Received; RspI", 311311c2302cSIan Rogers "Counter": "0,1,2,3", 31147003f00fSAndi Kleen "EventCode": "0x21", 3115bedd1738SZhengjun Xing "EventName": "UNC_H_SNOOP_RESP.RSPI", 31167003f00fSAndi Kleen "PerPkg": "1", 3117667433c4SIan Rogers "PublicDescription": "Counts the total number of RspI snoop responses received. Whenever a snoops are issued, one or more snoop responses will be returned depending on the topology of the system. In systems larger than 2s, when multiple snoops are returned this will count all the snoops that are received. For example, if 3 snoops were issued and returned RspI, RspS, and RspSFwd; then each of these sub-events would increment by 1.; Filters for snoops responses of RspI. RspI is returned when the remote cache does not have the data, or when the remote cache silently evicts data (such as when an RFO hits non-modified data).", 3118bedd1738SZhengjun Xing "UMask": "0x1", 31197003f00fSAndi Kleen "Unit": "HA" 31207003f00fSAndi Kleen }, 31217003f00fSAndi Kleen { 3122bedd1738SZhengjun Xing "BriefDescription": "M line forwarded from remote cache with no writeback to memory", 312311c2302cSIan Rogers "Counter": "0,1,2,3", 3124bedd1738SZhengjun Xing "EventCode": "0x21", 3125bedd1738SZhengjun Xing "EventName": "UNC_H_SNOOP_RESP.RSPIFWD", 3126bedd1738SZhengjun Xing "PerPkg": "1", 3127667433c4SIan Rogers "PublicDescription": "Counts the total number of RspI snoop responses received. Whenever a snoops are issued, one or more snoop responses will be returned depending on the topology of the system. In systems larger than 2s, when multiple snoops are returned this will count all the snoops that are received. For example, if 3 snoops were issued and returned RspI, RspS, and RspSFwd; then each of these sub-events would increment by 1.; Filters for snoop responses of RspIFwd. This is returned when a remote caching agent forwards data and the requesting agent is able to acquire the data in E or M states. This is commonly returned with RFO transactions. It can be either a HitM or a HitFE.", 3128bedd1738SZhengjun Xing "ScaleUnit": "64Bytes", 3129bedd1738SZhengjun Xing "UMask": "0x4", 3130bedd1738SZhengjun Xing "Unit": "HA" 3131bedd1738SZhengjun Xing }, 3132bedd1738SZhengjun Xing { 3133667433c4SIan Rogers "BriefDescription": "Shared line response from remote cache", 313411c2302cSIan Rogers "Counter": "0,1,2,3", 3135667433c4SIan Rogers "EventCode": "0x21", 3136667433c4SIan Rogers "EventName": "UNC_H_SNOOP_RESP.RSPS", 3137667433c4SIan Rogers "PerPkg": "1", 3138667433c4SIan Rogers "PublicDescription": "Counts the total number of RspI snoop responses received. Whenever a snoops are issued, one or more snoop responses will be returned depending on the topology of the system. In systems larger than 2s, when multiple snoops are returned this will count all the snoops that are received. For example, if 3 snoops were issued and returned RspI, RspS, and RspSFwd; then each of these sub-events would increment by 1.; Filters for snoop responses of RspS. RspS is returned when a remote cache has data but is not forwarding it. It is a way to let the requesting socket know that it cannot allocate the data in E state. No data is sent with S RspS.", 3139667433c4SIan Rogers "ScaleUnit": "64Bytes", 3140667433c4SIan Rogers "UMask": "0x2", 3141667433c4SIan Rogers "Unit": "HA" 3142667433c4SIan Rogers }, 3143667433c4SIan Rogers { 3144b90b3e9cSAndi Kleen "BriefDescription": "Shared line forwarded from remote cache", 314511c2302cSIan Rogers "Counter": "0,1,2,3", 31467003f00fSAndi Kleen "EventCode": "0x21", 31477003f00fSAndi Kleen "EventName": "UNC_H_SNOOP_RESP.RSPSFWD", 31487003f00fSAndi Kleen "PerPkg": "1", 3149667433c4SIan Rogers "PublicDescription": "Counts the total number of RspI snoop responses received. Whenever a snoops are issued, one or more snoop responses will be returned depending on the topology of the system. In systems larger than 2s, when multiple snoops are returned this will count all the snoops that are received. For example, if 3 snoops were issued and returned RspI, RspS, and RspSFwd; then each of these sub-events would increment by 1.; Filters for a snoop response of RspSFwd. This is returned when a remote caching agent forwards data but holds on to its currently copy. This is common for data and code reads that hit in a remote socket in E or F state.", 31507003f00fSAndi Kleen "ScaleUnit": "64Bytes", 31517003f00fSAndi Kleen "UMask": "0x8", 31527003f00fSAndi Kleen "Unit": "HA" 3153bedd1738SZhengjun Xing }, 3154bedd1738SZhengjun Xing { 3155bedd1738SZhengjun Xing "BriefDescription": "M line forwarded from remote cache along with writeback to memory", 315611c2302cSIan Rogers "Counter": "0,1,2,3", 3157bedd1738SZhengjun Xing "EventCode": "0x21", 3158bedd1738SZhengjun Xing "EventName": "UNC_H_SNOOP_RESP.RSP_FWD_WB", 3159bedd1738SZhengjun Xing "PerPkg": "1", 3160667433c4SIan Rogers "PublicDescription": "Counts the total number of RspI snoop responses received. Whenever a snoops are issued, one or more snoop responses will be returned depending on the topology of the system. In systems larger than 2s, when multiple snoops are returned this will count all the snoops that are received. For example, if 3 snoops were issued and returned RspI, RspS, and RspSFwd; then each of these sub-events would increment by 1.; Filters for a snoop response of Rsp*Fwd*WB. This snoop response is only used in 4s systems. It is used when a snoop HITM's in a remote caching agent and it directly forwards data to a requestor, and simultaneously returns data to the home to be written back to memory.", 3161bedd1738SZhengjun Xing "ScaleUnit": "64Bytes", 3162bedd1738SZhengjun Xing "UMask": "0x20", 3163bedd1738SZhengjun Xing "Unit": "HA" 3164bedd1738SZhengjun Xing }, 3165bedd1738SZhengjun Xing { 3166667433c4SIan Rogers "BriefDescription": "Snoop Responses Received; Rsp*WB", 316711c2302cSIan Rogers "Counter": "0,1,2,3", 3168bedd1738SZhengjun Xing "EventCode": "0x21", 3169667433c4SIan Rogers "EventName": "UNC_H_SNOOP_RESP.RSP_WB", 3170bedd1738SZhengjun Xing "PerPkg": "1", 3171667433c4SIan Rogers "PublicDescription": "Counts the total number of RspI snoop responses received. Whenever a snoops are issued, one or more snoop responses will be returned depending on the topology of the system. In systems larger than 2s, when multiple snoops are returned this will count all the snoops that are received. For example, if 3 snoops were issued and returned RspI, RspS, and RspSFwd; then each of these sub-events would increment by 1.; Filters for a snoop response of RspIWB or RspSWB. This is returned when a non-RFO request hits in M state. Data and Code Reads can return either RspIWB or RspSWB depending on how the system has been configured. InvItoE transactions will also return RspIWB because they must acquire ownership.", 3172667433c4SIan Rogers "UMask": "0x10", 3173667433c4SIan Rogers "Unit": "HA" 3174667433c4SIan Rogers }, 3175667433c4SIan Rogers { 3176667433c4SIan Rogers "BriefDescription": "Snoop Responses Received Local; Other", 317711c2302cSIan Rogers "Counter": "0,1,2,3", 3178667433c4SIan Rogers "EventCode": "0x60", 3179667433c4SIan Rogers "EventName": "UNC_H_SNP_RESP_RECV_LOCAL.OTHER", 3180667433c4SIan Rogers "PerPkg": "1", 3181667433c4SIan Rogers "PublicDescription": "Number of snoop responses received for a Local request; Filters for all other snoop responses.", 3182667433c4SIan Rogers "UMask": "0x80", 3183667433c4SIan Rogers "Unit": "HA" 3184667433c4SIan Rogers }, 3185667433c4SIan Rogers { 3186667433c4SIan Rogers "BriefDescription": "Snoop Responses Received Local; RspCnflct", 318711c2302cSIan Rogers "Counter": "0,1,2,3", 3188667433c4SIan Rogers "EventCode": "0x60", 3189667433c4SIan Rogers "EventName": "UNC_H_SNP_RESP_RECV_LOCAL.RSPCNFLCT", 3190667433c4SIan Rogers "PerPkg": "1", 3191667433c4SIan Rogers "PublicDescription": "Number of snoop responses received for a Local request; Filters for snoops responses of RspConflict. This is returned when a snoop finds an existing outstanding transaction in a remote caching agent when it CAMs that caching agent. This triggers conflict resolution hardware. This covers both RspCnflct and RspCnflctWbI.", 3192bedd1738SZhengjun Xing "UMask": "0x40", 3193bedd1738SZhengjun Xing "Unit": "HA" 3194bedd1738SZhengjun Xing }, 3195bedd1738SZhengjun Xing { 3196bedd1738SZhengjun Xing "BriefDescription": "Snoop Responses Received Local; RspI", 319711c2302cSIan Rogers "Counter": "0,1,2,3", 3198bedd1738SZhengjun Xing "EventCode": "0x60", 3199bedd1738SZhengjun Xing "EventName": "UNC_H_SNP_RESP_RECV_LOCAL.RSPI", 3200bedd1738SZhengjun Xing "PerPkg": "1", 3201667433c4SIan Rogers "PublicDescription": "Number of snoop responses received for a Local request; Filters for snoops responses of RspI. RspI is returned when the remote cache does not have the data, or when the remote cache silently evicts data (such as when an RFO hits non-modified data).", 3202bedd1738SZhengjun Xing "UMask": "0x1", 3203bedd1738SZhengjun Xing "Unit": "HA" 3204bedd1738SZhengjun Xing }, 3205bedd1738SZhengjun Xing { 3206bedd1738SZhengjun Xing "BriefDescription": "Snoop Responses Received Local; RspIFwd", 320711c2302cSIan Rogers "Counter": "0,1,2,3", 3208bedd1738SZhengjun Xing "EventCode": "0x60", 3209bedd1738SZhengjun Xing "EventName": "UNC_H_SNP_RESP_RECV_LOCAL.RSPIFWD", 3210bedd1738SZhengjun Xing "PerPkg": "1", 3211667433c4SIan Rogers "PublicDescription": "Number of snoop responses received for a Local request; Filters for snoop responses of RspIFwd. This is returned when a remote caching agent forwards data and the requesting agent is able to acquire the data in E or M states. This is commonly returned with RFO transactions. It can be either a HitM or a HitFE.", 3212bedd1738SZhengjun Xing "UMask": "0x4", 3213bedd1738SZhengjun Xing "Unit": "HA" 3214bedd1738SZhengjun Xing }, 3215bedd1738SZhengjun Xing { 3216667433c4SIan Rogers "BriefDescription": "Snoop Responses Received Local; RspS", 321711c2302cSIan Rogers "Counter": "0,1,2,3", 3218bedd1738SZhengjun Xing "EventCode": "0x60", 3219667433c4SIan Rogers "EventName": "UNC_H_SNP_RESP_RECV_LOCAL.RSPS", 3220bedd1738SZhengjun Xing "PerPkg": "1", 3221667433c4SIan Rogers "PublicDescription": "Number of snoop responses received for a Local request; Filters for snoop responses of RspS. RspS is returned when a remote cache has data but is not forwarding it. It is a way to let the requesting socket know that it cannot allocate the data in E state. No data is sent with S RspS.", 3222bedd1738SZhengjun Xing "UMask": "0x2", 3223bedd1738SZhengjun Xing "Unit": "HA" 3224bedd1738SZhengjun Xing }, 3225bedd1738SZhengjun Xing { 3226667433c4SIan Rogers "BriefDescription": "Snoop Responses Received Local; RspSFwd", 322711c2302cSIan Rogers "Counter": "0,1,2,3", 3228667433c4SIan Rogers "EventCode": "0x60", 3229667433c4SIan Rogers "EventName": "UNC_H_SNP_RESP_RECV_LOCAL.RSPSFWD", 3230667433c4SIan Rogers "PerPkg": "1", 3231667433c4SIan Rogers "PublicDescription": "Number of snoop responses received for a Local request; Filters for a snoop response of RspSFwd. This is returned when a remote caching agent forwards data but holds on to its currently copy. This is common for data and code reads that hit in a remote socket in E or F state.", 3232667433c4SIan Rogers "UMask": "0x8", 3233667433c4SIan Rogers "Unit": "HA" 3234667433c4SIan Rogers }, 3235667433c4SIan Rogers { 3236667433c4SIan Rogers "BriefDescription": "Snoop Responses Received Local; Rsp*FWD*WB", 323711c2302cSIan Rogers "Counter": "0,1,2,3", 3238667433c4SIan Rogers "EventCode": "0x60", 3239667433c4SIan Rogers "EventName": "UNC_H_SNP_RESP_RECV_LOCAL.RSPxFWDxWB", 3240667433c4SIan Rogers "PerPkg": "1", 3241667433c4SIan Rogers "PublicDescription": "Number of snoop responses received for a Local request; Filters for a snoop response of Rsp*Fwd*WB. This snoop response is only used in 4s systems. It is used when a snoop HITM's in a remote caching agent and it directly forwards data to a requestor, and simultaneously returns data to the home to be written back to memory.", 3242667433c4SIan Rogers "UMask": "0x20", 3243667433c4SIan Rogers "Unit": "HA" 3244667433c4SIan Rogers }, 3245667433c4SIan Rogers { 3246667433c4SIan Rogers "BriefDescription": "Snoop Responses Received Local; Rsp*WB", 324711c2302cSIan Rogers "Counter": "0,1,2,3", 3248667433c4SIan Rogers "EventCode": "0x60", 3249667433c4SIan Rogers "EventName": "UNC_H_SNP_RESP_RECV_LOCAL.RSPxWB", 3250667433c4SIan Rogers "PerPkg": "1", 3251667433c4SIan Rogers "PublicDescription": "Number of snoop responses received for a Local request; Filters for a snoop response of RspIWB or RspSWB. This is returned when a non-RFO request hits in M state. Data and Code Reads can return either RspIWB or RspSWB depending on how the system has been configured. InvItoE transactions will also return RspIWB because they must acquire ownership.", 3252667433c4SIan Rogers "UMask": "0x10", 3253667433c4SIan Rogers "Unit": "HA" 3254667433c4SIan Rogers }, 3255667433c4SIan Rogers { 3256667433c4SIan Rogers "BriefDescription": "Stall on No Sbo Credits; For SBo0, AD Ring", 325711c2302cSIan Rogers "Counter": "0,1,2,3", 3258667433c4SIan Rogers "EventCode": "0x6C", 3259667433c4SIan Rogers "EventName": "UNC_H_STALL_NO_SBO_CREDIT.SBO0_AD", 3260667433c4SIan Rogers "PerPkg": "1", 3261667433c4SIan Rogers "PublicDescription": "Number of cycles Egress is stalled waiting for an Sbo credit to become available. Per Sbo, per Ring.", 3262667433c4SIan Rogers "UMask": "0x1", 3263667433c4SIan Rogers "Unit": "HA" 3264667433c4SIan Rogers }, 3265667433c4SIan Rogers { 3266bedd1738SZhengjun Xing "BriefDescription": "Stall on No Sbo Credits; For SBo0, BL Ring", 326711c2302cSIan Rogers "Counter": "0,1,2,3", 3268bedd1738SZhengjun Xing "EventCode": "0x6C", 3269bedd1738SZhengjun Xing "EventName": "UNC_H_STALL_NO_SBO_CREDIT.SBO0_BL", 3270bedd1738SZhengjun Xing "PerPkg": "1", 3271667433c4SIan Rogers "PublicDescription": "Number of cycles Egress is stalled waiting for an Sbo credit to become available. Per Sbo, per Ring.", 3272bedd1738SZhengjun Xing "UMask": "0x4", 3273bedd1738SZhengjun Xing "Unit": "HA" 3274bedd1738SZhengjun Xing }, 3275bedd1738SZhengjun Xing { 3276667433c4SIan Rogers "BriefDescription": "Stall on No Sbo Credits; For SBo1, AD Ring", 327711c2302cSIan Rogers "Counter": "0,1,2,3", 3278667433c4SIan Rogers "EventCode": "0x6C", 3279667433c4SIan Rogers "EventName": "UNC_H_STALL_NO_SBO_CREDIT.SBO1_AD", 3280667433c4SIan Rogers "PerPkg": "1", 3281667433c4SIan Rogers "PublicDescription": "Number of cycles Egress is stalled waiting for an Sbo credit to become available. Per Sbo, per Ring.", 3282667433c4SIan Rogers "UMask": "0x2", 3283667433c4SIan Rogers "Unit": "HA" 3284667433c4SIan Rogers }, 3285667433c4SIan Rogers { 3286bedd1738SZhengjun Xing "BriefDescription": "Stall on No Sbo Credits; For SBo1, BL Ring", 328711c2302cSIan Rogers "Counter": "0,1,2,3", 3288bedd1738SZhengjun Xing "EventCode": "0x6C", 3289bedd1738SZhengjun Xing "EventName": "UNC_H_STALL_NO_SBO_CREDIT.SBO1_BL", 3290bedd1738SZhengjun Xing "PerPkg": "1", 3291667433c4SIan Rogers "PublicDescription": "Number of cycles Egress is stalled waiting for an Sbo credit to become available. Per Sbo, per Ring.", 3292bedd1738SZhengjun Xing "UMask": "0x8", 3293bedd1738SZhengjun Xing "Unit": "HA" 3294bedd1738SZhengjun Xing }, 3295bedd1738SZhengjun Xing { 3296bedd1738SZhengjun Xing "BriefDescription": "HA Requests to a TAD Region - Group 0; TAD Region 0", 329711c2302cSIan Rogers "Counter": "0,1,2,3", 3298bedd1738SZhengjun Xing "EventCode": "0x1B", 3299bedd1738SZhengjun Xing "EventName": "UNC_H_TAD_REQUESTS_G0.REGION0", 3300bedd1738SZhengjun Xing "PerPkg": "1", 3301667433c4SIan Rogers "PublicDescription": "Counts the number of HA requests to a given TAD region. There are up to 11 TAD (target address decode) regions in each home agent. All requests destined for the memory controller must first be decoded to determine which TAD region they are in. This event is filtered based on the TAD region ID, and covers regions 0 to 7. This event is useful for understanding how applications are using the memory that is spread across the different memory regions. It is particularly useful for Monroe systems that use the TAD to enable individual channels to enter self-refresh to save power.; Filters request made to TAD Region 0", 3302bedd1738SZhengjun Xing "UMask": "0x1", 3303bedd1738SZhengjun Xing "Unit": "HA" 3304bedd1738SZhengjun Xing }, 3305bedd1738SZhengjun Xing { 3306bedd1738SZhengjun Xing "BriefDescription": "HA Requests to a TAD Region - Group 0; TAD Region 1", 330711c2302cSIan Rogers "Counter": "0,1,2,3", 3308bedd1738SZhengjun Xing "EventCode": "0x1B", 3309bedd1738SZhengjun Xing "EventName": "UNC_H_TAD_REQUESTS_G0.REGION1", 3310bedd1738SZhengjun Xing "PerPkg": "1", 3311667433c4SIan Rogers "PublicDescription": "Counts the number of HA requests to a given TAD region. There are up to 11 TAD (target address decode) regions in each home agent. All requests destined for the memory controller must first be decoded to determine which TAD region they are in. This event is filtered based on the TAD region ID, and covers regions 0 to 7. This event is useful for understanding how applications are using the memory that is spread across the different memory regions. It is particularly useful for Monroe systems that use the TAD to enable individual channels to enter self-refresh to save power.; Filters request made to TAD Region 1", 3312bedd1738SZhengjun Xing "UMask": "0x2", 3313bedd1738SZhengjun Xing "Unit": "HA" 3314bedd1738SZhengjun Xing }, 3315bedd1738SZhengjun Xing { 3316bedd1738SZhengjun Xing "BriefDescription": "HA Requests to a TAD Region - Group 0; TAD Region 2", 331711c2302cSIan Rogers "Counter": "0,1,2,3", 3318bedd1738SZhengjun Xing "EventCode": "0x1B", 3319bedd1738SZhengjun Xing "EventName": "UNC_H_TAD_REQUESTS_G0.REGION2", 3320bedd1738SZhengjun Xing "PerPkg": "1", 3321667433c4SIan Rogers "PublicDescription": "Counts the number of HA requests to a given TAD region. There are up to 11 TAD (target address decode) regions in each home agent. All requests destined for the memory controller must first be decoded to determine which TAD region they are in. This event is filtered based on the TAD region ID, and covers regions 0 to 7. This event is useful for understanding how applications are using the memory that is spread across the different memory regions. It is particularly useful for Monroe systems that use the TAD to enable individual channels to enter self-refresh to save power.; Filters request made to TAD Region 2", 3322bedd1738SZhengjun Xing "UMask": "0x4", 3323bedd1738SZhengjun Xing "Unit": "HA" 3324bedd1738SZhengjun Xing }, 3325bedd1738SZhengjun Xing { 3326bedd1738SZhengjun Xing "BriefDescription": "HA Requests to a TAD Region - Group 0; TAD Region 3", 332711c2302cSIan Rogers "Counter": "0,1,2,3", 3328bedd1738SZhengjun Xing "EventCode": "0x1B", 3329bedd1738SZhengjun Xing "EventName": "UNC_H_TAD_REQUESTS_G0.REGION3", 3330bedd1738SZhengjun Xing "PerPkg": "1", 3331667433c4SIan Rogers "PublicDescription": "Counts the number of HA requests to a given TAD region. There are up to 11 TAD (target address decode) regions in each home agent. All requests destined for the memory controller must first be decoded to determine which TAD region they are in. This event is filtered based on the TAD region ID, and covers regions 0 to 7. This event is useful for understanding how applications are using the memory that is spread across the different memory regions. It is particularly useful for Monroe systems that use the TAD to enable individual channels to enter self-refresh to save power.; Filters request made to TAD Region 3", 3332bedd1738SZhengjun Xing "UMask": "0x8", 3333bedd1738SZhengjun Xing "Unit": "HA" 3334bedd1738SZhengjun Xing }, 3335bedd1738SZhengjun Xing { 3336bedd1738SZhengjun Xing "BriefDescription": "HA Requests to a TAD Region - Group 0; TAD Region 4", 333711c2302cSIan Rogers "Counter": "0,1,2,3", 3338bedd1738SZhengjun Xing "EventCode": "0x1B", 3339bedd1738SZhengjun Xing "EventName": "UNC_H_TAD_REQUESTS_G0.REGION4", 3340bedd1738SZhengjun Xing "PerPkg": "1", 3341667433c4SIan Rogers "PublicDescription": "Counts the number of HA requests to a given TAD region. There are up to 11 TAD (target address decode) regions in each home agent. All requests destined for the memory controller must first be decoded to determine which TAD region they are in. This event is filtered based on the TAD region ID, and covers regions 0 to 7. This event is useful for understanding how applications are using the memory that is spread across the different memory regions. It is particularly useful for Monroe systems that use the TAD to enable individual channels to enter self-refresh to save power.; Filters request made to TAD Region 4", 3342bedd1738SZhengjun Xing "UMask": "0x10", 3343bedd1738SZhengjun Xing "Unit": "HA" 3344bedd1738SZhengjun Xing }, 3345bedd1738SZhengjun Xing { 3346bedd1738SZhengjun Xing "BriefDescription": "HA Requests to a TAD Region - Group 0; TAD Region 5", 334711c2302cSIan Rogers "Counter": "0,1,2,3", 3348bedd1738SZhengjun Xing "EventCode": "0x1B", 3349bedd1738SZhengjun Xing "EventName": "UNC_H_TAD_REQUESTS_G0.REGION5", 3350bedd1738SZhengjun Xing "PerPkg": "1", 3351667433c4SIan Rogers "PublicDescription": "Counts the number of HA requests to a given TAD region. There are up to 11 TAD (target address decode) regions in each home agent. All requests destined for the memory controller must first be decoded to determine which TAD region they are in. This event is filtered based on the TAD region ID, and covers regions 0 to 7. This event is useful for understanding how applications are using the memory that is spread across the different memory regions. It is particularly useful for Monroe systems that use the TAD to enable individual channels to enter self-refresh to save power.; Filters request made to TAD Region 5", 3352bedd1738SZhengjun Xing "UMask": "0x20", 3353bedd1738SZhengjun Xing "Unit": "HA" 3354bedd1738SZhengjun Xing }, 3355bedd1738SZhengjun Xing { 3356bedd1738SZhengjun Xing "BriefDescription": "HA Requests to a TAD Region - Group 0; TAD Region 6", 335711c2302cSIan Rogers "Counter": "0,1,2,3", 3358bedd1738SZhengjun Xing "EventCode": "0x1B", 3359bedd1738SZhengjun Xing "EventName": "UNC_H_TAD_REQUESTS_G0.REGION6", 3360bedd1738SZhengjun Xing "PerPkg": "1", 3361667433c4SIan Rogers "PublicDescription": "Counts the number of HA requests to a given TAD region. There are up to 11 TAD (target address decode) regions in each home agent. All requests destined for the memory controller must first be decoded to determine which TAD region they are in. This event is filtered based on the TAD region ID, and covers regions 0 to 7. This event is useful for understanding how applications are using the memory that is spread across the different memory regions. It is particularly useful for Monroe systems that use the TAD to enable individual channels to enter self-refresh to save power.; Filters request made to TAD Region 6", 3362bedd1738SZhengjun Xing "UMask": "0x40", 3363bedd1738SZhengjun Xing "Unit": "HA" 3364bedd1738SZhengjun Xing }, 3365bedd1738SZhengjun Xing { 3366bedd1738SZhengjun Xing "BriefDescription": "HA Requests to a TAD Region - Group 0; TAD Region 7", 336711c2302cSIan Rogers "Counter": "0,1,2,3", 3368bedd1738SZhengjun Xing "EventCode": "0x1B", 3369bedd1738SZhengjun Xing "EventName": "UNC_H_TAD_REQUESTS_G0.REGION7", 3370bedd1738SZhengjun Xing "PerPkg": "1", 3371667433c4SIan Rogers "PublicDescription": "Counts the number of HA requests to a given TAD region. There are up to 11 TAD (target address decode) regions in each home agent. All requests destined for the memory controller must first be decoded to determine which TAD region they are in. This event is filtered based on the TAD region ID, and covers regions 0 to 7. This event is useful for understanding how applications are using the memory that is spread across the different memory regions. It is particularly useful for Monroe systems that use the TAD to enable individual channels to enter self-refresh to save power.; Filters request made to TAD Region 7", 3372bedd1738SZhengjun Xing "UMask": "0x80", 3373bedd1738SZhengjun Xing "Unit": "HA" 3374bedd1738SZhengjun Xing }, 3375bedd1738SZhengjun Xing { 3376bedd1738SZhengjun Xing "BriefDescription": "HA Requests to a TAD Region - Group 1; TAD Region 10", 337711c2302cSIan Rogers "Counter": "0,1,2,3", 3378bedd1738SZhengjun Xing "EventCode": "0x1C", 3379bedd1738SZhengjun Xing "EventName": "UNC_H_TAD_REQUESTS_G1.REGION10", 3380bedd1738SZhengjun Xing "PerPkg": "1", 3381667433c4SIan Rogers "PublicDescription": "Counts the number of HA requests to a given TAD region. There are up to 11 TAD (target address decode) regions in each home agent. All requests destined for the memory controller must first be decoded to determine which TAD region they are in. This event is filtered based on the TAD region ID, and covers regions 8 to 10. This event is useful for understanding how applications are using the memory that is spread across the different memory regions. It is particularly useful for Monroe systems that use the TAD to enable individual channels to enter self-refresh to save power.; Filters request made to TAD Region 10", 3382bedd1738SZhengjun Xing "UMask": "0x4", 3383bedd1738SZhengjun Xing "Unit": "HA" 3384bedd1738SZhengjun Xing }, 3385bedd1738SZhengjun Xing { 3386bedd1738SZhengjun Xing "BriefDescription": "HA Requests to a TAD Region - Group 1; TAD Region 11", 338711c2302cSIan Rogers "Counter": "0,1,2,3", 3388bedd1738SZhengjun Xing "EventCode": "0x1C", 3389bedd1738SZhengjun Xing "EventName": "UNC_H_TAD_REQUESTS_G1.REGION11", 3390bedd1738SZhengjun Xing "PerPkg": "1", 3391667433c4SIan Rogers "PublicDescription": "Counts the number of HA requests to a given TAD region. There are up to 11 TAD (target address decode) regions in each home agent. All requests destined for the memory controller must first be decoded to determine which TAD region they are in. This event is filtered based on the TAD region ID, and covers regions 8 to 10. This event is useful for understanding how applications are using the memory that is spread across the different memory regions. It is particularly useful for Monroe systems that use the TAD to enable individual channels to enter self-refresh to save power.; Filters request made to TAD Region 11", 3392bedd1738SZhengjun Xing "UMask": "0x8", 3393bedd1738SZhengjun Xing "Unit": "HA" 3394bedd1738SZhengjun Xing }, 3395bedd1738SZhengjun Xing { 3396667433c4SIan Rogers "BriefDescription": "HA Requests to a TAD Region - Group 1; TAD Region 8", 339711c2302cSIan Rogers "Counter": "0,1,2,3", 3398667433c4SIan Rogers "EventCode": "0x1C", 3399667433c4SIan Rogers "EventName": "UNC_H_TAD_REQUESTS_G1.REGION8", 3400bedd1738SZhengjun Xing "PerPkg": "1", 3401667433c4SIan Rogers "PublicDescription": "Counts the number of HA requests to a given TAD region. There are up to 11 TAD (target address decode) regions in each home agent. All requests destined for the memory controller must first be decoded to determine which TAD region they are in. This event is filtered based on the TAD region ID, and covers regions 8 to 10. This event is useful for understanding how applications are using the memory that is spread across the different memory regions. It is particularly useful for Monroe systems that use the TAD to enable individual channels to enter self-refresh to save power.; Filters request made to TAD Region 8", 3402bedd1738SZhengjun Xing "UMask": "0x1", 3403bedd1738SZhengjun Xing "Unit": "HA" 3404bedd1738SZhengjun Xing }, 3405bedd1738SZhengjun Xing { 3406667433c4SIan Rogers "BriefDescription": "HA Requests to a TAD Region - Group 1; TAD Region 9", 340711c2302cSIan Rogers "Counter": "0,1,2,3", 3408667433c4SIan Rogers "EventCode": "0x1C", 3409667433c4SIan Rogers "EventName": "UNC_H_TAD_REQUESTS_G1.REGION9", 3410667433c4SIan Rogers "PerPkg": "1", 3411667433c4SIan Rogers "PublicDescription": "Counts the number of HA requests to a given TAD region. There are up to 11 TAD (target address decode) regions in each home agent. All requests destined for the memory controller must first be decoded to determine which TAD region they are in. This event is filtered based on the TAD region ID, and covers regions 8 to 10. This event is useful for understanding how applications are using the memory that is spread across the different memory regions. It is particularly useful for Monroe systems that use the TAD to enable individual channels to enter self-refresh to save power.; Filters request made to TAD Region 9", 3412667433c4SIan Rogers "UMask": "0x2", 3413667433c4SIan Rogers "Unit": "HA" 3414667433c4SIan Rogers }, 3415667433c4SIan Rogers { 3416bedd1738SZhengjun Xing "BriefDescription": "Tracker Cycles Full; Cycles Completely Used", 341711c2302cSIan Rogers "Counter": "0,1,2,3", 3418bedd1738SZhengjun Xing "EventCode": "0x2", 3419bedd1738SZhengjun Xing "EventName": "UNC_H_TRACKER_CYCLES_FULL.ALL", 3420bedd1738SZhengjun Xing "PerPkg": "1", 3421667433c4SIan Rogers "PublicDescription": "Counts the number of cycles when the local HA tracker pool is completely used. This can be used with edge detect to identify the number of situations when the pool became fully utilized. This should not be confused with RTID credit usage -- which must be tracked inside each cbo individually -- but represents the actual tracker buffer structure. In other words, the system could be starved for RTIDs but not fill up the HA trackers. HA trackers are allocated as soon as a request enters the HA and is released after the snoop response and data return (or post in the case of a write) and the response is returned on the ring.; Counts the number of cycles when the HA tracker pool (HT) is completely used including reserved HT entries. It will not return valid count when BT is disabled.", 3422bedd1738SZhengjun Xing "UMask": "0x2", 3423bedd1738SZhengjun Xing "Unit": "HA" 3424bedd1738SZhengjun Xing }, 3425bedd1738SZhengjun Xing { 3426667433c4SIan Rogers "BriefDescription": "Tracker Cycles Full; Cycles GP Completely Used", 342711c2302cSIan Rogers "Counter": "0,1,2,3", 3428667433c4SIan Rogers "EventCode": "0x2", 3429667433c4SIan Rogers "EventName": "UNC_H_TRACKER_CYCLES_FULL.GP", 3430bedd1738SZhengjun Xing "PerPkg": "1", 3431667433c4SIan Rogers "PublicDescription": "Counts the number of cycles when the local HA tracker pool is completely used. This can be used with edge detect to identify the number of situations when the pool became fully utilized. This should not be confused with RTID credit usage -- which must be tracked inside each cbo individually -- but represents the actual tracker buffer structure. In other words, the system could be starved for RTIDs but not fill up the HA trackers. HA trackers are allocated as soon as a request enters the HA and is released after the snoop response and data return (or post in the case of a write) and the response is returned on the ring.; Counts the number of cycles when the general purpose (GP) HA tracker pool (HT) is completely used. It will not return valid count when BT is disabled.", 3432bedd1738SZhengjun Xing "UMask": "0x1", 3433bedd1738SZhengjun Xing "Unit": "HA" 3434bedd1738SZhengjun Xing }, 3435bedd1738SZhengjun Xing { 3436667433c4SIan Rogers "BriefDescription": "Tracker Cycles Not Empty; All Requests", 343711c2302cSIan Rogers "Counter": "0,1,2,3", 3438667433c4SIan Rogers "EventCode": "0x3", 3439667433c4SIan Rogers "EventName": "UNC_H_TRACKER_CYCLES_NE.ALL", 3440bedd1738SZhengjun Xing "PerPkg": "1", 3441*be67d89fSIan Rogers "PublicDescription": "Counts the number of cycles when the local HA tracker pool is not empty. This can be used with edge detect to identify the number of situations when the pool became empty. This should not be confused with RTID credit usage -- which must be tracked inside each cbo individually -- but represents the actual tracker buffer structure. In other words, this buffer could be completely empty, but there may still be credits in use by the CBos. This stat can be used in conjunction with the occupancy accumulation stat in order to calculate average queue occupancy. HA trackers are allocated as soon as a request enters the HA if an HT (Home Tracker) entry is available and is released after the snoop response and data return (or post in the case of a write) and the response is returned on the ring.; Requests coming from both local and remote sockets.", 3442bedd1738SZhengjun Xing "UMask": "0x3", 3443bedd1738SZhengjun Xing "Unit": "HA" 3444bedd1738SZhengjun Xing }, 3445bedd1738SZhengjun Xing { 3446bedd1738SZhengjun Xing "BriefDescription": "Tracker Cycles Not Empty; Local Requests", 344711c2302cSIan Rogers "Counter": "0,1,2,3", 3448bedd1738SZhengjun Xing "EventCode": "0x3", 3449bedd1738SZhengjun Xing "EventName": "UNC_H_TRACKER_CYCLES_NE.LOCAL", 3450bedd1738SZhengjun Xing "PerPkg": "1", 3451*be67d89fSIan Rogers "PublicDescription": "Counts the number of cycles when the local HA tracker pool is not empty. This can be used with edge detect to identify the number of situations when the pool became empty. This should not be confused with RTID credit usage -- which must be tracked inside each cbo individually -- but represents the actual tracker buffer structure. In other words, this buffer could be completely empty, but there may still be credits in use by the CBos. This stat can be used in conjunction with the occupancy accumulation stat in order to calculate average queue occupancy. HA trackers are allocated as soon as a request enters the HA if an HT (Home Tracker) entry is available and is released after the snoop response and data return (or post in the case of a write) and the response is returned on the ring.; This filter includes only requests coming from the local socket.", 3452bedd1738SZhengjun Xing "UMask": "0x1", 3453bedd1738SZhengjun Xing "Unit": "HA" 3454bedd1738SZhengjun Xing }, 3455bedd1738SZhengjun Xing { 3456bedd1738SZhengjun Xing "BriefDescription": "Tracker Cycles Not Empty; Remote Requests", 345711c2302cSIan Rogers "Counter": "0,1,2,3", 3458bedd1738SZhengjun Xing "EventCode": "0x3", 3459bedd1738SZhengjun Xing "EventName": "UNC_H_TRACKER_CYCLES_NE.REMOTE", 3460bedd1738SZhengjun Xing "PerPkg": "1", 3461*be67d89fSIan Rogers "PublicDescription": "Counts the number of cycles when the local HA tracker pool is not empty. This can be used with edge detect to identify the number of situations when the pool became empty. This should not be confused with RTID credit usage -- which must be tracked inside each cbo individually -- but represents the actual tracker buffer structure. In other words, this buffer could be completely empty, but there may still be credits in use by the CBos. This stat can be used in conjunction with the occupancy accumulation stat in order to calculate average queue occupancy. HA trackers are allocated as soon as a request enters the HA if an HT (Home Tracker) entry is available and is released after the snoop response and data return (or post in the case of a write) and the response is returned on the ring.; This filter includes only requests coming from remote sockets.", 3462bedd1738SZhengjun Xing "UMask": "0x2", 3463bedd1738SZhengjun Xing "Unit": "HA" 3464bedd1738SZhengjun Xing }, 3465bedd1738SZhengjun Xing { 34666e884dadSIan Rogers "BriefDescription": "Tracker Occupancy Accumulator; Local InvItoE Requests", 346711c2302cSIan Rogers "Counter": "0,1,2,3", 3468667433c4SIan Rogers "EventCode": "0x4", 3469667433c4SIan Rogers "EventName": "UNC_H_TRACKER_OCCUPANCY.INVITOE_LOCAL", 3470bedd1738SZhengjun Xing "PerPkg": "1", 3471667433c4SIan Rogers "PublicDescription": "Accumulates the occupancy of the local HA tracker pool in every cycle. This can be used in conjection with the not empty stat to calculate average queue occupancy or the allocations stat in order to calculate average queue latency. HA trackers are allocated as soon as a request enters the HA if a HT (Home Tracker) entry is available and is released after the snoop response and data return (or post in the case of a write) and the response is returned on the ring.", 3472667433c4SIan Rogers "UMask": "0x40", 3473667433c4SIan Rogers "Unit": "HA" 3474667433c4SIan Rogers }, 3475667433c4SIan Rogers { 34766e884dadSIan Rogers "BriefDescription": "Tracker Occupancy Accumulator; Remote InvItoE Requests", 347711c2302cSIan Rogers "Counter": "0,1,2,3", 3478667433c4SIan Rogers "EventCode": "0x4", 3479667433c4SIan Rogers "EventName": "UNC_H_TRACKER_OCCUPANCY.INVITOE_REMOTE", 3480667433c4SIan Rogers "PerPkg": "1", 3481667433c4SIan Rogers "PublicDescription": "Accumulates the occupancy of the local HA tracker pool in every cycle. This can be used in conjection with the not empty stat to calculate average queue occupancy or the allocations stat in order to calculate average queue latency. HA trackers are allocated as soon as a request enters the HA if a HT (Home Tracker) entry is available and is released after the snoop response and data return (or post in the case of a write) and the response is returned on the ring.", 3482667433c4SIan Rogers "UMask": "0x80", 3483667433c4SIan Rogers "Unit": "HA" 3484667433c4SIan Rogers }, 3485667433c4SIan Rogers { 34866e884dadSIan Rogers "BriefDescription": "Tracker Occupancy Accumulator; Local Read Requests", 348711c2302cSIan Rogers "Counter": "0,1,2,3", 3488667433c4SIan Rogers "EventCode": "0x4", 3489667433c4SIan Rogers "EventName": "UNC_H_TRACKER_OCCUPANCY.READS_LOCAL", 3490667433c4SIan Rogers "PerPkg": "1", 3491667433c4SIan Rogers "PublicDescription": "Accumulates the occupancy of the local HA tracker pool in every cycle. This can be used in conjection with the not empty stat to calculate average queue occupancy or the allocations stat in order to calculate average queue latency. HA trackers are allocated as soon as a request enters the HA if a HT (Home Tracker) entry is available and is released after the snoop response and data return (or post in the case of a write) and the response is returned on the ring.", 3492667433c4SIan Rogers "UMask": "0x4", 3493667433c4SIan Rogers "Unit": "HA" 3494667433c4SIan Rogers }, 3495667433c4SIan Rogers { 34966e884dadSIan Rogers "BriefDescription": "Tracker Occupancy Accumulator; Remote Read Requests", 349711c2302cSIan Rogers "Counter": "0,1,2,3", 3498667433c4SIan Rogers "EventCode": "0x4", 3499667433c4SIan Rogers "EventName": "UNC_H_TRACKER_OCCUPANCY.READS_REMOTE", 3500667433c4SIan Rogers "PerPkg": "1", 3501667433c4SIan Rogers "PublicDescription": "Accumulates the occupancy of the local HA tracker pool in every cycle. This can be used in conjection with the not empty stat to calculate average queue occupancy or the allocations stat in order to calculate average queue latency. HA trackers are allocated as soon as a request enters the HA if a HT (Home Tracker) entry is available and is released after the snoop response and data return (or post in the case of a write) and the response is returned on the ring.", 3502667433c4SIan Rogers "UMask": "0x8", 3503667433c4SIan Rogers "Unit": "HA" 3504667433c4SIan Rogers }, 3505667433c4SIan Rogers { 35066e884dadSIan Rogers "BriefDescription": "Tracker Occupancy Accumulator; Local Write Requests", 350711c2302cSIan Rogers "Counter": "0,1,2,3", 3508667433c4SIan Rogers "EventCode": "0x4", 3509667433c4SIan Rogers "EventName": "UNC_H_TRACKER_OCCUPANCY.WRITES_LOCAL", 3510667433c4SIan Rogers "PerPkg": "1", 3511667433c4SIan Rogers "PublicDescription": "Accumulates the occupancy of the local HA tracker pool in every cycle. This can be used in conjection with the not empty stat to calculate average queue occupancy or the allocations stat in order to calculate average queue latency. HA trackers are allocated as soon as a request enters the HA if a HT (Home Tracker) entry is available and is released after the snoop response and data return (or post in the case of a write) and the response is returned on the ring.", 3512667433c4SIan Rogers "UMask": "0x10", 3513667433c4SIan Rogers "Unit": "HA" 3514667433c4SIan Rogers }, 3515667433c4SIan Rogers { 35166e884dadSIan Rogers "BriefDescription": "Tracker Occupancy Accumulator; Remote Write Requests", 351711c2302cSIan Rogers "Counter": "0,1,2,3", 3518667433c4SIan Rogers "EventCode": "0x4", 3519667433c4SIan Rogers "EventName": "UNC_H_TRACKER_OCCUPANCY.WRITES_REMOTE", 3520667433c4SIan Rogers "PerPkg": "1", 3521667433c4SIan Rogers "PublicDescription": "Accumulates the occupancy of the local HA tracker pool in every cycle. This can be used in conjection with the not empty stat to calculate average queue occupancy or the allocations stat in order to calculate average queue latency. HA trackers are allocated as soon as a request enters the HA if a HT (Home Tracker) entry is available and is released after the snoop response and data return (or post in the case of a write) and the response is returned on the ring.", 3522667433c4SIan Rogers "UMask": "0x20", 3523667433c4SIan Rogers "Unit": "HA" 3524667433c4SIan Rogers }, 3525667433c4SIan Rogers { 35266e884dadSIan Rogers "BriefDescription": "Data Pending Occupancy Accumulator; Local Requests", 352711c2302cSIan Rogers "Counter": "0,1,2,3", 3528667433c4SIan Rogers "EventCode": "0x5", 3529667433c4SIan Rogers "EventName": "UNC_H_TRACKER_PENDING_OCCUPANCY.LOCAL", 3530667433c4SIan Rogers "PerPkg": "1", 3531667433c4SIan Rogers "PublicDescription": "Accumulates the number of transactions that have data from the memory controller until they get scheduled to the Egress. This can be used to calculate the queuing latency for two things. (1) If the system is waiting for snoops, this will increase. (2) If the system can't schedule to the Egress because of either (a) Egress Credits or (b) QPI BL IGR credits for remote requests.; This filter includes only requests coming from the local socket.", 3532667433c4SIan Rogers "UMask": "0x1", 3533667433c4SIan Rogers "Unit": "HA" 3534667433c4SIan Rogers }, 3535667433c4SIan Rogers { 35366e884dadSIan Rogers "BriefDescription": "Data Pending Occupancy Accumulator; Remote Requests", 353711c2302cSIan Rogers "Counter": "0,1,2,3", 3538667433c4SIan Rogers "EventCode": "0x5", 3539667433c4SIan Rogers "EventName": "UNC_H_TRACKER_PENDING_OCCUPANCY.REMOTE", 3540667433c4SIan Rogers "PerPkg": "1", 3541667433c4SIan Rogers "PublicDescription": "Accumulates the number of transactions that have data from the memory controller until they get scheduled to the Egress. This can be used to calculate the queuing latency for two things. (1) If the system is waiting for snoops, this will increase. (2) If the system can't schedule to the Egress because of either (a) Egress Credits or (b) QPI BL IGR credits for remote requests.; This filter includes only requests coming from remote sockets.", 3542667433c4SIan Rogers "UMask": "0x2", 3543667433c4SIan Rogers "Unit": "HA" 3544667433c4SIan Rogers }, 3545667433c4SIan Rogers { 3546667433c4SIan Rogers "BriefDescription": "Outbound NDR Ring Transactions; Non-data Responses", 354711c2302cSIan Rogers "Counter": "0,1,2,3", 3548667433c4SIan Rogers "EventCode": "0xF", 3549667433c4SIan Rogers "EventName": "UNC_H_TxR_AD.HOM", 3550667433c4SIan Rogers "PerPkg": "1", 3551667433c4SIan Rogers "PublicDescription": "Counts the number of outbound transactions on the AD ring. This can be filtered by the NDR and SNP message classes. See the filter descriptions for more details.; Filter for outbound NDR transactions sent on the AD ring. NDR stands for non-data response and is generally used for completions that do not include data. AD NDR is used for transactions to remote sockets.", 3552667433c4SIan Rogers "UMask": "0x4", 3553667433c4SIan Rogers "Unit": "HA" 3554667433c4SIan Rogers }, 3555667433c4SIan Rogers { 3556667433c4SIan Rogers "BriefDescription": "AD Egress Full; All", 355711c2302cSIan Rogers "Counter": "0,1,2,3", 3558667433c4SIan Rogers "EventCode": "0x2A", 3559667433c4SIan Rogers "EventName": "UNC_H_TxR_AD_CYCLES_FULL.ALL", 3560667433c4SIan Rogers "PerPkg": "1", 3561667433c4SIan Rogers "PublicDescription": "AD Egress Full; Cycles full from both schedulers", 3562bedd1738SZhengjun Xing "UMask": "0x3", 3563bedd1738SZhengjun Xing "Unit": "HA" 3564667433c4SIan Rogers }, 3565667433c4SIan Rogers { 3566667433c4SIan Rogers "BriefDescription": "AD Egress Full; Scheduler 0", 356711c2302cSIan Rogers "Counter": "0,1,2,3", 3568667433c4SIan Rogers "EventCode": "0x2A", 3569667433c4SIan Rogers "EventName": "UNC_H_TxR_AD_CYCLES_FULL.SCHED0", 3570667433c4SIan Rogers "PerPkg": "1", 3571667433c4SIan Rogers "PublicDescription": "AD Egress Full; Filter for cycles full from scheduler bank 0", 3572667433c4SIan Rogers "UMask": "0x1", 3573667433c4SIan Rogers "Unit": "HA" 3574667433c4SIan Rogers }, 3575667433c4SIan Rogers { 3576667433c4SIan Rogers "BriefDescription": "AD Egress Full; Scheduler 1", 357711c2302cSIan Rogers "Counter": "0,1,2,3", 3578667433c4SIan Rogers "EventCode": "0x2A", 3579667433c4SIan Rogers "EventName": "UNC_H_TxR_AD_CYCLES_FULL.SCHED1", 3580667433c4SIan Rogers "PerPkg": "1", 3581667433c4SIan Rogers "PublicDescription": "AD Egress Full; Filter for cycles full from scheduler bank 1", 3582667433c4SIan Rogers "UMask": "0x2", 3583667433c4SIan Rogers "Unit": "HA" 3584667433c4SIan Rogers }, 3585667433c4SIan Rogers { 3586667433c4SIan Rogers "BriefDescription": "AD Egress Not Empty; All", 358711c2302cSIan Rogers "Counter": "0,1,2,3", 3588667433c4SIan Rogers "EventCode": "0x29", 3589667433c4SIan Rogers "EventName": "UNC_H_TxR_AD_CYCLES_NE.ALL", 3590667433c4SIan Rogers "PerPkg": "1", 3591667433c4SIan Rogers "PublicDescription": "AD Egress Not Empty; Cycles full from both schedulers", 3592667433c4SIan Rogers "UMask": "0x3", 3593667433c4SIan Rogers "Unit": "HA" 3594667433c4SIan Rogers }, 3595667433c4SIan Rogers { 3596667433c4SIan Rogers "BriefDescription": "AD Egress Not Empty; Scheduler 0", 359711c2302cSIan Rogers "Counter": "0,1,2,3", 3598667433c4SIan Rogers "EventCode": "0x29", 3599667433c4SIan Rogers "EventName": "UNC_H_TxR_AD_CYCLES_NE.SCHED0", 3600667433c4SIan Rogers "PerPkg": "1", 3601667433c4SIan Rogers "PublicDescription": "AD Egress Not Empty; Filter for cycles not empty from scheduler bank 0", 3602667433c4SIan Rogers "UMask": "0x1", 3603667433c4SIan Rogers "Unit": "HA" 3604667433c4SIan Rogers }, 3605667433c4SIan Rogers { 3606667433c4SIan Rogers "BriefDescription": "AD Egress Not Empty; Scheduler 1", 360711c2302cSIan Rogers "Counter": "0,1,2,3", 3608667433c4SIan Rogers "EventCode": "0x29", 3609667433c4SIan Rogers "EventName": "UNC_H_TxR_AD_CYCLES_NE.SCHED1", 3610667433c4SIan Rogers "PerPkg": "1", 3611667433c4SIan Rogers "PublicDescription": "AD Egress Not Empty; Filter for cycles not empty from scheduler bank 1", 3612667433c4SIan Rogers "UMask": "0x2", 3613667433c4SIan Rogers "Unit": "HA" 3614667433c4SIan Rogers }, 3615667433c4SIan Rogers { 3616667433c4SIan Rogers "BriefDescription": "AD Egress Allocations; All", 361711c2302cSIan Rogers "Counter": "0,1,2,3", 3618667433c4SIan Rogers "EventCode": "0x27", 3619667433c4SIan Rogers "EventName": "UNC_H_TxR_AD_INSERTS.ALL", 3620667433c4SIan Rogers "PerPkg": "1", 3621667433c4SIan Rogers "PublicDescription": "AD Egress Allocations; Allocations from both schedulers", 3622667433c4SIan Rogers "UMask": "0x3", 3623667433c4SIan Rogers "Unit": "HA" 3624667433c4SIan Rogers }, 3625667433c4SIan Rogers { 3626667433c4SIan Rogers "BriefDescription": "AD Egress Allocations; Scheduler 0", 362711c2302cSIan Rogers "Counter": "0,1,2,3", 3628667433c4SIan Rogers "EventCode": "0x27", 3629667433c4SIan Rogers "EventName": "UNC_H_TxR_AD_INSERTS.SCHED0", 3630667433c4SIan Rogers "PerPkg": "1", 3631667433c4SIan Rogers "PublicDescription": "AD Egress Allocations; Filter for allocations from scheduler bank 0", 3632667433c4SIan Rogers "UMask": "0x1", 3633667433c4SIan Rogers "Unit": "HA" 3634667433c4SIan Rogers }, 3635667433c4SIan Rogers { 3636667433c4SIan Rogers "BriefDescription": "AD Egress Allocations; Scheduler 1", 363711c2302cSIan Rogers "Counter": "0,1,2,3", 3638667433c4SIan Rogers "EventCode": "0x27", 3639667433c4SIan Rogers "EventName": "UNC_H_TxR_AD_INSERTS.SCHED1", 3640667433c4SIan Rogers "PerPkg": "1", 3641667433c4SIan Rogers "PublicDescription": "AD Egress Allocations; Filter for allocations from scheduler bank 1", 3642667433c4SIan Rogers "UMask": "0x2", 3643667433c4SIan Rogers "Unit": "HA" 3644667433c4SIan Rogers }, 3645667433c4SIan Rogers { 3646667433c4SIan Rogers "BriefDescription": "AK Egress Full; All", 364711c2302cSIan Rogers "Counter": "0,1,2,3", 3648667433c4SIan Rogers "EventCode": "0x32", 3649667433c4SIan Rogers "EventName": "UNC_H_TxR_AK_CYCLES_FULL.ALL", 3650667433c4SIan Rogers "PerPkg": "1", 3651667433c4SIan Rogers "PublicDescription": "AK Egress Full; Cycles full from both schedulers", 3652667433c4SIan Rogers "UMask": "0x3", 3653667433c4SIan Rogers "Unit": "HA" 3654667433c4SIan Rogers }, 3655667433c4SIan Rogers { 3656667433c4SIan Rogers "BriefDescription": "AK Egress Full; Scheduler 0", 365711c2302cSIan Rogers "Counter": "0,1,2,3", 3658667433c4SIan Rogers "EventCode": "0x32", 3659667433c4SIan Rogers "EventName": "UNC_H_TxR_AK_CYCLES_FULL.SCHED0", 3660667433c4SIan Rogers "PerPkg": "1", 3661667433c4SIan Rogers "PublicDescription": "AK Egress Full; Filter for cycles full from scheduler bank 0", 3662667433c4SIan Rogers "UMask": "0x1", 3663667433c4SIan Rogers "Unit": "HA" 3664667433c4SIan Rogers }, 3665667433c4SIan Rogers { 3666667433c4SIan Rogers "BriefDescription": "AK Egress Full; Scheduler 1", 366711c2302cSIan Rogers "Counter": "0,1,2,3", 3668667433c4SIan Rogers "EventCode": "0x32", 3669667433c4SIan Rogers "EventName": "UNC_H_TxR_AK_CYCLES_FULL.SCHED1", 3670667433c4SIan Rogers "PerPkg": "1", 3671667433c4SIan Rogers "PublicDescription": "AK Egress Full; Filter for cycles full from scheduler bank 1", 3672667433c4SIan Rogers "UMask": "0x2", 3673667433c4SIan Rogers "Unit": "HA" 3674667433c4SIan Rogers }, 3675667433c4SIan Rogers { 3676667433c4SIan Rogers "BriefDescription": "AK Egress Not Empty; All", 367711c2302cSIan Rogers "Counter": "0,1,2,3", 3678667433c4SIan Rogers "EventCode": "0x31", 3679667433c4SIan Rogers "EventName": "UNC_H_TxR_AK_CYCLES_NE.ALL", 3680667433c4SIan Rogers "PerPkg": "1", 3681667433c4SIan Rogers "PublicDescription": "AK Egress Not Empty; Cycles full from both schedulers", 3682667433c4SIan Rogers "UMask": "0x3", 3683667433c4SIan Rogers "Unit": "HA" 3684667433c4SIan Rogers }, 3685667433c4SIan Rogers { 3686667433c4SIan Rogers "BriefDescription": "AK Egress Not Empty; Scheduler 0", 368711c2302cSIan Rogers "Counter": "0,1,2,3", 3688667433c4SIan Rogers "EventCode": "0x31", 3689667433c4SIan Rogers "EventName": "UNC_H_TxR_AK_CYCLES_NE.SCHED0", 3690667433c4SIan Rogers "PerPkg": "1", 3691667433c4SIan Rogers "PublicDescription": "AK Egress Not Empty; Filter for cycles not empty from scheduler bank 0", 3692667433c4SIan Rogers "UMask": "0x1", 3693667433c4SIan Rogers "Unit": "HA" 3694667433c4SIan Rogers }, 3695667433c4SIan Rogers { 3696667433c4SIan Rogers "BriefDescription": "AK Egress Not Empty; Scheduler 1", 369711c2302cSIan Rogers "Counter": "0,1,2,3", 3698667433c4SIan Rogers "EventCode": "0x31", 3699667433c4SIan Rogers "EventName": "UNC_H_TxR_AK_CYCLES_NE.SCHED1", 3700667433c4SIan Rogers "PerPkg": "1", 3701667433c4SIan Rogers "PublicDescription": "AK Egress Not Empty; Filter for cycles not empty from scheduler bank 1", 3702667433c4SIan Rogers "UMask": "0x2", 3703667433c4SIan Rogers "Unit": "HA" 3704667433c4SIan Rogers }, 3705667433c4SIan Rogers { 3706667433c4SIan Rogers "BriefDescription": "AK Egress Allocations; All", 370711c2302cSIan Rogers "Counter": "0,1,2,3", 3708667433c4SIan Rogers "EventCode": "0x2F", 3709667433c4SIan Rogers "EventName": "UNC_H_TxR_AK_INSERTS.ALL", 3710667433c4SIan Rogers "PerPkg": "1", 3711667433c4SIan Rogers "PublicDescription": "AK Egress Allocations; Allocations from both schedulers", 3712667433c4SIan Rogers "UMask": "0x3", 3713667433c4SIan Rogers "Unit": "HA" 3714667433c4SIan Rogers }, 3715667433c4SIan Rogers { 3716667433c4SIan Rogers "BriefDescription": "AK Egress Allocations; Scheduler 0", 371711c2302cSIan Rogers "Counter": "0,1,2,3", 3718667433c4SIan Rogers "EventCode": "0x2F", 3719667433c4SIan Rogers "EventName": "UNC_H_TxR_AK_INSERTS.SCHED0", 3720667433c4SIan Rogers "PerPkg": "1", 3721667433c4SIan Rogers "PublicDescription": "AK Egress Allocations; Filter for allocations from scheduler bank 0", 3722667433c4SIan Rogers "UMask": "0x1", 3723667433c4SIan Rogers "Unit": "HA" 3724667433c4SIan Rogers }, 3725667433c4SIan Rogers { 3726667433c4SIan Rogers "BriefDescription": "AK Egress Allocations; Scheduler 1", 372711c2302cSIan Rogers "Counter": "0,1,2,3", 3728667433c4SIan Rogers "EventCode": "0x2F", 3729667433c4SIan Rogers "EventName": "UNC_H_TxR_AK_INSERTS.SCHED1", 3730667433c4SIan Rogers "PerPkg": "1", 3731667433c4SIan Rogers "PublicDescription": "AK Egress Allocations; Filter for allocations from scheduler bank 1", 3732667433c4SIan Rogers "UMask": "0x2", 3733667433c4SIan Rogers "Unit": "HA" 3734667433c4SIan Rogers }, 3735667433c4SIan Rogers { 3736667433c4SIan Rogers "BriefDescription": "Outbound DRS Ring Transactions to Cache; Data to Cache", 373711c2302cSIan Rogers "Counter": "0,1,2,3", 3738667433c4SIan Rogers "EventCode": "0x10", 3739667433c4SIan Rogers "EventName": "UNC_H_TxR_BL.DRS_CACHE", 3740667433c4SIan Rogers "PerPkg": "1", 3741667433c4SIan Rogers "PublicDescription": "Counts the number of DRS messages sent out on the BL ring. This can be filtered by the destination.; Filter for data being sent to the cache.", 3742667433c4SIan Rogers "UMask": "0x1", 3743667433c4SIan Rogers "Unit": "HA" 3744667433c4SIan Rogers }, 3745667433c4SIan Rogers { 3746667433c4SIan Rogers "BriefDescription": "Outbound DRS Ring Transactions to Cache; Data to Core", 374711c2302cSIan Rogers "Counter": "0,1,2,3", 3748667433c4SIan Rogers "EventCode": "0x10", 3749667433c4SIan Rogers "EventName": "UNC_H_TxR_BL.DRS_CORE", 3750667433c4SIan Rogers "PerPkg": "1", 3751667433c4SIan Rogers "PublicDescription": "Counts the number of DRS messages sent out on the BL ring. This can be filtered by the destination.; Filter for data being sent directly to the requesting core.", 3752667433c4SIan Rogers "UMask": "0x2", 3753667433c4SIan Rogers "Unit": "HA" 3754667433c4SIan Rogers }, 3755667433c4SIan Rogers { 3756667433c4SIan Rogers "BriefDescription": "Outbound DRS Ring Transactions to Cache; Data to QPI", 375711c2302cSIan Rogers "Counter": "0,1,2,3", 3758667433c4SIan Rogers "EventCode": "0x10", 3759667433c4SIan Rogers "EventName": "UNC_H_TxR_BL.DRS_QPI", 3760667433c4SIan Rogers "PerPkg": "1", 3761667433c4SIan Rogers "PublicDescription": "Counts the number of DRS messages sent out on the BL ring. This can be filtered by the destination.; Filter for data being sent to a remote socket over QPI.", 3762667433c4SIan Rogers "UMask": "0x4", 3763667433c4SIan Rogers "Unit": "HA" 3764667433c4SIan Rogers }, 3765667433c4SIan Rogers { 3766667433c4SIan Rogers "BriefDescription": "BL Egress Full; All", 376711c2302cSIan Rogers "Counter": "0,1,2,3", 3768667433c4SIan Rogers "EventCode": "0x36", 3769667433c4SIan Rogers "EventName": "UNC_H_TxR_BL_CYCLES_FULL.ALL", 3770667433c4SIan Rogers "PerPkg": "1", 3771667433c4SIan Rogers "PublicDescription": "BL Egress Full; Cycles full from both schedulers", 3772667433c4SIan Rogers "UMask": "0x3", 3773667433c4SIan Rogers "Unit": "HA" 3774667433c4SIan Rogers }, 3775667433c4SIan Rogers { 3776667433c4SIan Rogers "BriefDescription": "BL Egress Full; Scheduler 0", 377711c2302cSIan Rogers "Counter": "0,1,2,3", 3778667433c4SIan Rogers "EventCode": "0x36", 3779667433c4SIan Rogers "EventName": "UNC_H_TxR_BL_CYCLES_FULL.SCHED0", 3780667433c4SIan Rogers "PerPkg": "1", 3781667433c4SIan Rogers "PublicDescription": "BL Egress Full; Filter for cycles full from scheduler bank 0", 3782667433c4SIan Rogers "UMask": "0x1", 3783667433c4SIan Rogers "Unit": "HA" 3784667433c4SIan Rogers }, 3785667433c4SIan Rogers { 3786667433c4SIan Rogers "BriefDescription": "BL Egress Full; Scheduler 1", 378711c2302cSIan Rogers "Counter": "0,1,2,3", 3788667433c4SIan Rogers "EventCode": "0x36", 3789667433c4SIan Rogers "EventName": "UNC_H_TxR_BL_CYCLES_FULL.SCHED1", 3790667433c4SIan Rogers "PerPkg": "1", 3791667433c4SIan Rogers "PublicDescription": "BL Egress Full; Filter for cycles full from scheduler bank 1", 3792667433c4SIan Rogers "UMask": "0x2", 3793667433c4SIan Rogers "Unit": "HA" 3794667433c4SIan Rogers }, 3795667433c4SIan Rogers { 3796667433c4SIan Rogers "BriefDescription": "BL Egress Not Empty; All", 379711c2302cSIan Rogers "Counter": "0,1,2,3", 3798667433c4SIan Rogers "EventCode": "0x35", 3799667433c4SIan Rogers "EventName": "UNC_H_TxR_BL_CYCLES_NE.ALL", 3800667433c4SIan Rogers "PerPkg": "1", 3801667433c4SIan Rogers "PublicDescription": "BL Egress Not Empty; Cycles full from both schedulers", 3802667433c4SIan Rogers "UMask": "0x3", 3803667433c4SIan Rogers "Unit": "HA" 3804667433c4SIan Rogers }, 3805667433c4SIan Rogers { 3806667433c4SIan Rogers "BriefDescription": "BL Egress Not Empty; Scheduler 0", 380711c2302cSIan Rogers "Counter": "0,1,2,3", 3808667433c4SIan Rogers "EventCode": "0x35", 3809667433c4SIan Rogers "EventName": "UNC_H_TxR_BL_CYCLES_NE.SCHED0", 3810667433c4SIan Rogers "PerPkg": "1", 3811667433c4SIan Rogers "PublicDescription": "BL Egress Not Empty; Filter for cycles not empty from scheduler bank 0", 3812667433c4SIan Rogers "UMask": "0x1", 3813667433c4SIan Rogers "Unit": "HA" 3814667433c4SIan Rogers }, 3815667433c4SIan Rogers { 3816667433c4SIan Rogers "BriefDescription": "BL Egress Not Empty; Scheduler 1", 381711c2302cSIan Rogers "Counter": "0,1,2,3", 3818667433c4SIan Rogers "EventCode": "0x35", 3819667433c4SIan Rogers "EventName": "UNC_H_TxR_BL_CYCLES_NE.SCHED1", 3820667433c4SIan Rogers "PerPkg": "1", 3821667433c4SIan Rogers "PublicDescription": "BL Egress Not Empty; Filter for cycles not empty from scheduler bank 1", 3822667433c4SIan Rogers "UMask": "0x2", 3823667433c4SIan Rogers "Unit": "HA" 3824667433c4SIan Rogers }, 3825667433c4SIan Rogers { 3826667433c4SIan Rogers "BriefDescription": "BL Egress Allocations; All", 382711c2302cSIan Rogers "Counter": "0,1,2,3", 3828667433c4SIan Rogers "EventCode": "0x33", 3829667433c4SIan Rogers "EventName": "UNC_H_TxR_BL_INSERTS.ALL", 3830667433c4SIan Rogers "PerPkg": "1", 3831667433c4SIan Rogers "PublicDescription": "BL Egress Allocations; Allocations from both schedulers", 3832667433c4SIan Rogers "UMask": "0x3", 3833667433c4SIan Rogers "Unit": "HA" 3834667433c4SIan Rogers }, 3835667433c4SIan Rogers { 3836667433c4SIan Rogers "BriefDescription": "BL Egress Allocations; Scheduler 0", 383711c2302cSIan Rogers "Counter": "0,1,2,3", 3838667433c4SIan Rogers "EventCode": "0x33", 3839667433c4SIan Rogers "EventName": "UNC_H_TxR_BL_INSERTS.SCHED0", 3840667433c4SIan Rogers "PerPkg": "1", 3841667433c4SIan Rogers "PublicDescription": "BL Egress Allocations; Filter for allocations from scheduler bank 0", 3842667433c4SIan Rogers "UMask": "0x1", 3843667433c4SIan Rogers "Unit": "HA" 3844667433c4SIan Rogers }, 3845667433c4SIan Rogers { 3846667433c4SIan Rogers "BriefDescription": "BL Egress Allocations; Scheduler 1", 384711c2302cSIan Rogers "Counter": "0,1,2,3", 3848667433c4SIan Rogers "EventCode": "0x33", 3849667433c4SIan Rogers "EventName": "UNC_H_TxR_BL_INSERTS.SCHED1", 3850667433c4SIan Rogers "PerPkg": "1", 3851667433c4SIan Rogers "PublicDescription": "BL Egress Allocations; Filter for allocations from scheduler bank 1", 3852667433c4SIan Rogers "UMask": "0x2", 3853667433c4SIan Rogers "Unit": "HA" 3854667433c4SIan Rogers }, 3855667433c4SIan Rogers { 3856667433c4SIan Rogers "BriefDescription": "Injection Starvation; For AK Ring", 385711c2302cSIan Rogers "Counter": "0,1,2,3", 3858667433c4SIan Rogers "EventCode": "0x6D", 3859667433c4SIan Rogers "EventName": "UNC_H_TxR_STARVED.AK", 3860667433c4SIan Rogers "PerPkg": "1", 3861667433c4SIan Rogers "PublicDescription": "Counts injection starvation. This starvation is triggered when the Egress cannot send a transaction onto the ring for a long period of time.", 3862667433c4SIan Rogers "UMask": "0x1", 3863667433c4SIan Rogers "Unit": "HA" 3864667433c4SIan Rogers }, 3865667433c4SIan Rogers { 3866667433c4SIan Rogers "BriefDescription": "Injection Starvation; For BL Ring", 386711c2302cSIan Rogers "Counter": "0,1,2,3", 3868667433c4SIan Rogers "EventCode": "0x6D", 3869667433c4SIan Rogers "EventName": "UNC_H_TxR_STARVED.BL", 3870667433c4SIan Rogers "PerPkg": "1", 3871667433c4SIan Rogers "PublicDescription": "Counts injection starvation. This starvation is triggered when the Egress cannot send a transaction onto the ring for a long period of time.", 3872667433c4SIan Rogers "UMask": "0x2", 3873667433c4SIan Rogers "Unit": "HA" 3874667433c4SIan Rogers }, 3875667433c4SIan Rogers { 3876667433c4SIan Rogers "BriefDescription": "HA iMC CHN0 WPQ Credits Empty - Regular; Channel 0", 387711c2302cSIan Rogers "Counter": "0,1,2,3", 3878667433c4SIan Rogers "EventCode": "0x18", 3879667433c4SIan Rogers "EventName": "UNC_H_WPQ_CYCLES_NO_REG_CREDITS.CHN0", 3880667433c4SIan Rogers "PerPkg": "1", 3881*be67d89fSIan Rogers "PublicDescription": "Counts the number of cycles when there are no regular credits available for posting writes from the HA into the iMC. In order to send writes into the memory controller, the HA must first acquire a credit for the iMC's WPQ (write pending queue). This queue is broken into regular credits/buffers that are used by general writes, and special requests such as ISOCH writes. This count only tracks the regular credits Common high bandwidth workloads should be able to make use of all of the regular buffers, but it will be difficult (and uncommon) to make use of both the regular and special buffers at the same time. One can filter based on the memory controller channel. One or more channels can be tracked at a given time.; Filter for memory controller channel 0 only.", 3882667433c4SIan Rogers "UMask": "0x1", 3883667433c4SIan Rogers "Unit": "HA" 3884667433c4SIan Rogers }, 3885667433c4SIan Rogers { 3886667433c4SIan Rogers "BriefDescription": "HA iMC CHN0 WPQ Credits Empty - Regular; Channel 1", 388711c2302cSIan Rogers "Counter": "0,1,2,3", 3888667433c4SIan Rogers "EventCode": "0x18", 3889667433c4SIan Rogers "EventName": "UNC_H_WPQ_CYCLES_NO_REG_CREDITS.CHN1", 3890667433c4SIan Rogers "PerPkg": "1", 3891*be67d89fSIan Rogers "PublicDescription": "Counts the number of cycles when there are no regular credits available for posting writes from the HA into the iMC. In order to send writes into the memory controller, the HA must first acquire a credit for the iMC's WPQ (write pending queue). This queue is broken into regular credits/buffers that are used by general writes, and special requests such as ISOCH writes. This count only tracks the regular credits Common high bandwidth workloads should be able to make use of all of the regular buffers, but it will be difficult (and uncommon) to make use of both the regular and special buffers at the same time. One can filter based on the memory controller channel. One or more channels can be tracked at a given time.; Filter for memory controller channel 1 only.", 3892667433c4SIan Rogers "UMask": "0x2", 3893667433c4SIan Rogers "Unit": "HA" 3894667433c4SIan Rogers }, 3895667433c4SIan Rogers { 3896667433c4SIan Rogers "BriefDescription": "HA iMC CHN0 WPQ Credits Empty - Regular; Channel 2", 389711c2302cSIan Rogers "Counter": "0,1,2,3", 3898667433c4SIan Rogers "EventCode": "0x18", 3899667433c4SIan Rogers "EventName": "UNC_H_WPQ_CYCLES_NO_REG_CREDITS.CHN2", 3900667433c4SIan Rogers "PerPkg": "1", 3901*be67d89fSIan Rogers "PublicDescription": "Counts the number of cycles when there are no regular credits available for posting writes from the HA into the iMC. In order to send writes into the memory controller, the HA must first acquire a credit for the iMC's WPQ (write pending queue). This queue is broken into regular credits/buffers that are used by general writes, and special requests such as ISOCH writes. This count only tracks the regular credits Common high bandwidth workloads should be able to make use of all of the regular buffers, but it will be difficult (and uncommon) to make use of both the regular and special buffers at the same time. One can filter based on the memory controller channel. One or more channels can be tracked at a given time.; Filter for memory controller channel 2 only.", 3902667433c4SIan Rogers "UMask": "0x4", 3903667433c4SIan Rogers "Unit": "HA" 3904667433c4SIan Rogers }, 3905667433c4SIan Rogers { 3906667433c4SIan Rogers "BriefDescription": "HA iMC CHN0 WPQ Credits Empty - Regular; Channel 3", 390711c2302cSIan Rogers "Counter": "0,1,2,3", 3908667433c4SIan Rogers "EventCode": "0x18", 3909667433c4SIan Rogers "EventName": "UNC_H_WPQ_CYCLES_NO_REG_CREDITS.CHN3", 3910667433c4SIan Rogers "PerPkg": "1", 3911*be67d89fSIan Rogers "PublicDescription": "Counts the number of cycles when there are no regular credits available for posting writes from the HA into the iMC. In order to send writes into the memory controller, the HA must first acquire a credit for the iMC's WPQ (write pending queue). This queue is broken into regular credits/buffers that are used by general writes, and special requests such as ISOCH writes. This count only tracks the regular credits Common high bandwidth workloads should be able to make use of all of the regular buffers, but it will be difficult (and uncommon) to make use of both the regular and special buffers at the same time. One can filter based on the memory controller channel. One or more channels can be tracked at a given time.; Filter for memory controller channel 3 only.", 3912667433c4SIan Rogers "UMask": "0x8", 3913667433c4SIan Rogers "Unit": "HA" 3914667433c4SIan Rogers }, 3915667433c4SIan Rogers { 3916667433c4SIan Rogers "BriefDescription": "HA iMC CHN0 WPQ Credits Empty - Special; Channel 0", 391711c2302cSIan Rogers "Counter": "0,1,2,3", 3918667433c4SIan Rogers "EventCode": "0x19", 3919667433c4SIan Rogers "EventName": "UNC_H_WPQ_CYCLES_NO_SPEC_CREDITS.CHN0", 3920667433c4SIan Rogers "PerPkg": "1", 3921667433c4SIan Rogers "PublicDescription": "Counts the number of cycles when there are no special credits available for posting writes from the HA into the iMC. In order to send writes into the memory controller, the HA must first acquire a credit for the iMC's WPQ (write pending queue). This queue is broken into regular credits/buffers that are used by general writes, and special requests such as ISOCH writes. This count only tracks the special credits. This statistic is generally not interesting for general IA workloads, but may be of interest for understanding the characteristics of systems using ISOCH. One can filter based on the memory controller channel. One or more channels can be tracked at a given time.; Filter for memory controller channel 0 only.", 3922667433c4SIan Rogers "UMask": "0x1", 3923667433c4SIan Rogers "Unit": "HA" 3924667433c4SIan Rogers }, 3925667433c4SIan Rogers { 3926667433c4SIan Rogers "BriefDescription": "HA iMC CHN0 WPQ Credits Empty - Special; Channel 1", 392711c2302cSIan Rogers "Counter": "0,1,2,3", 3928667433c4SIan Rogers "EventCode": "0x19", 3929667433c4SIan Rogers "EventName": "UNC_H_WPQ_CYCLES_NO_SPEC_CREDITS.CHN1", 3930667433c4SIan Rogers "PerPkg": "1", 3931667433c4SIan Rogers "PublicDescription": "Counts the number of cycles when there are no special credits available for posting writes from the HA into the iMC. In order to send writes into the memory controller, the HA must first acquire a credit for the iMC's WPQ (write pending queue). This queue is broken into regular credits/buffers that are used by general writes, and special requests such as ISOCH writes. This count only tracks the special credits. This statistic is generally not interesting for general IA workloads, but may be of interest for understanding the characteristics of systems using ISOCH. One can filter based on the memory controller channel. One or more channels can be tracked at a given time.; Filter for memory controller channel 1 only.", 3932667433c4SIan Rogers "UMask": "0x2", 3933667433c4SIan Rogers "Unit": "HA" 3934667433c4SIan Rogers }, 3935667433c4SIan Rogers { 3936667433c4SIan Rogers "BriefDescription": "HA iMC CHN0 WPQ Credits Empty - Special; Channel 2", 393711c2302cSIan Rogers "Counter": "0,1,2,3", 3938667433c4SIan Rogers "EventCode": "0x19", 3939667433c4SIan Rogers "EventName": "UNC_H_WPQ_CYCLES_NO_SPEC_CREDITS.CHN2", 3940667433c4SIan Rogers "PerPkg": "1", 3941667433c4SIan Rogers "PublicDescription": "Counts the number of cycles when there are no special credits available for posting writes from the HA into the iMC. In order to send writes into the memory controller, the HA must first acquire a credit for the iMC's WPQ (write pending queue). This queue is broken into regular credits/buffers that are used by general writes, and special requests such as ISOCH writes. This count only tracks the special credits. This statistic is generally not interesting for general IA workloads, but may be of interest for understanding the characteristics of systems using ISOCH. One can filter based on the memory controller channel. One or more channels can be tracked at a given time.; Filter for memory controller channel 2 only.", 3942667433c4SIan Rogers "UMask": "0x4", 3943667433c4SIan Rogers "Unit": "HA" 3944667433c4SIan Rogers }, 3945667433c4SIan Rogers { 3946667433c4SIan Rogers "BriefDescription": "HA iMC CHN0 WPQ Credits Empty - Special; Channel 3", 394711c2302cSIan Rogers "Counter": "0,1,2,3", 3948667433c4SIan Rogers "EventCode": "0x19", 3949667433c4SIan Rogers "EventName": "UNC_H_WPQ_CYCLES_NO_SPEC_CREDITS.CHN3", 3950667433c4SIan Rogers "PerPkg": "1", 3951667433c4SIan Rogers "PublicDescription": "Counts the number of cycles when there are no special credits available for posting writes from the HA into the iMC. In order to send writes into the memory controller, the HA must first acquire a credit for the iMC's WPQ (write pending queue). This queue is broken into regular credits/buffers that are used by general writes, and special requests such as ISOCH writes. This count only tracks the special credits. This statistic is generally not interesting for general IA workloads, but may be of interest for understanding the characteristics of systems using ISOCH. One can filter based on the memory controller channel. One or more channels can be tracked at a given time.; Filter for memory controller channel 3 only.", 3952667433c4SIan Rogers "UMask": "0x8", 3953667433c4SIan Rogers "Unit": "HA" 39547003f00fSAndi Kleen } 39557003f00fSAndi Kleen] 3956