1*7e3dbbacSRobert Mustacchi[ 2*7e3dbbacSRobert Mustacchi { 3*7e3dbbacSRobert Mustacchi "MATRIX_REQUEST": "DEMAND_DATA_RD", 4*7e3dbbacSRobert Mustacchi "MATRIX_RESPONSE": "Null", 5*7e3dbbacSRobert Mustacchi "MATRIX_VALUE": "0x0000000001", 6*7e3dbbacSRobert Mustacchi "MATRIX_REGISTER": "0,1", 7*7e3dbbacSRobert Mustacchi "DESCRIPTION": "Counts demand cacheable data and L1 prefetch data reads" 8*7e3dbbacSRobert Mustacchi }, 9*7e3dbbacSRobert Mustacchi { 10*7e3dbbacSRobert Mustacchi "MATRIX_REQUEST": "DEMAND_RFO", 11*7e3dbbacSRobert Mustacchi "MATRIX_RESPONSE": "Null", 12*7e3dbbacSRobert Mustacchi "MATRIX_VALUE": "0x0000000002", 13*7e3dbbacSRobert Mustacchi "MATRIX_REGISTER": "0,1", 14*7e3dbbacSRobert Mustacchi "DESCRIPTION": "Counts Demand cacheable data writes" 15*7e3dbbacSRobert Mustacchi }, 16*7e3dbbacSRobert Mustacchi { 17*7e3dbbacSRobert Mustacchi "MATRIX_REQUEST": "DEMAND_CODE_RD", 18*7e3dbbacSRobert Mustacchi "MATRIX_RESPONSE": "Null", 19*7e3dbbacSRobert Mustacchi "MATRIX_VALUE": "0x0000000004", 20*7e3dbbacSRobert Mustacchi "MATRIX_REGISTER": "0,1", 21*7e3dbbacSRobert Mustacchi "DESCRIPTION": "Counts demand code reads and prefetch code reads" 22*7e3dbbacSRobert Mustacchi }, 23*7e3dbbacSRobert Mustacchi { 24*7e3dbbacSRobert Mustacchi "MATRIX_REQUEST": "PF_L2_RFO", 25*7e3dbbacSRobert Mustacchi "MATRIX_RESPONSE": "Null", 26*7e3dbbacSRobert Mustacchi "MATRIX_VALUE": "0x0000000020", 27*7e3dbbacSRobert Mustacchi "MATRIX_REGISTER": "0,1", 28*7e3dbbacSRobert Mustacchi "DESCRIPTION": "Counts L2 data RFO prefetches (includes PREFETCHW instruction)" 29*7e3dbbacSRobert Mustacchi }, 30*7e3dbbacSRobert Mustacchi { 31*7e3dbbacSRobert Mustacchi "MATRIX_REQUEST": "PF_L2_CODE_RD", 32*7e3dbbacSRobert Mustacchi "MATRIX_RESPONSE": "Null", 33*7e3dbbacSRobert Mustacchi "MATRIX_VALUE": "0x0000000040", 34*7e3dbbacSRobert Mustacchi "MATRIX_REGISTER": "0,1", 35*7e3dbbacSRobert Mustacchi "DESCRIPTION": "Counts L2 code HW prefetches" 36*7e3dbbacSRobert Mustacchi }, 37*7e3dbbacSRobert Mustacchi { 38*7e3dbbacSRobert Mustacchi "MATRIX_REQUEST": "PARTIAL_READS", 39*7e3dbbacSRobert Mustacchi "MATRIX_RESPONSE": "Null", 40*7e3dbbacSRobert Mustacchi "MATRIX_VALUE": "0x0000000080", 41*7e3dbbacSRobert Mustacchi "MATRIX_REGISTER": "0,1", 42*7e3dbbacSRobert Mustacchi "DESCRIPTION": "Counts Partial reads (UC or WC and is valid only for Outstanding response type)." 43*7e3dbbacSRobert Mustacchi }, 44*7e3dbbacSRobert Mustacchi { 45*7e3dbbacSRobert Mustacchi "MATRIX_REQUEST": "PARTIAL_WRITES", 46*7e3dbbacSRobert Mustacchi "MATRIX_RESPONSE": "Null", 47*7e3dbbacSRobert Mustacchi "MATRIX_VALUE": "0x0000000100", 48*7e3dbbacSRobert Mustacchi "MATRIX_REGISTER": "1", 49*7e3dbbacSRobert Mustacchi "DESCRIPTION": "Counts Partial writes (UC or WT or WP and should be programmed on PMC1)" 50*7e3dbbacSRobert Mustacchi }, 51*7e3dbbacSRobert Mustacchi { 52*7e3dbbacSRobert Mustacchi "MATRIX_REQUEST": "UC_CODE_READS", 53*7e3dbbacSRobert Mustacchi "MATRIX_RESPONSE": "Null", 54*7e3dbbacSRobert Mustacchi "MATRIX_VALUE": "0x0000000200", 55*7e3dbbacSRobert Mustacchi "MATRIX_REGISTER": "0,1", 56*7e3dbbacSRobert Mustacchi "DESCRIPTION": "Counts UC code reads (valid only for Outstanding response type)" 57*7e3dbbacSRobert Mustacchi }, 58*7e3dbbacSRobert Mustacchi { 59*7e3dbbacSRobert Mustacchi "MATRIX_REQUEST": "BUS_LOCKS", 60*7e3dbbacSRobert Mustacchi "MATRIX_RESPONSE": "Null", 61*7e3dbbacSRobert Mustacchi "MATRIX_VALUE": "0x0000000400", 62*7e3dbbacSRobert Mustacchi "MATRIX_REGISTER": "0,1", 63*7e3dbbacSRobert Mustacchi "DESCRIPTION": "Counts Bus locks and split lock requests" 64*7e3dbbacSRobert Mustacchi }, 65*7e3dbbacSRobert Mustacchi { 66*7e3dbbacSRobert Mustacchi "MATRIX_REQUEST": "FULL_STREAMING_STORES", 67*7e3dbbacSRobert Mustacchi "MATRIX_RESPONSE": "Null", 68*7e3dbbacSRobert Mustacchi "MATRIX_VALUE": "0x0000000800", 69*7e3dbbacSRobert Mustacchi "MATRIX_REGISTER": "0,1", 70*7e3dbbacSRobert Mustacchi "DESCRIPTION": "Counts Full streaming stores (WC and should be programmed on PMC1)" 71*7e3dbbacSRobert Mustacchi }, 72*7e3dbbacSRobert Mustacchi { 73*7e3dbbacSRobert Mustacchi "MATRIX_REQUEST": "PF_SOFTWARE", 74*7e3dbbacSRobert Mustacchi "MATRIX_RESPONSE": "Null", 75*7e3dbbacSRobert Mustacchi "MATRIX_VALUE": "0x0000001000", 76*7e3dbbacSRobert Mustacchi "MATRIX_REGISTER": "0,1", 77*7e3dbbacSRobert Mustacchi "DESCRIPTION": "Counts Software Prefetches" 78*7e3dbbacSRobert Mustacchi }, 79*7e3dbbacSRobert Mustacchi { 80*7e3dbbacSRobert Mustacchi "MATRIX_REQUEST": "PF_L1_DATA_RD", 81*7e3dbbacSRobert Mustacchi "MATRIX_RESPONSE": "Null", 82*7e3dbbacSRobert Mustacchi "MATRIX_VALUE": "0x0000002000", 83*7e3dbbacSRobert Mustacchi "MATRIX_REGISTER": "0,1", 84*7e3dbbacSRobert Mustacchi "DESCRIPTION": "Counts L1 data HW prefetches" 85*7e3dbbacSRobert Mustacchi }, 86*7e3dbbacSRobert Mustacchi { 87*7e3dbbacSRobert Mustacchi "MATRIX_REQUEST": "PARTIAL_STREAMING_STORES", 88*7e3dbbacSRobert Mustacchi "MATRIX_RESPONSE": "Null", 89*7e3dbbacSRobert Mustacchi "MATRIX_VALUE": "0x0000004000", 90*7e3dbbacSRobert Mustacchi "MATRIX_REGISTER": "1", 91*7e3dbbacSRobert Mustacchi "DESCRIPTION": "Counts Partial streaming stores (WC and should be programmed on PMC1)" 92*7e3dbbacSRobert Mustacchi }, 93*7e3dbbacSRobert Mustacchi { 94*7e3dbbacSRobert Mustacchi "MATRIX_REQUEST": "STREAMING_STORES", 95*7e3dbbacSRobert Mustacchi "MATRIX_RESPONSE": "Null", 96*7e3dbbacSRobert Mustacchi "MATRIX_VALUE": "0x0000004800", 97*7e3dbbacSRobert Mustacchi "MATRIX_REGISTER": "1", 98*7e3dbbacSRobert Mustacchi "DESCRIPTION": "Counts all streaming stores (WC and should be programmed on PMC1)" 99*7e3dbbacSRobert Mustacchi }, 100*7e3dbbacSRobert Mustacchi { 101*7e3dbbacSRobert Mustacchi "MATRIX_REQUEST": "ANY_REQUEST", 102*7e3dbbacSRobert Mustacchi "MATRIX_RESPONSE": "Null", 103*7e3dbbacSRobert Mustacchi "MATRIX_VALUE": "0x0000008000", 104*7e3dbbacSRobert Mustacchi "MATRIX_REGISTER": "0,1", 105*7e3dbbacSRobert Mustacchi "DESCRIPTION": "Counts any request" 106*7e3dbbacSRobert Mustacchi }, 107*7e3dbbacSRobert Mustacchi { 108*7e3dbbacSRobert Mustacchi "MATRIX_REQUEST": "ANY_DATA_RD", 109*7e3dbbacSRobert Mustacchi "MATRIX_RESPONSE": "Null", 110*7e3dbbacSRobert Mustacchi "MATRIX_VALUE": "0x0000003081", 111*7e3dbbacSRobert Mustacchi "MATRIX_REGISTER": "0,1", 112*7e3dbbacSRobert Mustacchi "DESCRIPTION": "Counts Demand cacheable data and L1 prefetch data read requests" 113*7e3dbbacSRobert Mustacchi }, 114*7e3dbbacSRobert Mustacchi { 115*7e3dbbacSRobert Mustacchi "MATRIX_REQUEST": "ANY_RFO", 116*7e3dbbacSRobert Mustacchi "MATRIX_RESPONSE": "Null", 117*7e3dbbacSRobert Mustacchi "MATRIX_VALUE": "0x0000000022", 118*7e3dbbacSRobert Mustacchi "MATRIX_REGISTER": "0,1", 119*7e3dbbacSRobert Mustacchi "DESCRIPTION": "Counts Demand cacheable data write requests" 120*7e3dbbacSRobert Mustacchi }, 121*7e3dbbacSRobert Mustacchi { 122*7e3dbbacSRobert Mustacchi "MATRIX_REQUEST": "ANY_CODE_RD", 123*7e3dbbacSRobert Mustacchi "MATRIX_RESPONSE": "Null", 124*7e3dbbacSRobert Mustacchi "MATRIX_VALUE": "0x0000000044", 125*7e3dbbacSRobert Mustacchi "MATRIX_REGISTER": "0,1", 126*7e3dbbacSRobert Mustacchi "DESCRIPTION": "Counts Demand code reads and prefetch code read requests" 127*7e3dbbacSRobert Mustacchi }, 128*7e3dbbacSRobert Mustacchi { 129*7e3dbbacSRobert Mustacchi "MATRIX_REQUEST": "ANY_READ", 130*7e3dbbacSRobert Mustacchi "MATRIX_RESPONSE": "Null", 131*7e3dbbacSRobert Mustacchi "MATRIX_VALUE": "0x00000032e7", 132*7e3dbbacSRobert Mustacchi "MATRIX_REGISTER": "0,1", 133*7e3dbbacSRobert Mustacchi "DESCRIPTION": "Counts any Read request" 134*7e3dbbacSRobert Mustacchi }, 135*7e3dbbacSRobert Mustacchi { 136*7e3dbbacSRobert Mustacchi "MATRIX_REQUEST": "ANY_PF_L2", 137*7e3dbbacSRobert Mustacchi "MATRIX_RESPONSE": "Null", 138*7e3dbbacSRobert Mustacchi "MATRIX_VALUE": "0x0000000060", 139*7e3dbbacSRobert Mustacchi "MATRIX_REGISTER": "0,1", 140*7e3dbbacSRobert Mustacchi "DESCRIPTION": "Counts any Prefetch requests" 141*7e3dbbacSRobert Mustacchi }, 142*7e3dbbacSRobert Mustacchi { 143*7e3dbbacSRobert Mustacchi "MATRIX_REQUEST": "Null", 144*7e3dbbacSRobert Mustacchi "MATRIX_RESPONSE": "ANY_RESPONSE", 145*7e3dbbacSRobert Mustacchi "MATRIX_VALUE": "0x0000010000", 146*7e3dbbacSRobert Mustacchi "MATRIX_REGISTER": "0,1", 147*7e3dbbacSRobert Mustacchi "DESCRIPTION": "accounts for any response" 148*7e3dbbacSRobert Mustacchi }, 149*7e3dbbacSRobert Mustacchi { 150*7e3dbbacSRobert Mustacchi "MATRIX_REQUEST": "Null", 151*7e3dbbacSRobert Mustacchi "MATRIX_RESPONSE": "DDR_NEAR", 152*7e3dbbacSRobert Mustacchi "MATRIX_VALUE": "0x0080800000", 153*7e3dbbacSRobert Mustacchi "MATRIX_REGISTER": "0,1", 154*7e3dbbacSRobert Mustacchi "DESCRIPTION": "accounts for data responses from DRAM Local." 155*7e3dbbacSRobert Mustacchi }, 156*7e3dbbacSRobert Mustacchi { 157*7e3dbbacSRobert Mustacchi "MATRIX_REQUEST": "Null", 158*7e3dbbacSRobert Mustacchi "MATRIX_RESPONSE": "DDR_FAR", 159*7e3dbbacSRobert Mustacchi "MATRIX_VALUE": "0x0101000000", 160*7e3dbbacSRobert Mustacchi "MATRIX_REGISTER": "0,1", 161*7e3dbbacSRobert Mustacchi "DESCRIPTION": "accounts for data responses from DRAM Far." 162*7e3dbbacSRobert Mustacchi }, 163*7e3dbbacSRobert Mustacchi { 164*7e3dbbacSRobert Mustacchi "MATRIX_REQUEST": "Null", 165*7e3dbbacSRobert Mustacchi "MATRIX_RESPONSE": "MCDRAM_NEAR", 166*7e3dbbacSRobert Mustacchi "MATRIX_VALUE": "0x0080200000", 167*7e3dbbacSRobert Mustacchi "MATRIX_REGISTER": "0,1", 168*7e3dbbacSRobert Mustacchi "DESCRIPTION": "accounts for data responses from MCDRAM Local." 169*7e3dbbacSRobert Mustacchi }, 170*7e3dbbacSRobert Mustacchi { 171*7e3dbbacSRobert Mustacchi "MATRIX_REQUEST": "Null", 172*7e3dbbacSRobert Mustacchi "MATRIX_RESPONSE": "MCDRAM_FAR", 173*7e3dbbacSRobert Mustacchi "MATRIX_VALUE": "0x0100400000", 174*7e3dbbacSRobert Mustacchi "MATRIX_REGISTER": "0,1", 175*7e3dbbacSRobert Mustacchi "DESCRIPTION": "accounts for data responses from MCDRAM Far or Other tile L2 hit far." 176*7e3dbbacSRobert Mustacchi }, 177*7e3dbbacSRobert Mustacchi { 178*7e3dbbacSRobert Mustacchi "MATRIX_REQUEST": "Null", 179*7e3dbbacSRobert Mustacchi "MATRIX_RESPONSE": "L2_HIT_NEAR_TILE_E_F", 180*7e3dbbacSRobert Mustacchi "MATRIX_VALUE": "0x0800080000", 181*7e3dbbacSRobert Mustacchi "MATRIX_REGISTER": "0,1", 182*7e3dbbacSRobert Mustacchi "DESCRIPTION": "accounts for responses from a snoop request hit with data forwarded from its Near-other tile's L2 in E/F state." 183*7e3dbbacSRobert Mustacchi }, 184*7e3dbbacSRobert Mustacchi { 185*7e3dbbacSRobert Mustacchi "MATRIX_REQUEST": "Null", 186*7e3dbbacSRobert Mustacchi "MATRIX_RESPONSE": "L2_HIT_NEAR_TILE_M", 187*7e3dbbacSRobert Mustacchi "MATRIX_VALUE": "0x1000080000", 188*7e3dbbacSRobert Mustacchi "MATRIX_REGISTER": "0,1", 189*7e3dbbacSRobert Mustacchi "DESCRIPTION": "accounts for responses from a snoop request hit with data forwarded from its Near-other tile's L2 in M state." 190*7e3dbbacSRobert Mustacchi }, 191*7e3dbbacSRobert Mustacchi { 192*7e3dbbacSRobert Mustacchi "MATRIX_REQUEST": "Null", 193*7e3dbbacSRobert Mustacchi "MATRIX_RESPONSE": "L2_HIT_FAR_TILE_E_F", 194*7e3dbbacSRobert Mustacchi "MATRIX_VALUE": "0x0800400000", 195*7e3dbbacSRobert Mustacchi "MATRIX_REGISTER": "0,1", 196*7e3dbbacSRobert Mustacchi "DESCRIPTION": "accounts for responses from a snoop request hit with data forwarded from its Far(not in the same quadrant as the request)-other tile's L2 in E/F state. Valid only for SNC4 cluster mode." 197*7e3dbbacSRobert Mustacchi }, 198*7e3dbbacSRobert Mustacchi { 199*7e3dbbacSRobert Mustacchi "MATRIX_REQUEST": "Null", 200*7e3dbbacSRobert Mustacchi "MATRIX_RESPONSE": "L2_HIT_FAR_TILE_M", 201*7e3dbbacSRobert Mustacchi "MATRIX_VALUE": "0x1000400000", 202*7e3dbbacSRobert Mustacchi "MATRIX_REGISTER": "0,1", 203*7e3dbbacSRobert Mustacchi "DESCRIPTION": "accounts for responses from a snoop request hit with data forwarded from its Far(not in the same quadrant as the request)-other tile's L2 in M state." 204*7e3dbbacSRobert Mustacchi }, 205*7e3dbbacSRobert Mustacchi { 206*7e3dbbacSRobert Mustacchi "MATRIX_REQUEST": "Null", 207*7e3dbbacSRobert Mustacchi "MATRIX_RESPONSE": "NON_DRAM", 208*7e3dbbacSRobert Mustacchi "MATRIX_VALUE": "0x2000020000", 209*7e3dbbacSRobert Mustacchi "MATRIX_REGISTER": "0,1", 210*7e3dbbacSRobert Mustacchi "DESCRIPTION": "accounts for responses from any NON_DRAM system address. This includes MMIO transactions" 211*7e3dbbacSRobert Mustacchi }, 212*7e3dbbacSRobert Mustacchi { 213*7e3dbbacSRobert Mustacchi "MATRIX_REQUEST": "Null", 214*7e3dbbacSRobert Mustacchi "MATRIX_RESPONSE": "OUTSTANDING", 215*7e3dbbacSRobert Mustacchi "MATRIX_VALUE": "0x4000000000", 216*7e3dbbacSRobert Mustacchi "MATRIX_REGISTER": "0", 217*7e3dbbacSRobert Mustacchi "DESCRIPTION": "outstanding, per weighted cycle, from the time of the request to when any response is received. The oustanding response should be programmed only on PMC0." 218*7e3dbbacSRobert Mustacchi }, 219*7e3dbbacSRobert Mustacchi { 220*7e3dbbacSRobert Mustacchi "MATRIX_REQUEST": "Null", 221*7e3dbbacSRobert Mustacchi "MATRIX_RESPONSE": "MCDRAM", 222*7e3dbbacSRobert Mustacchi "MATRIX_VALUE": "0x0180600000", 223*7e3dbbacSRobert Mustacchi "MATRIX_REGISTER": "0,1", 224*7e3dbbacSRobert Mustacchi "DESCRIPTION": "accounts for responses from MCDRAM (local and far)" 225*7e3dbbacSRobert Mustacchi }, 226*7e3dbbacSRobert Mustacchi { 227*7e3dbbacSRobert Mustacchi "MATRIX_REQUEST": "Null", 228*7e3dbbacSRobert Mustacchi "MATRIX_RESPONSE": "DDR", 229*7e3dbbacSRobert Mustacchi "MATRIX_VALUE": "0x0181800000", 230*7e3dbbacSRobert Mustacchi "MATRIX_REGISTER": "0,1", 231*7e3dbbacSRobert Mustacchi "DESCRIPTION": "accounts for responses from DDR (local and far)" 232*7e3dbbacSRobert Mustacchi }, 233*7e3dbbacSRobert Mustacchi { 234*7e3dbbacSRobert Mustacchi "MATRIX_REQUEST": "Null", 235*7e3dbbacSRobert Mustacchi "MATRIX_RESPONSE": "L2_HIT_THIS_TILE_M", 236*7e3dbbacSRobert Mustacchi "MATRIX_VALUE": "0x0002000000", 237*7e3dbbacSRobert Mustacchi "MATRIX_REGISTER": "0,1", 238*7e3dbbacSRobert Mustacchi "DESCRIPTION": "accounts for responses which hit its own tile's L2 with data in M state" 239*7e3dbbacSRobert Mustacchi }, 240*7e3dbbacSRobert Mustacchi { 241*7e3dbbacSRobert Mustacchi "MATRIX_REQUEST": "Null", 242*7e3dbbacSRobert Mustacchi "MATRIX_RESPONSE": "L2_HIT_THIS_TILE_E", 243*7e3dbbacSRobert Mustacchi "MATRIX_VALUE": "0x0004000000", 244*7e3dbbacSRobert Mustacchi "MATRIX_REGISTER": "0,1", 245*7e3dbbacSRobert Mustacchi "DESCRIPTION": "accounts for responses which hit its own tile's L2 with data in E state" 246*7e3dbbacSRobert Mustacchi }, 247*7e3dbbacSRobert Mustacchi { 248*7e3dbbacSRobert Mustacchi "MATRIX_REQUEST": "Null", 249*7e3dbbacSRobert Mustacchi "MATRIX_RESPONSE": "L2_HIT_THIS_TILE_S", 250*7e3dbbacSRobert Mustacchi "MATRIX_VALUE": "0x0008000000", 251*7e3dbbacSRobert Mustacchi "MATRIX_REGISTER": "0,1", 252*7e3dbbacSRobert Mustacchi "DESCRIPTION": "accounts for responses which hit its own tile's L2 with data in S state" 253*7e3dbbacSRobert Mustacchi }, 254*7e3dbbacSRobert Mustacchi { 255*7e3dbbacSRobert Mustacchi "MATRIX_REQUEST": "Null", 256*7e3dbbacSRobert Mustacchi "MATRIX_RESPONSE": "L2_HIT_THIS_TILE_F", 257*7e3dbbacSRobert Mustacchi "MATRIX_VALUE": "0x0010000000", 258*7e3dbbacSRobert Mustacchi "MATRIX_REGISTER": "0,1", 259*7e3dbbacSRobert Mustacchi "DESCRIPTION": "accounts for responses which hit its own tile's L2 with data in F state" 260*7e3dbbacSRobert Mustacchi }, 261*7e3dbbacSRobert Mustacchi { 262*7e3dbbacSRobert Mustacchi "MATRIX_REQUEST": "Null", 263*7e3dbbacSRobert Mustacchi "MATRIX_RESPONSE": "L2_HIT_NEAR_TILE", 264*7e3dbbacSRobert Mustacchi "MATRIX_VALUE": "0x1800180000", 265*7e3dbbacSRobert Mustacchi "MATRIX_REGISTER": "0,1", 266*7e3dbbacSRobert Mustacchi "DESCRIPTION": "accounts for reponses from snoop request hit with data forwarded from its Near-other tile L2 in E/F/M state" 267*7e3dbbacSRobert Mustacchi }, 268*7e3dbbacSRobert Mustacchi { 269*7e3dbbacSRobert Mustacchi "MATRIX_REQUEST": "Null", 270*7e3dbbacSRobert Mustacchi "MATRIX_RESPONSE": "L2_HIT_FAR_TILE", 271*7e3dbbacSRobert Mustacchi "MATRIX_VALUE": "0x1800400000", 272*7e3dbbacSRobert Mustacchi "MATRIX_REGISTER": "0,1", 273*7e3dbbacSRobert Mustacchi "DESCRIPTION": "accounts for reponses from snoop request hit with data forwarded from it Far(not in the same quadrant as the request)-other tile L2 in E/F/M state. Valid only in SNC4 Cluster mode." 274*7e3dbbacSRobert Mustacchi } 275*7e3dbbacSRobert Mustacchi]