xref: /linux/tools/perf/pmu-events/arch/x86/meteorlake/virtual-memory.json (revision 5c61f59824b5e46516ea5d0543ad7a8871567416)
1[
2    {
3        "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.",
4        "Counter": "0,1,2,3,4,5,6,7",
5        "EventCode": "0x08",
6        "EventName": "DTLB_LOAD_MISSES.STLB_HIT",
7        "SampleAfterValue": "200003",
8        "UMask": "0x20",
9        "Unit": "cpu_atom"
10    },
11    {
12        "BriefDescription": "Loads that miss the DTLB and hit the STLB.",
13        "Counter": "0,1,2,3",
14        "EventCode": "0x12",
15        "EventName": "DTLB_LOAD_MISSES.STLB_HIT",
16        "PublicDescription": "Counts loads that miss the DTLB (Data TLB) and hit the STLB (Second level TLB).",
17        "SampleAfterValue": "100003",
18        "UMask": "0x20",
19        "Unit": "cpu_core"
20    },
21    {
22        "BriefDescription": "Cycles when at least one PMH is busy with a page walk for a demand load.",
23        "Counter": "0,1,2,3",
24        "CounterMask": "1",
25        "EventCode": "0x12",
26        "EventName": "DTLB_LOAD_MISSES.WALK_ACTIVE",
27        "PublicDescription": "Counts cycles when at least one PMH (Page Miss Handler) is busy with a page walk for a demand load.",
28        "SampleAfterValue": "100003",
29        "UMask": "0x10",
30        "Unit": "cpu_core"
31    },
32    {
33        "BriefDescription": "Counts the number of page walks completed due to load DTLB misses.",
34        "Counter": "0,1,2,3,4,5,6,7",
35        "EventCode": "0x08",
36        "EventName": "DTLB_LOAD_MISSES.WALK_COMPLETED",
37        "SampleAfterValue": "200003",
38        "UMask": "0xe",
39        "Unit": "cpu_atom"
40    },
41    {
42        "BriefDescription": "Load miss in all TLB levels causes a page walk that completes. (All page sizes)",
43        "Counter": "0,1,2,3",
44        "EventCode": "0x12",
45        "EventName": "DTLB_LOAD_MISSES.WALK_COMPLETED",
46        "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.",
47        "SampleAfterValue": "100003",
48        "UMask": "0xe",
49        "Unit": "cpu_core"
50    },
51    {
52        "BriefDescription": "Page walks completed due to a demand data load to a 1G page.",
53        "Counter": "0,1,2,3",
54        "EventCode": "0x12",
55        "EventName": "DTLB_LOAD_MISSES.WALK_COMPLETED_1G",
56        "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.",
57        "SampleAfterValue": "100003",
58        "UMask": "0x8",
59        "Unit": "cpu_core"
60    },
61    {
62        "BriefDescription": "Counts the number of page walks completed due to load DTLB misses to a 2M or 4M page.",
63        "Counter": "0,1,2,3,4,5,6,7",
64        "EventCode": "0x08",
65        "EventName": "DTLB_LOAD_MISSES.WALK_COMPLETED_2M_4M",
66        "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.",
67        "SampleAfterValue": "200003",
68        "UMask": "0x4",
69        "Unit": "cpu_atom"
70    },
71    {
72        "BriefDescription": "Page walks completed due to a demand data load to a 2M/4M page.",
73        "Counter": "0,1,2,3",
74        "EventCode": "0x12",
75        "EventName": "DTLB_LOAD_MISSES.WALK_COMPLETED_2M_4M",
76        "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.",
77        "SampleAfterValue": "100003",
78        "UMask": "0x4",
79        "Unit": "cpu_core"
80    },
81    {
82        "BriefDescription": "Counts the number of page walks completed due to load DTLB misses to a 4K page.",
83        "Counter": "0,1,2,3,4,5,6,7",
84        "EventCode": "0x08",
85        "EventName": "DTLB_LOAD_MISSES.WALK_COMPLETED_4K",
86        "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.",
87        "SampleAfterValue": "200003",
88        "UMask": "0x2",
89        "Unit": "cpu_atom"
90    },
91    {
92        "BriefDescription": "Page walks completed due to a demand data load to a 4K page.",
93        "Counter": "0,1,2,3",
94        "EventCode": "0x12",
95        "EventName": "DTLB_LOAD_MISSES.WALK_COMPLETED_4K",
96        "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.",
97        "SampleAfterValue": "100003",
98        "UMask": "0x2",
99        "Unit": "cpu_core"
100    },
101    {
102        "BriefDescription": "Counts the number of page walks outstanding for Loads (demand or SW prefetch) in PMH every cycle.",
103        "Counter": "0,1,2,3,4,5,6,7",
104        "EventCode": "0x08",
105        "EventName": "DTLB_LOAD_MISSES.WALK_PENDING",
106        "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.",
107        "SampleAfterValue": "200003",
108        "UMask": "0x10",
109        "Unit": "cpu_atom"
110    },
111    {
112        "BriefDescription": "Number of page walks outstanding for a demand load in the PMH each cycle.",
113        "Counter": "0,1,2,3",
114        "EventCode": "0x12",
115        "EventName": "DTLB_LOAD_MISSES.WALK_PENDING",
116        "PublicDescription": "Counts the number of page walks outstanding for a demand load in the PMH (Page Miss Handler) each cycle.",
117        "SampleAfterValue": "100003",
118        "UMask": "0x10",
119        "Unit": "cpu_core"
120    },
121    {
122        "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.",
123        "Counter": "0,1,2,3,4,5,6,7",
124        "EventCode": "0x49",
125        "EventName": "DTLB_STORE_MISSES.STLB_HIT",
126        "SampleAfterValue": "2000003",
127        "UMask": "0x20",
128        "Unit": "cpu_atom"
129    },
130    {
131        "BriefDescription": "Stores that miss the DTLB and hit the STLB.",
132        "Counter": "0,1,2,3",
133        "EventCode": "0x13",
134        "EventName": "DTLB_STORE_MISSES.STLB_HIT",
135        "PublicDescription": "Counts stores that miss the DTLB (Data TLB) and hit the STLB (2nd Level TLB).",
136        "SampleAfterValue": "100003",
137        "UMask": "0x20",
138        "Unit": "cpu_core"
139    },
140    {
141        "BriefDescription": "Cycles when at least one PMH is busy with a page walk for a store.",
142        "Counter": "0,1,2,3",
143        "CounterMask": "1",
144        "EventCode": "0x13",
145        "EventName": "DTLB_STORE_MISSES.WALK_ACTIVE",
146        "PublicDescription": "Counts cycles when at least one PMH (Page Miss Handler) is busy with a page walk for a store.",
147        "SampleAfterValue": "100003",
148        "UMask": "0x10",
149        "Unit": "cpu_core"
150    },
151    {
152        "BriefDescription": "Counts the number of page walks completed due to store DTLB misses to a 1G page.",
153        "Counter": "0,1,2,3,4,5,6,7",
154        "EventCode": "0x49",
155        "EventName": "DTLB_STORE_MISSES.WALK_COMPLETED",
156        "SampleAfterValue": "2000003",
157        "UMask": "0xe",
158        "Unit": "cpu_atom"
159    },
160    {
161        "BriefDescription": "Store misses in all TLB levels causes a page walk that completes. (All page sizes)",
162        "Counter": "0,1,2,3",
163        "EventCode": "0x13",
164        "EventName": "DTLB_STORE_MISSES.WALK_COMPLETED",
165        "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.",
166        "SampleAfterValue": "100003",
167        "UMask": "0xe",
168        "Unit": "cpu_core"
169    },
170    {
171        "BriefDescription": "Page walks completed due to a demand data store to a 1G page.",
172        "Counter": "0,1,2,3",
173        "EventCode": "0x13",
174        "EventName": "DTLB_STORE_MISSES.WALK_COMPLETED_1G",
175        "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.",
176        "SampleAfterValue": "100003",
177        "UMask": "0x8",
178        "Unit": "cpu_core"
179    },
180    {
181        "BriefDescription": "Counts the number of page walks completed due to store DTLB misses to a 2M or 4M page.",
182        "Counter": "0,1,2,3,4,5,6,7",
183        "EventCode": "0x49",
184        "EventName": "DTLB_STORE_MISSES.WALK_COMPLETED_2M_4M",
185        "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.",
186        "SampleAfterValue": "2000003",
187        "UMask": "0x4",
188        "Unit": "cpu_atom"
189    },
190    {
191        "BriefDescription": "Page walks completed due to a demand data store to a 2M/4M page.",
192        "Counter": "0,1,2,3",
193        "EventCode": "0x13",
194        "EventName": "DTLB_STORE_MISSES.WALK_COMPLETED_2M_4M",
195        "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.",
196        "SampleAfterValue": "100003",
197        "UMask": "0x4",
198        "Unit": "cpu_core"
199    },
200    {
201        "BriefDescription": "Counts the number of page walks completed due to store DTLB misses to a 4K page.",
202        "Counter": "0,1,2,3,4,5,6,7",
203        "EventCode": "0x49",
204        "EventName": "DTLB_STORE_MISSES.WALK_COMPLETED_4K",
205        "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.",
206        "SampleAfterValue": "2000003",
207        "UMask": "0x2",
208        "Unit": "cpu_atom"
209    },
210    {
211        "BriefDescription": "Page walks completed due to a demand data store to a 4K page.",
212        "Counter": "0,1,2,3",
213        "EventCode": "0x13",
214        "EventName": "DTLB_STORE_MISSES.WALK_COMPLETED_4K",
215        "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.",
216        "SampleAfterValue": "100003",
217        "UMask": "0x2",
218        "Unit": "cpu_core"
219    },
220    {
221        "BriefDescription": "Counts the number of page walks outstanding in the page miss handler (PMH) for stores every cycle.",
222        "Counter": "0,1,2,3,4,5,6,7",
223        "EventCode": "0x49",
224        "EventName": "DTLB_STORE_MISSES.WALK_PENDING",
225        "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.",
226        "SampleAfterValue": "200003",
227        "UMask": "0x10",
228        "Unit": "cpu_atom"
229    },
230    {
231        "BriefDescription": "Number of page walks outstanding for a store in the PMH each cycle.",
232        "Counter": "0,1,2,3",
233        "EventCode": "0x13",
234        "EventName": "DTLB_STORE_MISSES.WALK_PENDING",
235        "PublicDescription": "Counts the number of page walks outstanding for a store in the PMH (Page Miss Handler) each cycle.",
236        "SampleAfterValue": "100003",
237        "UMask": "0x10",
238        "Unit": "cpu_core"
239    },
240    {
241        "BriefDescription": "Counts the number of page walks initiated by a instruction fetch that missed the first and second level TLBs.",
242        "Counter": "0,1,2,3,4,5,6,7",
243        "EventCode": "0x85",
244        "EventName": "ITLB_MISSES.MISS_CAUSED_WALK",
245        "SampleAfterValue": "1000003",
246        "UMask": "0x1",
247        "Unit": "cpu_atom"
248    },
249    {
250        "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.",
251        "Counter": "0,1,2,3,4,5,6,7",
252        "EventCode": "0x85",
253        "EventName": "ITLB_MISSES.STLB_HIT",
254        "SampleAfterValue": "2000003",
255        "UMask": "0x20",
256        "Unit": "cpu_atom"
257    },
258    {
259        "BriefDescription": "Instruction fetch requests that miss the ITLB and hit the STLB.",
260        "Counter": "0,1,2,3",
261        "EventCode": "0x11",
262        "EventName": "ITLB_MISSES.STLB_HIT",
263        "PublicDescription": "Counts instruction fetch requests that miss the ITLB (Instruction TLB) and hit the STLB (Second-level TLB).",
264        "SampleAfterValue": "100003",
265        "UMask": "0x20",
266        "Unit": "cpu_core"
267    },
268    {
269        "BriefDescription": "Cycles when at least one PMH is busy with a page walk for code (instruction fetch) request.",
270        "Counter": "0,1,2,3",
271        "CounterMask": "1",
272        "EventCode": "0x11",
273        "EventName": "ITLB_MISSES.WALK_ACTIVE",
274        "PublicDescription": "Counts cycles when at least one PMH (Page Miss Handler) is busy with a page walk for a code (instruction fetch) request.",
275        "SampleAfterValue": "100003",
276        "UMask": "0x10",
277        "Unit": "cpu_core"
278    },
279    {
280        "BriefDescription": "Counts the number of page walks completed due to instruction fetch misses to any page size.",
281        "Counter": "0,1,2,3,4,5,6,7",
282        "EventCode": "0x85",
283        "EventName": "ITLB_MISSES.WALK_COMPLETED",
284        "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.",
285        "SampleAfterValue": "200003",
286        "UMask": "0xe",
287        "Unit": "cpu_atom"
288    },
289    {
290        "BriefDescription": "Code miss in all TLB levels causes a page walk that completes. (All page sizes)",
291        "Counter": "0,1,2,3",
292        "EventCode": "0x11",
293        "EventName": "ITLB_MISSES.WALK_COMPLETED",
294        "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.",
295        "SampleAfterValue": "100003",
296        "UMask": "0xe",
297        "Unit": "cpu_core"
298    },
299    {
300        "BriefDescription": "Counts the number of page walks completed due to instruction fetch misses to a 2M or 4M page.",
301        "Counter": "0,1,2,3,4,5,6,7",
302        "EventCode": "0x85",
303        "EventName": "ITLB_MISSES.WALK_COMPLETED_2M_4M",
304        "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.",
305        "SampleAfterValue": "2000003",
306        "UMask": "0x4",
307        "Unit": "cpu_atom"
308    },
309    {
310        "BriefDescription": "Code miss in all TLB levels causes a page walk that completes. (2M/4M)",
311        "Counter": "0,1,2,3",
312        "EventCode": "0x11",
313        "EventName": "ITLB_MISSES.WALK_COMPLETED_2M_4M",
314        "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.",
315        "SampleAfterValue": "100003",
316        "UMask": "0x4",
317        "Unit": "cpu_core"
318    },
319    {
320        "BriefDescription": "Counts the number of page walks completed due to instruction fetch misses to a 4K page.",
321        "Counter": "0,1,2,3,4,5,6,7",
322        "EventCode": "0x85",
323        "EventName": "ITLB_MISSES.WALK_COMPLETED_4K",
324        "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.",
325        "SampleAfterValue": "2000003",
326        "UMask": "0x2",
327        "Unit": "cpu_atom"
328    },
329    {
330        "BriefDescription": "Code miss in all TLB levels causes a page walk that completes. (4K)",
331        "Counter": "0,1,2,3",
332        "EventCode": "0x11",
333        "EventName": "ITLB_MISSES.WALK_COMPLETED_4K",
334        "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.",
335        "SampleAfterValue": "100003",
336        "UMask": "0x2",
337        "Unit": "cpu_core"
338    },
339    {
340        "BriefDescription": "Counts the number of page walks outstanding for iside in PMH every cycle.",
341        "Counter": "0,1,2,3,4,5,6,7",
342        "EventCode": "0x85",
343        "EventName": "ITLB_MISSES.WALK_PENDING",
344        "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.",
345        "SampleAfterValue": "200003",
346        "UMask": "0x10",
347        "Unit": "cpu_atom"
348    },
349    {
350        "BriefDescription": "Number of page walks outstanding for an outstanding code request in the PMH each cycle.",
351        "Counter": "0,1,2,3",
352        "EventCode": "0x11",
353        "EventName": "ITLB_MISSES.WALK_PENDING",
354        "PublicDescription": "Counts the number of page walks outstanding for an outstanding code (instruction fetch) request in the PMH (Page Miss Handler) each cycle.",
355        "SampleAfterValue": "100003",
356        "UMask": "0x10",
357        "Unit": "cpu_core"
358    },
359    {
360        "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.",
361        "Counter": "0,1,2,3,4,5,6,7",
362        "EventCode": "0x05",
363        "EventName": "LD_HEAD.DTLB_MISS_AT_RET",
364        "SampleAfterValue": "1000003",
365        "UMask": "0x90",
366        "Unit": "cpu_atom"
367    }
368]
369