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