xref: /linux/tools/perf/pmu-events/arch/x86/arrowlake/virtual-memory.json (revision bbfd5594756011167b8f8de9a00e0c946afda1e6)
1*ba56a910SIan Rogers[
2*ba56a910SIan Rogers    {
3*ba56a910SIan Rogers        "BriefDescription": "Counts the number of page walks initiated by a demand load that missed the first and second level TLBs.",
4*ba56a910SIan Rogers        "Counter": "0,1,2,3,4,5,6,7",
5*ba56a910SIan Rogers        "EventCode": "0x08",
6*ba56a910SIan Rogers        "EventName": "DTLB_LOAD_MISSES.MISS_CAUSED_WALK",
7*ba56a910SIan Rogers        "SampleAfterValue": "200003",
8*ba56a910SIan Rogers        "UMask": "0x1",
9*ba56a910SIan Rogers        "Unit": "cpu_atom"
10*ba56a910SIan Rogers    },
11*ba56a910SIan Rogers    {
12*ba56a910SIan Rogers        "BriefDescription": "Counts the number of first level TLB misses but second level hits due to a demand load that did not start a page walk. Accounts for all page sizes. Will result in a DTLB write from STLB.",
13*ba56a910SIan Rogers        "Counter": "0,1,2,3,4,5,6,7",
14*ba56a910SIan Rogers        "EventCode": "0x08",
15*ba56a910SIan Rogers        "EventName": "DTLB_LOAD_MISSES.STLB_HIT",
16*ba56a910SIan Rogers        "SampleAfterValue": "200003",
17*ba56a910SIan Rogers        "UMask": "0x20",
18*ba56a910SIan Rogers        "Unit": "cpu_atom"
19*ba56a910SIan Rogers    },
20*ba56a910SIan Rogers    {
21*ba56a910SIan Rogers        "BriefDescription": "Loads that miss the DTLB and hit the STLB.",
22*ba56a910SIan Rogers        "Counter": "0,1,2,3,4,5,6,7,8,9",
23*ba56a910SIan Rogers        "EventCode": "0x12",
24*ba56a910SIan Rogers        "EventName": "DTLB_LOAD_MISSES.STLB_HIT",
25*ba56a910SIan Rogers        "PublicDescription": "Counts loads that miss the DTLB (Data TLB) and hit the STLB (Second level TLB).",
26*ba56a910SIan Rogers        "SampleAfterValue": "100003",
27*ba56a910SIan Rogers        "UMask": "0x320",
28*ba56a910SIan Rogers        "Unit": "cpu_core"
29*ba56a910SIan Rogers    },
30*ba56a910SIan Rogers    {
31*ba56a910SIan Rogers        "BriefDescription": "Counts the number of first level TLB misses but second level hits due to a demand load that did not start a page walk. Accounts for all page sizes. Will result in a DTLB write from STLB.",
32*ba56a910SIan Rogers        "Counter": "0,1,2,3,4,5,6,7",
33*ba56a910SIan Rogers        "EventCode": "0x08",
34*ba56a910SIan Rogers        "EventName": "DTLB_LOAD_MISSES.STLB_HIT",
35*ba56a910SIan Rogers        "SampleAfterValue": "200003",
36*ba56a910SIan Rogers        "UMask": "0x20",
37*ba56a910SIan Rogers        "Unit": "cpu_lowpower"
38*ba56a910SIan Rogers    },
39*ba56a910SIan Rogers    {
40*ba56a910SIan Rogers        "BriefDescription": "Cycles when at least one PMH is busy with a page walk for a demand load.",
41*ba56a910SIan Rogers        "Counter": "0,1,2,3,4,5,6,7,8,9",
42*ba56a910SIan Rogers        "CounterMask": "1",
43*ba56a910SIan Rogers        "EventCode": "0x12",
44*ba56a910SIan Rogers        "EventName": "DTLB_LOAD_MISSES.WALK_ACTIVE",
45*ba56a910SIan Rogers        "PublicDescription": "Counts cycles when at least one PMH (Page Miss Handler) is busy with a page walk for a demand load.",
46*ba56a910SIan Rogers        "SampleAfterValue": "100003",
47*ba56a910SIan Rogers        "UMask": "0x10",
48*ba56a910SIan Rogers        "Unit": "cpu_core"
49*ba56a910SIan Rogers    },
50*ba56a910SIan Rogers    {
51*ba56a910SIan Rogers        "BriefDescription": "Load miss in all TLB levels causes a page walk that completes. (All page sizes)",
52*ba56a910SIan Rogers        "Counter": "0,1,2,3,4,5,6,7,8,9",
53*ba56a910SIan Rogers        "EventCode": "0x12",
54*ba56a910SIan Rogers        "EventName": "DTLB_LOAD_MISSES.WALK_COMPLETED",
55*ba56a910SIan Rogers        "PublicDescription": "Counts completed page walks  (all page sizes) caused by demand data loads. This implies it missed in the DTLB and further levels of TLB. The page walk can end with or without a fault.",
56*ba56a910SIan Rogers        "SampleAfterValue": "100003",
57*ba56a910SIan Rogers        "UMask": "0xe",
58*ba56a910SIan Rogers        "Unit": "cpu_core"
59*ba56a910SIan Rogers    },
60*ba56a910SIan Rogers    {
61*ba56a910SIan Rogers        "BriefDescription": "Counts the number of page walks completed due to load DTLB misses.",
62*ba56a910SIan Rogers        "Counter": "0,1,2,3,4,5,6,7",
63*ba56a910SIan Rogers        "EventCode": "0x08",
64*ba56a910SIan Rogers        "EventName": "DTLB_LOAD_MISSES.WALK_COMPLETED",
65*ba56a910SIan Rogers        "SampleAfterValue": "200003",
66*ba56a910SIan Rogers        "UMask": "0xe",
67*ba56a910SIan Rogers        "Unit": "cpu_lowpower"
68*ba56a910SIan Rogers    },
69*ba56a910SIan Rogers    {
70*ba56a910SIan Rogers        "BriefDescription": "Page walks completed due to a demand data load to a 1G page.",
71*ba56a910SIan Rogers        "Counter": "0,1,2,3,4,5,6,7,8,9",
72*ba56a910SIan Rogers        "EventCode": "0x12",
73*ba56a910SIan Rogers        "EventName": "DTLB_LOAD_MISSES.WALK_COMPLETED_1G",
74*ba56a910SIan Rogers        "PublicDescription": "Counts completed page walks  (1G sizes) caused by demand data loads. This implies address translations missed in the DTLB and further levels of TLB. The page walk can end with or without a fault.",
75*ba56a910SIan Rogers        "SampleAfterValue": "100003",
76*ba56a910SIan Rogers        "UMask": "0x8",
77*ba56a910SIan Rogers        "Unit": "cpu_core"
78*ba56a910SIan Rogers    },
79*ba56a910SIan Rogers    {
80*ba56a910SIan Rogers        "BriefDescription": "Counts the number of page walks completed due to load DTLB misses to a 2M or 4M page.",
81*ba56a910SIan Rogers        "Counter": "0,1,2,3,4,5,6,7",
82*ba56a910SIan Rogers        "EventCode": "0x08",
83*ba56a910SIan Rogers        "EventName": "DTLB_LOAD_MISSES.WALK_COMPLETED_2M_4M",
84*ba56a910SIan Rogers        "PublicDescription": "Counts the number of page walks completed due to loads (including SW prefetches) whose address translations missed in all Translation Lookaside Buffer (TLB) levels and were mapped to 2M or 4M pages. Includes page walks that page fault.",
85*ba56a910SIan Rogers        "SampleAfterValue": "200003",
86*ba56a910SIan Rogers        "UMask": "0x4",
87*ba56a910SIan Rogers        "Unit": "cpu_atom"
88*ba56a910SIan Rogers    },
89*ba56a910SIan Rogers    {
90*ba56a910SIan Rogers        "BriefDescription": "Page walks completed due to a demand data load to a 2M/4M page.",
91*ba56a910SIan Rogers        "Counter": "0,1,2,3,4,5,6,7,8,9",
92*ba56a910SIan Rogers        "EventCode": "0x12",
93*ba56a910SIan Rogers        "EventName": "DTLB_LOAD_MISSES.WALK_COMPLETED_2M_4M",
94*ba56a910SIan Rogers        "PublicDescription": "Counts completed page walks  (2M/4M sizes) caused by demand data loads. This implies address translations missed in the DTLB and further levels of TLB. The page walk can end with or without a fault.",
95*ba56a910SIan Rogers        "SampleAfterValue": "100003",
96*ba56a910SIan Rogers        "UMask": "0x4",
97*ba56a910SIan Rogers        "Unit": "cpu_core"
98*ba56a910SIan Rogers    },
99*ba56a910SIan Rogers    {
100*ba56a910SIan Rogers        "BriefDescription": "Counts the number of page walks completed due to load DTLB misses to a 2M or 4M page.",
101*ba56a910SIan Rogers        "Counter": "0,1,2,3,4,5,6,7",
102*ba56a910SIan Rogers        "EventCode": "0x08",
103*ba56a910SIan Rogers        "EventName": "DTLB_LOAD_MISSES.WALK_COMPLETED_2M_4M",
104*ba56a910SIan Rogers        "PublicDescription": "Counts the number of page walks completed due to loads (including SW prefetches) whose address translations missed in all Translation Lookaside Buffer (TLB) levels and were mapped to 2M or 4M pages. Includes page walks that page fault.",
105*ba56a910SIan Rogers        "SampleAfterValue": "200003",
106*ba56a910SIan Rogers        "UMask": "0x4",
107*ba56a910SIan Rogers        "Unit": "cpu_lowpower"
108*ba56a910SIan Rogers    },
109*ba56a910SIan Rogers    {
110*ba56a910SIan Rogers        "BriefDescription": "Counts the number of page walks completed due to load DTLB misses to a 4K page.",
111*ba56a910SIan Rogers        "Counter": "0,1,2,3,4,5,6,7",
112*ba56a910SIan Rogers        "EventCode": "0x08",
113*ba56a910SIan Rogers        "EventName": "DTLB_LOAD_MISSES.WALK_COMPLETED_4K",
114*ba56a910SIan Rogers        "PublicDescription": "Counts the number of page walks completed due to loads (including SW prefetches) whose address translations missed in all Translation Lookaside Buffer (TLB) levels and were mapped to 4K pages. Includes page walks that page fault.",
115*ba56a910SIan Rogers        "SampleAfterValue": "200003",
116*ba56a910SIan Rogers        "UMask": "0x2",
117*ba56a910SIan Rogers        "Unit": "cpu_atom"
118*ba56a910SIan Rogers    },
119*ba56a910SIan Rogers    {
120*ba56a910SIan Rogers        "BriefDescription": "Page walks completed due to a demand data load to a 4K page.",
121*ba56a910SIan Rogers        "Counter": "0,1,2,3,4,5,6,7,8,9",
122*ba56a910SIan Rogers        "EventCode": "0x12",
123*ba56a910SIan Rogers        "EventName": "DTLB_LOAD_MISSES.WALK_COMPLETED_4K",
124*ba56a910SIan Rogers        "PublicDescription": "Counts completed page walks  (4K sizes) caused by demand data loads. This implies address translations missed in the DTLB and further levels of TLB. The page walk can end with or without a fault.",
125*ba56a910SIan Rogers        "SampleAfterValue": "100003",
126*ba56a910SIan Rogers        "UMask": "0x2",
127*ba56a910SIan Rogers        "Unit": "cpu_core"
128*ba56a910SIan Rogers    },
129*ba56a910SIan Rogers    {
130*ba56a910SIan Rogers        "BriefDescription": "Counts the number of page walks completed due to load DTLB misses to a 4K page.",
131*ba56a910SIan Rogers        "Counter": "0,1,2,3,4,5,6,7",
132*ba56a910SIan Rogers        "EventCode": "0x08",
133*ba56a910SIan Rogers        "EventName": "DTLB_LOAD_MISSES.WALK_COMPLETED_4K",
134*ba56a910SIan Rogers        "PublicDescription": "Counts the number of page walks completed due to loads (including SW prefetches) whose address translations missed in all Translation Lookaside Buffer (TLB) levels and were mapped to 4K pages. Includes page walks that page fault.",
135*ba56a910SIan Rogers        "SampleAfterValue": "200003",
136*ba56a910SIan Rogers        "UMask": "0x2",
137*ba56a910SIan Rogers        "Unit": "cpu_lowpower"
138*ba56a910SIan Rogers    },
139*ba56a910SIan Rogers    {
140*ba56a910SIan Rogers        "BriefDescription": "Counts the number of page walks outstanding for Loads (demand or SW prefetch) in PMH every cycle.",
141*ba56a910SIan Rogers        "Counter": "0,1,2,3,4,5,6,7",
142*ba56a910SIan Rogers        "EventCode": "0x08",
143*ba56a910SIan Rogers        "EventName": "DTLB_LOAD_MISSES.WALK_PENDING",
144*ba56a910SIan Rogers        "PublicDescription": "Counts the number of page walks outstanding for Loads (demand or SW prefetch) in PMH every cycle.  A PMH page walk is outstanding from page walk start till PMH becomes idle again (ready to serve next walk). Includes EPT-walk intervals.",
145*ba56a910SIan Rogers        "SampleAfterValue": "200003",
146*ba56a910SIan Rogers        "UMask": "0x10",
147*ba56a910SIan Rogers        "Unit": "cpu_atom"
148*ba56a910SIan Rogers    },
149*ba56a910SIan Rogers    {
150*ba56a910SIan Rogers        "BriefDescription": "Number of page walks outstanding for a demand load in the PMH each cycle.",
151*ba56a910SIan Rogers        "Counter": "0,1,2,3,4,5,6,7,8,9",
152*ba56a910SIan Rogers        "EventCode": "0x12",
153*ba56a910SIan Rogers        "EventName": "DTLB_LOAD_MISSES.WALK_PENDING",
154*ba56a910SIan Rogers        "PublicDescription": "Counts the number of page walks outstanding for a demand load in the PMH (Page Miss Handler) each cycle.",
155*ba56a910SIan Rogers        "SampleAfterValue": "100003",
156*ba56a910SIan Rogers        "UMask": "0x10",
157*ba56a910SIan Rogers        "Unit": "cpu_core"
158*ba56a910SIan Rogers    },
159*ba56a910SIan Rogers    {
160*ba56a910SIan Rogers        "BriefDescription": "Counts the number of page walks outstanding for Loads (demand or SW prefetch) in PMH every cycle.",
161*ba56a910SIan Rogers        "Counter": "0,1,2,3,4,5,6,7",
162*ba56a910SIan Rogers        "EventCode": "0x08",
163*ba56a910SIan Rogers        "EventName": "DTLB_LOAD_MISSES.WALK_PENDING",
164*ba56a910SIan Rogers        "PublicDescription": "Counts the number of page walks outstanding for Loads (demand or SW prefetch) in PMH every cycle.  A PMH page walk is outstanding from page walk start till PMH becomes idle again (ready to serve next walk). Includes EPT-walk intervals.",
165*ba56a910SIan Rogers        "SampleAfterValue": "200003",
166*ba56a910SIan Rogers        "UMask": "0x10",
167*ba56a910SIan Rogers        "Unit": "cpu_lowpower"
168*ba56a910SIan Rogers    },
169*ba56a910SIan Rogers    {
170*ba56a910SIan Rogers        "BriefDescription": "Counts the number of page walks initiated by a store that missed the first and second level TLBs.",
171*ba56a910SIan Rogers        "Counter": "0,1,2,3,4,5,6,7",
172*ba56a910SIan Rogers        "EventCode": "0x49",
173*ba56a910SIan Rogers        "EventName": "DTLB_STORE_MISSES.MISS_CAUSED_WALK",
174*ba56a910SIan Rogers        "SampleAfterValue": "2000003",
175*ba56a910SIan Rogers        "UMask": "0x1",
176*ba56a910SIan Rogers        "Unit": "cpu_atom"
177*ba56a910SIan Rogers    },
178*ba56a910SIan Rogers    {
179*ba56a910SIan Rogers        "BriefDescription": "Counts the number of first level TLB misses but second level hits due to stores that did not start a page walk. Accounts for all page sizes. Will result in a DTLB write from STLB.",
180*ba56a910SIan Rogers        "Counter": "0,1,2,3,4,5,6,7",
181*ba56a910SIan Rogers        "EventCode": "0x49",
182*ba56a910SIan Rogers        "EventName": "DTLB_STORE_MISSES.STLB_HIT",
183*ba56a910SIan Rogers        "PublicDescription": "Counts the number of first level TLB misses but second level hits due to a demand load that did not start a page walk. Accounts for all page sizes. Will result in a DTLB write from STLB.",
184*ba56a910SIan Rogers        "SampleAfterValue": "2000003",
185*ba56a910SIan Rogers        "UMask": "0x20",
186*ba56a910SIan Rogers        "Unit": "cpu_atom"
187*ba56a910SIan Rogers    },
188*ba56a910SIan Rogers    {
189*ba56a910SIan Rogers        "BriefDescription": "Stores that miss the DTLB and hit the STLB.",
190*ba56a910SIan Rogers        "Counter": "0,1,2,3,4,5,6,7,8,9",
191*ba56a910SIan Rogers        "EventCode": "0x13",
192*ba56a910SIan Rogers        "EventName": "DTLB_STORE_MISSES.STLB_HIT",
193*ba56a910SIan Rogers        "PublicDescription": "Counts stores that miss the DTLB (Data TLB) and hit the STLB (2nd Level TLB).",
194*ba56a910SIan Rogers        "SampleAfterValue": "100003",
195*ba56a910SIan Rogers        "UMask": "0x320",
196*ba56a910SIan Rogers        "Unit": "cpu_core"
197*ba56a910SIan Rogers    },
198*ba56a910SIan Rogers    {
199*ba56a910SIan Rogers        "BriefDescription": "Counts the number of first level TLB misses but second level hits due to stores that did not start a page walk. Accounts for all pages sizes. Will result in a DTLB write from STLB.",
200*ba56a910SIan Rogers        "Counter": "0,1,2,3,4,5,6,7",
201*ba56a910SIan Rogers        "EventCode": "0x49",
202*ba56a910SIan Rogers        "EventName": "DTLB_STORE_MISSES.STLB_HIT",
203*ba56a910SIan Rogers        "SampleAfterValue": "2000003",
204*ba56a910SIan Rogers        "UMask": "0x20",
205*ba56a910SIan Rogers        "Unit": "cpu_lowpower"
206*ba56a910SIan Rogers    },
207*ba56a910SIan Rogers    {
208*ba56a910SIan Rogers        "BriefDescription": "Cycles when at least one PMH is busy with a page walk for a store.",
209*ba56a910SIan Rogers        "Counter": "0,1,2,3,4,5,6,7,8,9",
210*ba56a910SIan Rogers        "CounterMask": "1",
211*ba56a910SIan Rogers        "EventCode": "0x13",
212*ba56a910SIan Rogers        "EventName": "DTLB_STORE_MISSES.WALK_ACTIVE",
213*ba56a910SIan Rogers        "PublicDescription": "Counts cycles when at least one PMH (Page Miss Handler) is busy with a page walk for a store.",
214*ba56a910SIan Rogers        "SampleAfterValue": "100003",
215*ba56a910SIan Rogers        "UMask": "0x10",
216*ba56a910SIan Rogers        "Unit": "cpu_core"
217*ba56a910SIan Rogers    },
218*ba56a910SIan Rogers    {
219*ba56a910SIan Rogers        "BriefDescription": "Store misses in all TLB levels causes a page walk that completes. (All page sizes)",
220*ba56a910SIan Rogers        "Counter": "0,1,2,3,4,5,6,7,8,9",
221*ba56a910SIan Rogers        "EventCode": "0x13",
222*ba56a910SIan Rogers        "EventName": "DTLB_STORE_MISSES.WALK_COMPLETED",
223*ba56a910SIan Rogers        "PublicDescription": "Counts completed page walks  (all page sizes) caused by demand data stores. This implies it missed in the DTLB and further levels of TLB. The page walk can end with or without a fault.",
224*ba56a910SIan Rogers        "SampleAfterValue": "100003",
225*ba56a910SIan Rogers        "UMask": "0xe",
226*ba56a910SIan Rogers        "Unit": "cpu_core"
227*ba56a910SIan Rogers    },
228*ba56a910SIan Rogers    {
229*ba56a910SIan Rogers        "BriefDescription": "Counts the number of page walks completed due to store DTLB misses to a 1G page.",
230*ba56a910SIan Rogers        "Counter": "0,1,2,3,4,5,6,7",
231*ba56a910SIan Rogers        "EventCode": "0x49",
232*ba56a910SIan Rogers        "EventName": "DTLB_STORE_MISSES.WALK_COMPLETED",
233*ba56a910SIan Rogers        "SampleAfterValue": "2000003",
234*ba56a910SIan Rogers        "UMask": "0xe",
235*ba56a910SIan Rogers        "Unit": "cpu_lowpower"
236*ba56a910SIan Rogers    },
237*ba56a910SIan Rogers    {
238*ba56a910SIan Rogers        "BriefDescription": "Page walks completed due to a demand data store to a 1G page.",
239*ba56a910SIan Rogers        "Counter": "0,1,2,3,4,5,6,7,8,9",
240*ba56a910SIan Rogers        "EventCode": "0x13",
241*ba56a910SIan Rogers        "EventName": "DTLB_STORE_MISSES.WALK_COMPLETED_1G",
242*ba56a910SIan Rogers        "PublicDescription": "Counts completed page walks  (1G sizes) caused by demand data stores. This implies address translations missed in the DTLB and further levels of TLB. The page walk can end with or without a fault.",
243*ba56a910SIan Rogers        "SampleAfterValue": "100003",
244*ba56a910SIan Rogers        "UMask": "0x8",
245*ba56a910SIan Rogers        "Unit": "cpu_core"
246*ba56a910SIan Rogers    },
247*ba56a910SIan Rogers    {
248*ba56a910SIan Rogers        "BriefDescription": "Page walks completed due to a demand data store to a 2M/4M page.",
249*ba56a910SIan Rogers        "Counter": "0,1,2,3,4,5,6,7,8,9",
250*ba56a910SIan Rogers        "EventCode": "0x13",
251*ba56a910SIan Rogers        "EventName": "DTLB_STORE_MISSES.WALK_COMPLETED_2M_4M",
252*ba56a910SIan Rogers        "PublicDescription": "Counts completed page walks  (2M/4M sizes) caused by demand data stores. This implies address translations missed in the DTLB and further levels of TLB. The page walk can end with or without a fault.",
253*ba56a910SIan Rogers        "SampleAfterValue": "100003",
254*ba56a910SIan Rogers        "UMask": "0x4",
255*ba56a910SIan Rogers        "Unit": "cpu_core"
256*ba56a910SIan Rogers    },
257*ba56a910SIan Rogers    {
258*ba56a910SIan Rogers        "BriefDescription": "Counts the number of page walks completed due to store DTLB misses to a 2M or 4M page.",
259*ba56a910SIan Rogers        "Counter": "0,1,2,3,4,5,6,7",
260*ba56a910SIan Rogers        "EventCode": "0x49",
261*ba56a910SIan Rogers        "EventName": "DTLB_STORE_MISSES.WALK_COMPLETED_2M_4M",
262*ba56a910SIan Rogers        "PublicDescription": "Counts the number of page walks completed due to stores whose address translations missed in all Translation Lookaside Buffer (TLB) levels and were mapped to 2M or 4M pages.  Includes page walks that page fault.",
263*ba56a910SIan Rogers        "SampleAfterValue": "2000003",
264*ba56a910SIan Rogers        "UMask": "0x4",
265*ba56a910SIan Rogers        "Unit": "cpu_lowpower"
266*ba56a910SIan Rogers    },
267*ba56a910SIan Rogers    {
268*ba56a910SIan Rogers        "BriefDescription": "Counts the number of page walks completed due to store DTLB misses to a 4K page.",
269*ba56a910SIan Rogers        "Counter": "0,1,2,3,4,5,6,7",
270*ba56a910SIan Rogers        "EventCode": "0x49",
271*ba56a910SIan Rogers        "EventName": "DTLB_STORE_MISSES.WALK_COMPLETED_4K",
272*ba56a910SIan Rogers        "PublicDescription": "Counts the number of page walks completed due to stores whose address translations missed in all Translation Lookaside Buffer (TLB) levels and were mapped to 4K pages.  Includes page walks that page fault.",
273*ba56a910SIan Rogers        "SampleAfterValue": "2000003",
274*ba56a910SIan Rogers        "UMask": "0x2",
275*ba56a910SIan Rogers        "Unit": "cpu_atom"
276*ba56a910SIan Rogers    },
277*ba56a910SIan Rogers    {
278*ba56a910SIan Rogers        "BriefDescription": "Page walks completed due to a demand data store to a 4K page.",
279*ba56a910SIan Rogers        "Counter": "0,1,2,3,4,5,6,7,8,9",
280*ba56a910SIan Rogers        "EventCode": "0x13",
281*ba56a910SIan Rogers        "EventName": "DTLB_STORE_MISSES.WALK_COMPLETED_4K",
282*ba56a910SIan Rogers        "PublicDescription": "Counts completed page walks  (4K sizes) caused by demand data stores. This implies address translations missed in the DTLB and further levels of TLB. The page walk can end with or without a fault.",
283*ba56a910SIan Rogers        "SampleAfterValue": "100003",
284*ba56a910SIan Rogers        "UMask": "0x2",
285*ba56a910SIan Rogers        "Unit": "cpu_core"
286*ba56a910SIan Rogers    },
287*ba56a910SIan Rogers    {
288*ba56a910SIan Rogers        "BriefDescription": "Counts the number of page walks completed due to store DTLB misses to a 4K page.",
289*ba56a910SIan Rogers        "Counter": "0,1,2,3,4,5,6,7",
290*ba56a910SIan Rogers        "EventCode": "0x49",
291*ba56a910SIan Rogers        "EventName": "DTLB_STORE_MISSES.WALK_COMPLETED_4K",
292*ba56a910SIan Rogers        "PublicDescription": "Counts the number of page walks completed due to stores whose address translations missed in all Translation Lookaside Buffer (TLB) levels and were mapped to 4K pages.  Includes page walks that page fault.",
293*ba56a910SIan Rogers        "SampleAfterValue": "2000003",
294*ba56a910SIan Rogers        "UMask": "0x2",
295*ba56a910SIan Rogers        "Unit": "cpu_lowpower"
296*ba56a910SIan Rogers    },
297*ba56a910SIan Rogers    {
298*ba56a910SIan Rogers        "BriefDescription": "Counts the number of page walks outstanding in the page miss handler (PMH) for stores every cycle.",
299*ba56a910SIan Rogers        "Counter": "0,1,2,3,4,5,6,7",
300*ba56a910SIan Rogers        "EventCode": "0x49",
301*ba56a910SIan Rogers        "EventName": "DTLB_STORE_MISSES.WALK_PENDING",
302*ba56a910SIan Rogers        "PublicDescription": "Counts the number of page walks outstanding in the page miss handler (PMH) for stores every cycle. A PMH page walk is outstanding from page walk start till PMH becomes idle again (ready to serve next walk). Includes EPT-walk intervals.",
303*ba56a910SIan Rogers        "SampleAfterValue": "200003",
304*ba56a910SIan Rogers        "UMask": "0x10",
305*ba56a910SIan Rogers        "Unit": "cpu_atom"
306*ba56a910SIan Rogers    },
307*ba56a910SIan Rogers    {
308*ba56a910SIan Rogers        "BriefDescription": "Number of page walks outstanding for a store in the PMH each cycle.",
309*ba56a910SIan Rogers        "Counter": "0,1,2,3,4,5,6,7,8,9",
310*ba56a910SIan Rogers        "EventCode": "0x13",
311*ba56a910SIan Rogers        "EventName": "DTLB_STORE_MISSES.WALK_PENDING",
312*ba56a910SIan Rogers        "PublicDescription": "Counts the number of page walks outstanding for a store in the PMH (Page Miss Handler) each cycle.",
313*ba56a910SIan Rogers        "SampleAfterValue": "100003",
314*ba56a910SIan Rogers        "UMask": "0x10",
315*ba56a910SIan Rogers        "Unit": "cpu_core"
316*ba56a910SIan Rogers    },
317*ba56a910SIan Rogers    {
318*ba56a910SIan Rogers        "BriefDescription": "Counts the number of page walks outstanding in the page miss handler (PMH) for stores every cycle.",
319*ba56a910SIan Rogers        "Counter": "0,1,2,3,4,5,6,7",
320*ba56a910SIan Rogers        "EventCode": "0x49",
321*ba56a910SIan Rogers        "EventName": "DTLB_STORE_MISSES.WALK_PENDING",
322*ba56a910SIan Rogers        "PublicDescription": "Counts the number of page walks outstanding in the page miss handler (PMH) for stores every cycle. A PMH page walk is outstanding from page walk start till PMH becomes idle again (ready to serve next walk). Includes EPT-walk intervals.",
323*ba56a910SIan Rogers        "SampleAfterValue": "200003",
324*ba56a910SIan Rogers        "UMask": "0x10",
325*ba56a910SIan Rogers        "Unit": "cpu_lowpower"
326*ba56a910SIan Rogers    },
327*ba56a910SIan Rogers    {
328*ba56a910SIan Rogers        "BriefDescription": "Counts the number of page walks initiated by a instruction fetch that missed the first and second level TLBs.",
329*ba56a910SIan Rogers        "Counter": "0,1,2,3,4,5,6,7",
330*ba56a910SIan Rogers        "EventCode": "0x85",
331*ba56a910SIan Rogers        "EventName": "ITLB_MISSES.MISS_CAUSED_WALK",
332*ba56a910SIan Rogers        "SampleAfterValue": "2000003",
333*ba56a910SIan Rogers        "UMask": "0x1",
334*ba56a910SIan Rogers        "Unit": "cpu_atom"
335*ba56a910SIan Rogers    },
336*ba56a910SIan Rogers    {
337*ba56a910SIan Rogers        "BriefDescription": "Counts the number of page walks initiated by a instruction fetch that missed the first and second level TLBs.",
338*ba56a910SIan Rogers        "Counter": "0,1,2,3,4,5,6,7",
339*ba56a910SIan Rogers        "EventCode": "0x85",
340*ba56a910SIan Rogers        "EventName": "ITLB_MISSES.MISS_CAUSED_WALK",
341*ba56a910SIan Rogers        "SampleAfterValue": "1000003",
342*ba56a910SIan Rogers        "UMask": "0x1",
343*ba56a910SIan Rogers        "Unit": "cpu_lowpower"
344*ba56a910SIan Rogers    },
345*ba56a910SIan Rogers    {
346*ba56a910SIan Rogers        "BriefDescription": "Counts the number of first level TLB misses but second level hits due to an instruction fetch that did not start a page walk. Account for all pages sizes. Will result in an ITLB write from STLB.",
347*ba56a910SIan Rogers        "Counter": "0,1,2,3,4,5,6,7",
348*ba56a910SIan Rogers        "EventCode": "0x85",
349*ba56a910SIan Rogers        "EventName": "ITLB_MISSES.STLB_HIT",
350*ba56a910SIan Rogers        "SampleAfterValue": "2000003",
351*ba56a910SIan Rogers        "UMask": "0x20",
352*ba56a910SIan Rogers        "Unit": "cpu_atom"
353*ba56a910SIan Rogers    },
354*ba56a910SIan Rogers    {
355*ba56a910SIan Rogers        "BriefDescription": "Instruction fetch requests that miss the ITLB and hit the STLB.",
356*ba56a910SIan Rogers        "Counter": "0,1,2,3,4,5,6,7,8,9",
357*ba56a910SIan Rogers        "EventCode": "0x11",
358*ba56a910SIan Rogers        "EventName": "ITLB_MISSES.STLB_HIT",
359*ba56a910SIan Rogers        "PublicDescription": "Counts instruction fetch requests that miss the ITLB (Instruction TLB) and hit the STLB (Second-level TLB).",
360*ba56a910SIan Rogers        "SampleAfterValue": "100003",
361*ba56a910SIan Rogers        "UMask": "0x120",
362*ba56a910SIan Rogers        "Unit": "cpu_core"
363*ba56a910SIan Rogers    },
364*ba56a910SIan Rogers    {
365*ba56a910SIan Rogers        "BriefDescription": "Counts the number of first level TLB misses but second level hits due to an instruction fetch that did not start a page walk. Account for all pages sizes. Will result in an ITLB write from STLB.",
366*ba56a910SIan Rogers        "Counter": "0,1,2,3,4,5,6,7",
367*ba56a910SIan Rogers        "EventCode": "0x85",
368*ba56a910SIan Rogers        "EventName": "ITLB_MISSES.STLB_HIT",
369*ba56a910SIan Rogers        "SampleAfterValue": "2000003",
370*ba56a910SIan Rogers        "UMask": "0x20",
371*ba56a910SIan Rogers        "Unit": "cpu_lowpower"
372*ba56a910SIan Rogers    },
373*ba56a910SIan Rogers    {
374*ba56a910SIan Rogers        "BriefDescription": "Cycles when at least one PMH is busy with a page walk for code (instruction fetch) request.",
375*ba56a910SIan Rogers        "Counter": "0,1,2,3,4,5,6,7,8,9",
376*ba56a910SIan Rogers        "CounterMask": "1",
377*ba56a910SIan Rogers        "EventCode": "0x11",
378*ba56a910SIan Rogers        "EventName": "ITLB_MISSES.WALK_ACTIVE",
379*ba56a910SIan Rogers        "PublicDescription": "Counts cycles when at least one PMH (Page Miss Handler) is busy with a page walk for a code (instruction fetch) request.",
380*ba56a910SIan Rogers        "SampleAfterValue": "100003",
381*ba56a910SIan Rogers        "UMask": "0x10",
382*ba56a910SIan Rogers        "Unit": "cpu_core"
383*ba56a910SIan Rogers    },
384*ba56a910SIan Rogers    {
385*ba56a910SIan Rogers        "BriefDescription": "Counts the number of page walks completed due to instruction fetch misses to any page size.",
386*ba56a910SIan Rogers        "Counter": "0,1,2,3,4,5,6,7",
387*ba56a910SIan Rogers        "EventCode": "0x85",
388*ba56a910SIan Rogers        "EventName": "ITLB_MISSES.WALK_COMPLETED",
389*ba56a910SIan Rogers        "PublicDescription": "Counts the number of page walks completed due to instruction fetches whose address translations missed in all Translation Lookaside Buffer (TLB) levels and were mapped to any page size.  Includes page walks that page fault.",
390*ba56a910SIan Rogers        "SampleAfterValue": "2000003",
391*ba56a910SIan Rogers        "UMask": "0xe",
392*ba56a910SIan Rogers        "Unit": "cpu_atom"
393*ba56a910SIan Rogers    },
394*ba56a910SIan Rogers    {
395*ba56a910SIan Rogers        "BriefDescription": "Code miss in all TLB levels causes a page walk that completes. (All page sizes)",
396*ba56a910SIan Rogers        "Counter": "0,1,2,3,4,5,6,7,8,9",
397*ba56a910SIan Rogers        "EventCode": "0x11",
398*ba56a910SIan Rogers        "EventName": "ITLB_MISSES.WALK_COMPLETED",
399*ba56a910SIan Rogers        "PublicDescription": "Counts completed page walks (all page sizes) caused by a code fetch. This implies it missed in the ITLB (Instruction TLB) and further levels of TLB. The page walk can end with or without a fault.",
400*ba56a910SIan Rogers        "SampleAfterValue": "100003",
401*ba56a910SIan Rogers        "UMask": "0xe",
402*ba56a910SIan Rogers        "Unit": "cpu_core"
403*ba56a910SIan Rogers    },
404*ba56a910SIan Rogers    {
405*ba56a910SIan Rogers        "BriefDescription": "Counts the number of page walks completed due to instruction fetch misses to any page size.",
406*ba56a910SIan Rogers        "Counter": "0,1,2,3,4,5,6,7",
407*ba56a910SIan Rogers        "EventCode": "0x85",
408*ba56a910SIan Rogers        "EventName": "ITLB_MISSES.WALK_COMPLETED",
409*ba56a910SIan Rogers        "PublicDescription": "Counts the number of page walks completed due to instruction fetches whose address translations missed in all Translation Lookaside Buffer (TLB) levels and were mapped to any page size.  Includes page walks that page fault.",
410*ba56a910SIan Rogers        "SampleAfterValue": "200003",
411*ba56a910SIan Rogers        "UMask": "0xe",
412*ba56a910SIan Rogers        "Unit": "cpu_lowpower"
413*ba56a910SIan Rogers    },
414*ba56a910SIan Rogers    {
415*ba56a910SIan Rogers        "BriefDescription": "Counts the number of page walks completed due to instruction fetch misses to a 2M or 4M page.",
416*ba56a910SIan Rogers        "Counter": "0,1,2,3,4,5,6,7",
417*ba56a910SIan Rogers        "EventCode": "0x85",
418*ba56a910SIan Rogers        "EventName": "ITLB_MISSES.WALK_COMPLETED_2M_4M",
419*ba56a910SIan Rogers        "PublicDescription": "Counts the number of page walks completed due to instruction fetches whose address translations missed in all Translation Lookaside Buffer (TLB) levels and were mapped to 2M or 4M pages.  Includes page walks that page fault.",
420*ba56a910SIan Rogers        "SampleAfterValue": "2000003",
421*ba56a910SIan Rogers        "UMask": "0x4",
422*ba56a910SIan Rogers        "Unit": "cpu_atom"
423*ba56a910SIan Rogers    },
424*ba56a910SIan Rogers    {
425*ba56a910SIan Rogers        "BriefDescription": "Code miss in all TLB levels causes a page walk that completes. (2M/4M)",
426*ba56a910SIan Rogers        "Counter": "0,1,2,3,4,5,6,7,8,9",
427*ba56a910SIan Rogers        "EventCode": "0x11",
428*ba56a910SIan Rogers        "EventName": "ITLB_MISSES.WALK_COMPLETED_2M_4M",
429*ba56a910SIan Rogers        "PublicDescription": "Counts completed page walks (2M/4M page sizes) caused by a code fetch. This implies it missed in the ITLB (Instruction TLB) and further levels of TLB. The page walk can end with or without a fault.",
430*ba56a910SIan Rogers        "SampleAfterValue": "100003",
431*ba56a910SIan Rogers        "UMask": "0x4",
432*ba56a910SIan Rogers        "Unit": "cpu_core"
433*ba56a910SIan Rogers    },
434*ba56a910SIan Rogers    {
435*ba56a910SIan Rogers        "BriefDescription": "Counts the number of page walks completed due to instruction fetch misses to a 2M or 4M page.",
436*ba56a910SIan Rogers        "Counter": "0,1,2,3,4,5,6,7",
437*ba56a910SIan Rogers        "EventCode": "0x85",
438*ba56a910SIan Rogers        "EventName": "ITLB_MISSES.WALK_COMPLETED_2M_4M",
439*ba56a910SIan Rogers        "PublicDescription": "Counts the number of page walks completed due to instruction fetches whose address translations missed in all Translation Lookaside Buffer (TLB) levels and were mapped to 2M or 4M pages.  Includes page walks that page fault.",
440*ba56a910SIan Rogers        "SampleAfterValue": "2000003",
441*ba56a910SIan Rogers        "UMask": "0x4",
442*ba56a910SIan Rogers        "Unit": "cpu_lowpower"
443*ba56a910SIan Rogers    },
444*ba56a910SIan Rogers    {
445*ba56a910SIan Rogers        "BriefDescription": "Counts the number of page walks completed due to instruction fetch misses to a 4K page.",
446*ba56a910SIan Rogers        "Counter": "0,1,2,3,4,5,6,7",
447*ba56a910SIan Rogers        "EventCode": "0x85",
448*ba56a910SIan Rogers        "EventName": "ITLB_MISSES.WALK_COMPLETED_4K",
449*ba56a910SIan Rogers        "PublicDescription": "Counts the number of page walks completed due to instruction fetches whose address translations missed in all Translation Lookaside Buffer (TLB) levels and were mapped to 4K pages.  Includes page walks that page fault.",
450*ba56a910SIan Rogers        "SampleAfterValue": "2000003",
451*ba56a910SIan Rogers        "UMask": "0x2",
452*ba56a910SIan Rogers        "Unit": "cpu_atom"
453*ba56a910SIan Rogers    },
454*ba56a910SIan Rogers    {
455*ba56a910SIan Rogers        "BriefDescription": "Code miss in all TLB levels causes a page walk that completes. (4K)",
456*ba56a910SIan Rogers        "Counter": "0,1,2,3,4,5,6,7,8,9",
457*ba56a910SIan Rogers        "EventCode": "0x11",
458*ba56a910SIan Rogers        "EventName": "ITLB_MISSES.WALK_COMPLETED_4K",
459*ba56a910SIan Rogers        "PublicDescription": "Counts completed page walks (4K page sizes) caused by a code fetch. This implies it missed in the ITLB (Instruction TLB) and further levels of TLB. The page walk can end with or without a fault.",
460*ba56a910SIan Rogers        "SampleAfterValue": "100003",
461*ba56a910SIan Rogers        "UMask": "0x2",
462*ba56a910SIan Rogers        "Unit": "cpu_core"
463*ba56a910SIan Rogers    },
464*ba56a910SIan Rogers    {
465*ba56a910SIan Rogers        "BriefDescription": "Counts the number of page walks completed due to instruction fetch misses to a 4K page.",
466*ba56a910SIan Rogers        "Counter": "0,1,2,3,4,5,6,7",
467*ba56a910SIan Rogers        "EventCode": "0x85",
468*ba56a910SIan Rogers        "EventName": "ITLB_MISSES.WALK_COMPLETED_4K",
469*ba56a910SIan Rogers        "PublicDescription": "Counts the number of page walks completed due to instruction fetches whose address translations missed in all Translation Lookaside Buffer (TLB) levels and were mapped to 4K pages.  Includes page walks that page fault.",
470*ba56a910SIan Rogers        "SampleAfterValue": "2000003",
471*ba56a910SIan Rogers        "UMask": "0x2",
472*ba56a910SIan Rogers        "Unit": "cpu_lowpower"
473*ba56a910SIan Rogers    },
474*ba56a910SIan Rogers    {
475*ba56a910SIan Rogers        "BriefDescription": "Counts the number of page walks outstanding for iside in PMH every cycle.",
476*ba56a910SIan Rogers        "Counter": "0,1,2,3,4,5,6,7",
477*ba56a910SIan Rogers        "EventCode": "0x85",
478*ba56a910SIan Rogers        "EventName": "ITLB_MISSES.WALK_PENDING",
479*ba56a910SIan Rogers        "PublicDescription": "Counts the number of page walks outstanding for iside in PMH every cycle.  A PMH page walk is outstanding from page walk start till PMH becomes idle again (ready to serve next walk). Includes EPT-walk intervals.  Walks could be counted by edge detecting on this event, but would count restarted suspended walks.",
480*ba56a910SIan Rogers        "SampleAfterValue": "200003",
481*ba56a910SIan Rogers        "UMask": "0x10",
482*ba56a910SIan Rogers        "Unit": "cpu_atom"
483*ba56a910SIan Rogers    },
484*ba56a910SIan Rogers    {
485*ba56a910SIan Rogers        "BriefDescription": "Number of page walks outstanding for an outstanding code request in the PMH each cycle.",
486*ba56a910SIan Rogers        "Counter": "0,1,2,3,4,5,6,7,8,9",
487*ba56a910SIan Rogers        "EventCode": "0x11",
488*ba56a910SIan Rogers        "EventName": "ITLB_MISSES.WALK_PENDING",
489*ba56a910SIan Rogers        "PublicDescription": "Counts the number of page walks outstanding for an outstanding code (instruction fetch) request in the PMH (Page Miss Handler) each cycle.",
490*ba56a910SIan Rogers        "SampleAfterValue": "100003",
491*ba56a910SIan Rogers        "UMask": "0x10",
492*ba56a910SIan Rogers        "Unit": "cpu_core"
493*ba56a910SIan Rogers    },
494*ba56a910SIan Rogers    {
495*ba56a910SIan Rogers        "BriefDescription": "Counts the number of page walks outstanding for iside in PMH every cycle.",
496*ba56a910SIan Rogers        "Counter": "0,1,2,3,4,5,6,7",
497*ba56a910SIan Rogers        "EventCode": "0x85",
498*ba56a910SIan Rogers        "EventName": "ITLB_MISSES.WALK_PENDING",
499*ba56a910SIan Rogers        "PublicDescription": "Counts the number of page walks outstanding for iside in PMH every cycle.  A PMH page walk is outstanding from page walk start till PMH becomes idle again (ready to serve next walk). Includes EPT-walk intervals.  Walks could be counted by edge detecting on this event, but would count restarted suspended walks.",
500*ba56a910SIan Rogers        "SampleAfterValue": "200003",
501*ba56a910SIan Rogers        "UMask": "0x10",
502*ba56a910SIan Rogers        "Unit": "cpu_lowpower"
503*ba56a910SIan Rogers    },
504*ba56a910SIan Rogers    {
505*ba56a910SIan Rogers        "BriefDescription": "Counts the number of cycles that the head (oldest load) of the load buffer and retirement are both stalled due to a DTLB miss.",
506*ba56a910SIan Rogers        "Counter": "0,1,2,3,4,5,6,7",
507*ba56a910SIan Rogers        "EventCode": "0x05",
508*ba56a910SIan Rogers        "EventName": "LD_HEAD.DTLB_MISS_AT_RET",
509*ba56a910SIan Rogers        "SampleAfterValue": "1000003",
510*ba56a910SIan Rogers        "UMask": "0x90",
511*ba56a910SIan Rogers        "Unit": "cpu_atom"
512*ba56a910SIan Rogers    },
513*ba56a910SIan Rogers    {
514*ba56a910SIan Rogers        "BriefDescription": "Counts the number of cycles that the head (oldest load) of the load buffer and retirement are both stalled due to a DTLB miss.",
515*ba56a910SIan Rogers        "Counter": "0,1,2,3,4,5,6,7",
516*ba56a910SIan Rogers        "EventCode": "0x05",
517*ba56a910SIan Rogers        "EventName": "LD_HEAD.DTLB_MISS_AT_RET",
518*ba56a910SIan Rogers        "SampleAfterValue": "1000003",
519*ba56a910SIan Rogers        "UMask": "0x90",
520*ba56a910SIan Rogers        "Unit": "cpu_lowpower"
521*ba56a910SIan Rogers    }
522*ba56a910SIan Rogers]
523