FD.io VPP  v19.04.4-rc0-5-ge88582fac
Vector Packet Processing
perfmon_intel_bdx.c
Go to the documentation of this file.
1 
3 
4 static perfmon_intel_pmc_cpu_model_t cpu_model_table[] = {
5  {0x4F, 0x00, 0},
6 
7 };
8 
9 static perfmon_intel_pmc_event_t event_table[] = {
10  {
11  .event_code = {0x00},
12  .umask = 0x01,
13  .event_name = "inst_retired.any",
14  },
15  {
16  .event_code = {0x00},
17  .umask = 0x02,
18  .event_name = "cpu_clk_unhalted.thread",
19  },
20  {
21  .event_code = {0x00},
22  .umask = 0x02,
23  .event_name = "cpu_clk_unhalted.thread_any",
24  },
25  {
26  .event_code = {0x00},
27  .umask = 0x03,
28  .event_name = "cpu_clk_unhalted.ref_tsc",
29  },
30  {
31  .event_code = {0x03},
32  .umask = 0x02,
33  .event_name = "ld_blocks.store_forward",
34  },
35  {
36  .event_code = {0x03},
37  .umask = 0x08,
38  .event_name = "ld_blocks.no_sr",
39  },
40  {
41  .event_code = {0x05},
42  .umask = 0x01,
43  .event_name = "misalign_mem_ref.loads",
44  },
45  {
46  .event_code = {0x05},
47  .umask = 0x02,
48  .event_name = "misalign_mem_ref.stores",
49  },
50  {
51  .event_code = {0x07},
52  .umask = 0x01,
53  .event_name = "ld_blocks_partial.address_alias",
54  },
55  {
56  .event_code = {0x08},
57  .umask = 0x01,
58  .event_name = "dtlb_load_misses.miss_causes_a_walk",
59  },
60  {
61  .event_code = {0x08},
62  .umask = 0x02,
63  .event_name = "dtlb_load_misses.walk_completed_4k",
64  },
65  {
66  .event_code = {0x08},
67  .umask = 0x04,
68  .event_name = "dtlb_load_misses.walk_completed_2m_4m",
69  },
70  {
71  .event_code = {0x08},
72  .umask = 0x08,
73  .event_name = "dtlb_load_misses.walk_completed_1g",
74  },
75  {
76  .event_code = {0x08},
77  .umask = 0x0e,
78  .event_name = "dtlb_load_misses.walk_completed",
79  },
80  {
81  .event_code = {0x08},
82  .umask = 0x10,
83  .event_name = "dtlb_load_misses.walk_duration",
84  },
85  {
86  .event_code = {0x08},
87  .umask = 0x20,
88  .event_name = "dtlb_load_misses.stlb_hit_4k",
89  },
90  {
91  .event_code = {0x08},
92  .umask = 0x40,
93  .event_name = "dtlb_load_misses.stlb_hit_2m",
94  },
95  {
96  .event_code = {0x08},
97  .umask = 0x60,
98  .event_name = "dtlb_load_misses.stlb_hit",
99  },
100  {
101  .event_code = {0x0D},
102  .umask = 0x03,
103  .event_name = "int_misc.recovery_cycles",
104  },
105  {
106  .event_code = {0x0D},
107  .umask = 0x03,
108  .event_name = "int_misc.recovery_cycles_any",
109  },
110  {
111  .event_code = {0x0D},
112  .umask = 0x08,
113  .event_name = "int_misc.rat_stall_cycles",
114  },
115  {
116  .event_code = {0x0E},
117  .umask = 0x01,
118  .event_name = "uops_issued.any",
119  },
120  {
121  .event_code = {0x0E},
122  .umask = 0x01,
123  .event_name = "uops_issued.stall_cycles",
124  },
125  {
126  .event_code = {0x0E},
127  .umask = 0x10,
128  .event_name = "uops_issued.flags_merge",
129  },
130  {
131  .event_code = {0x0E},
132  .umask = 0x20,
133  .event_name = "uops_issued.slow_lea",
134  },
135  {
136  .event_code = {0x0E},
137  .umask = 0x40,
138  .event_name = "uops_issued.single_mul",
139  },
140  {
141  .event_code = {0x14},
142  .umask = 0x01,
143  .event_name = "arith.fpu_div_active",
144  },
145  {
146  .event_code = {0x24},
147  .umask = 0x21,
148  .event_name = "l2_rqsts.demand_data_rd_miss",
149  },
150  {
151  .event_code = {0x24},
152  .umask = 0x22,
153  .event_name = "l2_rqsts.rfo_miss",
154  },
155  {
156  .event_code = {0x24},
157  .umask = 0x24,
158  .event_name = "l2_rqsts.code_rd_miss",
159  },
160  {
161  .event_code = {0x24},
162  .umask = 0x27,
163  .event_name = "l2_rqsts.all_demand_miss",
164  },
165  {
166  .event_code = {0x24},
167  .umask = 0x30,
168  .event_name = "l2_rqsts.l2_pf_miss",
169  },
170  {
171  .event_code = {0x24},
172  .umask = 0x3F,
173  .event_name = "l2_rqsts.miss",
174  },
175  {
176  .event_code = {0x24},
177  .umask = 0xc1,
178  .event_name = "l2_rqsts.demand_data_rd_hit",
179  },
180  {
181  .event_code = {0x24},
182  .umask = 0xc2,
183  .event_name = "l2_rqsts.rfo_hit",
184  },
185  {
186  .event_code = {0x24},
187  .umask = 0xc4,
188  .event_name = "l2_rqsts.code_rd_hit",
189  },
190  {
191  .event_code = {0x24},
192  .umask = 0xd0,
193  .event_name = "l2_rqsts.l2_pf_hit",
194  },
195  {
196  .event_code = {0x24},
197  .umask = 0xE1,
198  .event_name = "l2_rqsts.all_demand_data_rd",
199  },
200  {
201  .event_code = {0x24},
202  .umask = 0xE2,
203  .event_name = "l2_rqsts.all_rfo",
204  },
205  {
206  .event_code = {0x24},
207  .umask = 0xE4,
208  .event_name = "l2_rqsts.all_code_rd",
209  },
210  {
211  .event_code = {0x24},
212  .umask = 0xe7,
213  .event_name = "l2_rqsts.all_demand_references",
214  },
215  {
216  .event_code = {0x24},
217  .umask = 0xF8,
218  .event_name = "l2_rqsts.all_pf",
219  },
220  {
221  .event_code = {0x24},
222  .umask = 0xFF,
223  .event_name = "l2_rqsts.references",
224  },
225  {
226  .event_code = {0x27},
227  .umask = 0x50,
228  .event_name = "l2_demand_rqsts.wb_hit",
229  },
230  {
231  .event_code = {0x2E},
232  .umask = 0x41,
233  .event_name = "longest_lat_cache.miss",
234  },
235  {
236  .event_code = {0x2E},
237  .umask = 0x4F,
238  .event_name = "longest_lat_cache.reference",
239  },
240  {
241  .event_code = {0x3C},
242  .umask = 0x00,
243  .event_name = "cpu_clk_unhalted.thread_p",
244  },
245  {
246  .event_code = {0x3C},
247  .umask = 0x00,
248  .event_name = "cpu_clk_unhalted.thread_p_any",
249  },
250  {
251  .event_code = {0x3C},
252  .umask = 0x01,
253  .event_name = "cpu_clk_thread_unhalted.ref_xclk",
254  },
255  {
256  .event_code = {0x3C},
257  .umask = 0x01,
258  .event_name = "cpu_clk_thread_unhalted.ref_xclk_any",
259  },
260  {
261  .event_code = {0x3c},
262  .umask = 0x02,
263  .event_name = "cpu_clk_thread_unhalted.one_thread_active",
264  },
265  {
266  .event_code = {0x48},
267  .umask = 0x01,
268  .event_name = "l1d_pend_miss.pending",
269  },
270  {
271  .event_code = {0x48},
272  .umask = 0x01,
273  .event_name = "l1d_pend_miss.pending_cycles",
274  },
275  {
276  .event_code = {0x49},
277  .umask = 0x01,
278  .event_name = "dtlb_store_misses.miss_causes_a_walk",
279  },
280  {
281  .event_code = {0x49},
282  .umask = 0x02,
283  .event_name = "dtlb_store_misses.walk_completed_4k",
284  },
285  {
286  .event_code = {0x49},
287  .umask = 0x04,
288  .event_name = "dtlb_store_misses.walk_completed_2m_4m",
289  },
290  {
291  .event_code = {0x49},
292  .umask = 0x08,
293  .event_name = "dtlb_store_misses.walk_completed_1g",
294  },
295  {
296  .event_code = {0x49},
297  .umask = 0x0e,
298  .event_name = "dtlb_store_misses.walk_completed",
299  },
300  {
301  .event_code = {0x49},
302  .umask = 0x10,
303  .event_name = "dtlb_store_misses.walk_duration",
304  },
305  {
306  .event_code = {0x49},
307  .umask = 0x20,
308  .event_name = "dtlb_store_misses.stlb_hit_4k",
309  },
310  {
311  .event_code = {0x49},
312  .umask = 0x40,
313  .event_name = "dtlb_store_misses.stlb_hit_2m",
314  },
315  {
316  .event_code = {0x49},
317  .umask = 0x60,
318  .event_name = "dtlb_store_misses.stlb_hit",
319  },
320  {
321  .event_code = {0x4c},
322  .umask = 0x01,
323  .event_name = "load_hit_pre.sw_pf",
324  },
325  {
326  .event_code = {0x4C},
327  .umask = 0x02,
328  .event_name = "load_hit_pre.hw_pf",
329  },
330  {
331  .event_code = {0x4F},
332  .umask = 0x10,
333  .event_name = "ept.walk_cycles",
334  },
335  {
336  .event_code = {0x51},
337  .umask = 0x01,
338  .event_name = "l1d.replacement",
339  },
340  {
341  .event_code = {0x54},
342  .umask = 0x01,
343  .event_name = "tx_mem.abort_conflict",
344  },
345  {
346  .event_code = {0x54},
347  .umask = 0x02,
348  .event_name = "tx_mem.abort_capacity_write",
349  },
350  {
351  .event_code = {0x54},
352  .umask = 0x04,
353  .event_name = "tx_mem.abort_hle_store_to_elided_lock",
354  },
355  {
356  .event_code = {0x54},
357  .umask = 0x08,
358  .event_name = "tx_mem.abort_hle_elision_buffer_not_empty",
359  },
360  {
361  .event_code = {0x54},
362  .umask = 0x10,
363  .event_name = "tx_mem.abort_hle_elision_buffer_mismatch",
364  },
365  {
366  .event_code = {0x54},
367  .umask = 0x20,
368  .event_name = "tx_mem.abort_hle_elision_buffer_unsupported_alignment",
369  },
370  {
371  .event_code = {0x54},
372  .umask = 0x40,
373  .event_name = "tx_mem.hle_elision_buffer_full",
374  },
375  {
376  .event_code = {0x58},
377  .umask = 0x01,
378  .event_name = "move_elimination.int_eliminated",
379  },
380  {
381  .event_code = {0x58},
382  .umask = 0x02,
383  .event_name = "move_elimination.simd_eliminated",
384  },
385  {
386  .event_code = {0x58},
387  .umask = 0x04,
388  .event_name = "move_elimination.int_not_eliminated",
389  },
390  {
391  .event_code = {0x58},
392  .umask = 0x08,
393  .event_name = "move_elimination.simd_not_eliminated",
394  },
395  {
396  .event_code = {0x5C},
397  .umask = 0x01,
398  .event_name = "cpl_cycles.ring0",
399  },
400  {
401  .event_code = {0x5C},
402  .umask = 0x01,
403  .event_name = "cpl_cycles.ring0_trans",
404  },
405  {
406  .event_code = {0x5C},
407  .umask = 0x02,
408  .event_name = "cpl_cycles.ring123",
409  },
410  {
411  .event_code = {0x5d},
412  .umask = 0x01,
413  .event_name = "tx_exec.misc1",
414  },
415  {
416  .event_code = {0x5d},
417  .umask = 0x02,
418  .event_name = "tx_exec.misc2",
419  },
420  {
421  .event_code = {0x5d},
422  .umask = 0x04,
423  .event_name = "tx_exec.misc3",
424  },
425  {
426  .event_code = {0x5d},
427  .umask = 0x08,
428  .event_name = "tx_exec.misc4",
429  },
430  {
431  .event_code = {0x5d},
432  .umask = 0x10,
433  .event_name = "tx_exec.misc5",
434  },
435  {
436  .event_code = {0x5E},
437  .umask = 0x01,
438  .event_name = "rs_events.empty_cycles",
439  },
440  {
441  .event_code = {0x5E},
442  .umask = 0x01,
443  .event_name = "rs_events.empty_end",
444  },
445  {
446  .event_code = {0x60},
447  .umask = 0x01,
448  .event_name = "offcore_requests_outstanding.demand_data_rd",
449  },
450  {
451  .event_code = {0x60},
452  .umask = 0x01,
453  .event_name = "offcore_requests_outstanding.cycles_with_demand_data_rd",
454  },
455  {
456  .event_code = {0x60},
457  .umask = 0x02,
458  .event_name = "offcore_requests_outstanding.demand_code_rd",
459  },
460  {
461  .event_code = {0x60},
462  .umask = 0x04,
463  .event_name = "offcore_requests_outstanding.demand_rfo",
464  },
465  {
466  .event_code = {0x60},
467  .umask = 0x04,
468  .event_name = "offcore_requests_outstanding.cycles_with_demand_rfo",
469  },
470  {
471  .event_code = {0x60},
472  .umask = 0x08,
473  .event_name = "offcore_requests_outstanding.all_data_rd",
474  },
475  {
476  .event_code = {0x60},
477  .umask = 0x08,
478  .event_name = "offcore_requests_outstanding.cycles_with_data_rd",
479  },
480  {
481  .event_code = {0x63},
482  .umask = 0x01,
483  .event_name = "lock_cycles.split_lock_uc_lock_duration",
484  },
485  {
486  .event_code = {0x63},
487  .umask = 0x02,
488  .event_name = "lock_cycles.cache_lock_duration",
489  },
490  {
491  .event_code = {0x79},
492  .umask = 0x02,
493  .event_name = "idq.empty",
494  },
495  {
496  .event_code = {0x79},
497  .umask = 0x04,
498  .event_name = "idq.mite_uops",
499  },
500  {
501  .event_code = {0x79},
502  .umask = 0x04,
503  .event_name = "idq.mite_cycles",
504  },
505  {
506  .event_code = {0x79},
507  .umask = 0x08,
508  .event_name = "idq.dsb_uops",
509  },
510  {
511  .event_code = {0x79},
512  .umask = 0x08,
513  .event_name = "idq.dsb_cycles",
514  },
515  {
516  .event_code = {0x79},
517  .umask = 0x10,
518  .event_name = "idq.ms_dsb_uops",
519  },
520  {
521  .event_code = {0x79},
522  .umask = 0x10,
523  .event_name = "idq.ms_dsb_cycles",
524  },
525  {
526  .event_code = {0x79},
527  .umask = 0x10,
528  .event_name = "idq.ms_dsb_occur",
529  },
530  {
531  .event_code = {0x79},
532  .umask = 0x18,
533  .event_name = "idq.all_dsb_cycles_4_uops",
534  },
535  {
536  .event_code = {0x79},
537  .umask = 0x18,
538  .event_name = "idq.all_dsb_cycles_any_uops",
539  },
540  {
541  .event_code = {0x79},
542  .umask = 0x20,
543  .event_name = "idq.ms_mite_uops",
544  },
545  {
546  .event_code = {0x79},
547  .umask = 0x24,
548  .event_name = "idq.all_mite_cycles_4_uops",
549  },
550  {
551  .event_code = {0x79},
552  .umask = 0x24,
553  .event_name = "idq.all_mite_cycles_any_uops",
554  },
555  {
556  .event_code = {0x79},
557  .umask = 0x30,
558  .event_name = "idq.ms_uops",
559  },
560  {
561  .event_code = {0x79},
562  .umask = 0x30,
563  .event_name = "idq.ms_cycles",
564  },
565  {
566  .event_code = {0x79},
567  .umask = 0x30,
568  .event_name = "idq.ms_switches",
569  },
570  {
571  .event_code = {0x79},
572  .umask = 0x3C,
573  .event_name = "idq.mite_all_uops",
574  },
575  {
576  .event_code = {0x80},
577  .umask = 0x01,
578  .event_name = "icache.hit",
579  },
580  {
581  .event_code = {0x80},
582  .umask = 0x02,
583  .event_name = "icache.misses",
584  },
585  {
586  .event_code = {0x80},
587  .umask = 0x04,
588  .event_name = "icache.ifdata_stall",
589  },
590  {
591  .event_code = {0x85},
592  .umask = 0x01,
593  .event_name = "itlb_misses.miss_causes_a_walk",
594  },
595  {
596  .event_code = {0x85},
597  .umask = 0x02,
598  .event_name = "itlb_misses.walk_completed_4k",
599  },
600  {
601  .event_code = {0x85},
602  .umask = 0x04,
603  .event_name = "itlb_misses.walk_completed_2m_4m",
604  },
605  {
606  .event_code = {0x85},
607  .umask = 0x08,
608  .event_name = "itlb_misses.walk_completed_1g",
609  },
610  {
611  .event_code = {0x85},
612  .umask = 0x0e,
613  .event_name = "itlb_misses.walk_completed",
614  },
615  {
616  .event_code = {0x85},
617  .umask = 0x10,
618  .event_name = "itlb_misses.walk_duration",
619  },
620  {
621  .event_code = {0x85},
622  .umask = 0x20,
623  .event_name = "itlb_misses.stlb_hit_4k",
624  },
625  {
626  .event_code = {0x85},
627  .umask = 0x40,
628  .event_name = "itlb_misses.stlb_hit_2m",
629  },
630  {
631  .event_code = {0x85},
632  .umask = 0x60,
633  .event_name = "itlb_misses.stlb_hit",
634  },
635  {
636  .event_code = {0x87},
637  .umask = 0x01,
638  .event_name = "ild_stall.lcp",
639  },
640  {
641  .event_code = {0x88},
642  .umask = 0x41,
643  .event_name = "br_inst_exec.nontaken_conditional",
644  },
645  {
646  .event_code = {0x88},
647  .umask = 0x81,
648  .event_name = "br_inst_exec.taken_conditional",
649  },
650  {
651  .event_code = {0x88},
652  .umask = 0x82,
653  .event_name = "br_inst_exec.taken_direct_jump",
654  },
655  {
656  .event_code = {0x88},
657  .umask = 0x84,
658  .event_name = "br_inst_exec.taken_indirect_jump_non_call_ret",
659  },
660  {
661  .event_code = {0x88},
662  .umask = 0x88,
663  .event_name = "br_inst_exec.taken_indirect_near_return",
664  },
665  {
666  .event_code = {0x88},
667  .umask = 0x90,
668  .event_name = "br_inst_exec.taken_direct_near_call",
669  },
670  {
671  .event_code = {0x88},
672  .umask = 0xA0,
673  .event_name = "br_inst_exec.taken_indirect_near_call",
674  },
675  {
676  .event_code = {0x88},
677  .umask = 0xC1,
678  .event_name = "br_inst_exec.all_conditional",
679  },
680  {
681  .event_code = {0x88},
682  .umask = 0xC2,
683  .event_name = "br_inst_exec.all_direct_jmp",
684  },
685  {
686  .event_code = {0x88},
687  .umask = 0xC4,
688  .event_name = "br_inst_exec.all_indirect_jump_non_call_ret",
689  },
690  {
691  .event_code = {0x88},
692  .umask = 0xC8,
693  .event_name = "br_inst_exec.all_indirect_near_return",
694  },
695  {
696  .event_code = {0x88},
697  .umask = 0xD0,
698  .event_name = "br_inst_exec.all_direct_near_call",
699  },
700  {
701  .event_code = {0x88},
702  .umask = 0xFF,
703  .event_name = "br_inst_exec.all_branches",
704  },
705  {
706  .event_code = {0x89},
707  .umask = 0x41,
708  .event_name = "br_misp_exec.nontaken_conditional",
709  },
710  {
711  .event_code = {0x89},
712  .umask = 0x81,
713  .event_name = "br_misp_exec.taken_conditional",
714  },
715  {
716  .event_code = {0x89},
717  .umask = 0x84,
718  .event_name = "br_misp_exec.taken_indirect_jump_non_call_ret",
719  },
720  {
721  .event_code = {0x89},
722  .umask = 0x88,
723  .event_name = "br_misp_exec.taken_return_near",
724  },
725  {
726  .event_code = {0x89},
727  .umask = 0xA0,
728  .event_name = "br_misp_exec.taken_indirect_near_call",
729  },
730  {
731  .event_code = {0x89},
732  .umask = 0xC1,
733  .event_name = "br_misp_exec.all_conditional",
734  },
735  {
736  .event_code = {0x89},
737  .umask = 0xC4,
738  .event_name = "br_misp_exec.all_indirect_jump_non_call_ret",
739  },
740  {
741  .event_code = {0x89},
742  .umask = 0xFF,
743  .event_name = "br_misp_exec.all_branches",
744  },
745  {
746  .event_code = {0x9C},
747  .umask = 0x01,
748  .event_name = "idq_uops_not_delivered.core",
749  },
750  {
751  .event_code = {0x9C},
752  .umask = 0x01,
753  .event_name = "idq_uops_not_delivered.cycles_0_uops_deliv.core",
754  },
755  {
756  .event_code = {0x9C},
757  .umask = 0x01,
758  .event_name = "idq_uops_not_delivered.cycles_le_1_uop_deliv.core",
759  },
760  {
761  .event_code = {0x9C},
762  .umask = 0x01,
763  .event_name = "idq_uops_not_delivered.cycles_le_2_uop_deliv.core",
764  },
765  {
766  .event_code = {0x9C},
767  .umask = 0x01,
768  .event_name = "idq_uops_not_delivered.cycles_le_3_uop_deliv.core",
769  },
770  {
771  .event_code = {0x9C},
772  .umask = 0x01,
773  .event_name = "idq_uops_not_delivered.cycles_fe_was_ok",
774  },
775  {
776  .event_code = {0xA1},
777  .umask = 0x01,
778  .event_name = "uops_dispatched_port.port_0",
779  },
780  {
781  .event_code = {0xA1},
782  .umask = 0x01,
783  .event_name = "uops_executed_port.port_0_core",
784  },
785  {
786  .event_code = {0xA1},
787  .umask = 0x01,
788  .event_name = "uops_executed_port.port_0",
789  },
790  {
791  .event_code = {0xA1},
792  .umask = 0x02,
793  .event_name = "uops_dispatched_port.port_1",
794  },
795  {
796  .event_code = {0xA1},
797  .umask = 0x02,
798  .event_name = "uops_executed_port.port_1_core",
799  },
800  {
801  .event_code = {0xA1},
802  .umask = 0x02,
803  .event_name = "uops_executed_port.port_1",
804  },
805  {
806  .event_code = {0xA1},
807  .umask = 0x04,
808  .event_name = "uops_dispatched_port.port_2",
809  },
810  {
811  .event_code = {0xA1},
812  .umask = 0x04,
813  .event_name = "uops_executed_port.port_2_core",
814  },
815  {
816  .event_code = {0xA1},
817  .umask = 0x04,
818  .event_name = "uops_executed_port.port_2",
819  },
820  {
821  .event_code = {0xA1},
822  .umask = 0x08,
823  .event_name = "uops_dispatched_port.port_3",
824  },
825  {
826  .event_code = {0xA1},
827  .umask = 0x08,
828  .event_name = "uops_executed_port.port_3_core",
829  },
830  {
831  .event_code = {0xA1},
832  .umask = 0x08,
833  .event_name = "uops_executed_port.port_3",
834  },
835  {
836  .event_code = {0xA1},
837  .umask = 0x10,
838  .event_name = "uops_dispatched_port.port_4",
839  },
840  {
841  .event_code = {0xA1},
842  .umask = 0x10,
843  .event_name = "uops_executed_port.port_4_core",
844  },
845  {
846  .event_code = {0xA1},
847  .umask = 0x10,
848  .event_name = "uops_executed_port.port_4",
849  },
850  {
851  .event_code = {0xA1},
852  .umask = 0x20,
853  .event_name = "uops_dispatched_port.port_5",
854  },
855  {
856  .event_code = {0xA1},
857  .umask = 0x20,
858  .event_name = "uops_executed_port.port_5_core",
859  },
860  {
861  .event_code = {0xA1},
862  .umask = 0x20,
863  .event_name = "uops_executed_port.port_5",
864  },
865  {
866  .event_code = {0xA1},
867  .umask = 0x40,
868  .event_name = "uops_dispatched_port.port_6",
869  },
870  {
871  .event_code = {0xA1},
872  .umask = 0x40,
873  .event_name = "uops_executed_port.port_6_core",
874  },
875  {
876  .event_code = {0xA1},
877  .umask = 0x40,
878  .event_name = "uops_executed_port.port_6",
879  },
880  {
881  .event_code = {0xA1},
882  .umask = 0x80,
883  .event_name = "uops_dispatched_port.port_7",
884  },
885  {
886  .event_code = {0xA1},
887  .umask = 0x80,
888  .event_name = "uops_executed_port.port_7_core",
889  },
890  {
891  .event_code = {0xA1},
892  .umask = 0x80,
893  .event_name = "uops_executed_port.port_7",
894  },
895  {
896  .event_code = {0xa2},
897  .umask = 0x01,
898  .event_name = "resource_stalls.any",
899  },
900  {
901  .event_code = {0xA2},
902  .umask = 0x04,
903  .event_name = "resource_stalls.rs",
904  },
905  {
906  .event_code = {0xA2},
907  .umask = 0x08,
908  .event_name = "resource_stalls.sb",
909  },
910  {
911  .event_code = {0xA2},
912  .umask = 0x10,
913  .event_name = "resource_stalls.rob",
914  },
915  {
916  .event_code = {0xA3},
917  .umask = 0x01,
918  .event_name = "cycle_activity.cycles_l2_pending",
919  },
920  {
921  .event_code = {0xA3},
922  .umask = 0x02,
923  .event_name = "cycle_activity.cycles_ldm_pending",
924  },
925  {
926  .event_code = {0xA3},
927  .umask = 0x04,
928  .event_name = "cycle_activity.cycles_no_execute",
929  },
930  {
931  .event_code = {0xA3},
932  .umask = 0x05,
933  .event_name = "cycle_activity.stalls_l2_pending",
934  },
935  {
936  .event_code = {0xA3},
937  .umask = 0x06,
938  .event_name = "cycle_activity.stalls_ldm_pending",
939  },
940  {
941  .event_code = {0xA3},
942  .umask = 0x08,
943  .event_name = "cycle_activity.cycles_l1d_pending",
944  },
945  {
946  .event_code = {0xA3},
947  .umask = 0x0C,
948  .event_name = "cycle_activity.stalls_l1d_pending",
949  },
950  {
951  .event_code = {0xA8},
952  .umask = 0x01,
953  .event_name = "lsd.uops",
954  },
955  {
956  .event_code = {0xA8},
957  .umask = 0x01,
958  .event_name = "lsd.cycles_4_uops",
959  },
960  {
961  .event_code = {0xA8},
962  .umask = 0x01,
963  .event_name = "lsd.cycles_active",
964  },
965  {
966  .event_code = {0xAB},
967  .umask = 0x02,
968  .event_name = "dsb2mite_switches.penalty_cycles",
969  },
970  {
971  .event_code = {0xAE},
972  .umask = 0x01,
973  .event_name = "itlb.itlb_flush",
974  },
975  {
976  .event_code = {0xB0},
977  .umask = 0x01,
978  .event_name = "offcore_requests.demand_data_rd",
979  },
980  {
981  .event_code = {0xB0},
982  .umask = 0x02,
983  .event_name = "offcore_requests.demand_code_rd",
984  },
985  {
986  .event_code = {0xB0},
987  .umask = 0x04,
988  .event_name = "offcore_requests.demand_rfo",
989  },
990  {
991  .event_code = {0xB0},
992  .umask = 0x08,
993  .event_name = "offcore_requests.all_data_rd",
994  },
995  {
996  .event_code = {0xB1},
997  .umask = 0x01,
998  .event_name = "uops_executed.thread",
999  },
1000  {
1001  .event_code = {0xB1},
1002  .umask = 0x01,
1003  .event_name = "uops_executed.stall_cycles",
1004  },
1005  {
1006  .event_code = {0xB1},
1007  .umask = 0x01,
1008  .event_name = "uops_executed.cycles_ge_1_uop_exec",
1009  },
1010  {
1011  .event_code = {0xB1},
1012  .umask = 0x01,
1013  .event_name = "uops_executed.cycles_ge_2_uops_exec",
1014  },
1015  {
1016  .event_code = {0xB1},
1017  .umask = 0x01,
1018  .event_name = "uops_executed.cycles_ge_3_uops_exec",
1019  },
1020  {
1021  .event_code = {0xB1},
1022  .umask = 0x01,
1023  .event_name = "uops_executed.cycles_ge_4_uops_exec",
1024  },
1025  {
1026  .event_code = {0xB1},
1027  .umask = 0x02,
1028  .event_name = "uops_executed.core",
1029  },
1030  {
1031  .event_code = {0xb1},
1032  .umask = 0x02,
1033  .event_name = "uops_executed.core_cycles_ge_1",
1034  },
1035  {
1036  .event_code = {0xb1},
1037  .umask = 0x02,
1038  .event_name = "uops_executed.core_cycles_ge_2",
1039  },
1040  {
1041  .event_code = {0xb1},
1042  .umask = 0x02,
1043  .event_name = "uops_executed.core_cycles_ge_3",
1044  },
1045  {
1046  .event_code = {0xb1},
1047  .umask = 0x02,
1048  .event_name = "uops_executed.core_cycles_ge_4",
1049  },
1050  {
1051  .event_code = {0xb1},
1052  .umask = 0x02,
1053  .event_name = "uops_executed.core_cycles_none",
1054  },
1055  {
1056  .event_code = {0xb2},
1057  .umask = 0x01,
1058  .event_name = "offcore_requests_buffer.sq_full",
1059  },
1060  {
1061  .event_code = {0xBC},
1062  .umask = 0x11,
1063  .event_name = "page_walker_loads.dtlb_l1",
1064  },
1065  {
1066  .event_code = {0xBC},
1067  .umask = 0x12,
1068  .event_name = "page_walker_loads.dtlb_l2",
1069  },
1070  {
1071  .event_code = {0xBC},
1072  .umask = 0x14,
1073  .event_name = "page_walker_loads.dtlb_l3",
1074  },
1075  {
1076  .event_code = {0xBC},
1077  .umask = 0x18,
1078  .event_name = "page_walker_loads.dtlb_memory",
1079  },
1080  {
1081  .event_code = {0xBC},
1082  .umask = 0x21,
1083  .event_name = "page_walker_loads.itlb_l1",
1084  },
1085  {
1086  .event_code = {0xBC},
1087  .umask = 0x22,
1088  .event_name = "page_walker_loads.itlb_l2",
1089  },
1090  {
1091  .event_code = {0xBC},
1092  .umask = 0x24,
1093  .event_name = "page_walker_loads.itlb_l3",
1094  },
1095  {
1096  .event_code = {0xBD},
1097  .umask = 0x01,
1098  .event_name = "tlb_flush.dtlb_thread",
1099  },
1100  {
1101  .event_code = {0xBD},
1102  .umask = 0x20,
1103  .event_name = "tlb_flush.stlb_any",
1104  },
1105  {
1106  .event_code = {0xC0},
1107  .umask = 0x00,
1108  .event_name = "inst_retired.any_p",
1109  },
1110  {
1111  .event_code = {0xC0},
1112  .umask = 0x01,
1113  .event_name = "inst_retired.prec_dist",
1114  },
1115  {
1116  .event_code = {0xC0},
1117  .umask = 0x02,
1118  .event_name = "inst_retired.x87",
1119  },
1120  {
1121  .event_code = {0xC1},
1122  .umask = 0x08,
1123  .event_name = "other_assists.avx_to_sse",
1124  },
1125  {
1126  .event_code = {0xC1},
1127  .umask = 0x10,
1128  .event_name = "other_assists.sse_to_avx",
1129  },
1130  {
1131  .event_code = {0xC1},
1132  .umask = 0x40,
1133  .event_name = "other_assists.any_wb_assist",
1134  },
1135  {
1136  .event_code = {0xC2},
1137  .umask = 0x01,
1138  .event_name = "uops_retired.all",
1139  },
1140  {
1141  .event_code = {0xC2},
1142  .umask = 0x01,
1143  .event_name = "uops_retired.stall_cycles",
1144  },
1145  {
1146  .event_code = {0xC2},
1147  .umask = 0x01,
1148  .event_name = "uops_retired.total_cycles",
1149  },
1150  {
1151  .event_code = {0xC2},
1152  .umask = 0x02,
1153  .event_name = "uops_retired.retire_slots",
1154  },
1155  {
1156  .event_code = {0xC3},
1157  .umask = 0x01,
1158  .event_name = "machine_clears.cycles",
1159  },
1160  {
1161  .event_code = {0xC3},
1162  .umask = 0x01,
1163  .event_name = "machine_clears.count",
1164  },
1165  {
1166  .event_code = {0xC3},
1167  .umask = 0x02,
1168  .event_name = "machine_clears.memory_ordering",
1169  },
1170  {
1171  .event_code = {0xC3},
1172  .umask = 0x04,
1173  .event_name = "machine_clears.smc",
1174  },
1175  {
1176  .event_code = {0xC3},
1177  .umask = 0x20,
1178  .event_name = "machine_clears.maskmov",
1179  },
1180  {
1181  .event_code = {0xC4},
1182  .umask = 0x00,
1183  .event_name = "br_inst_retired.all_branches",
1184  },
1185  {
1186  .event_code = {0xC4},
1187  .umask = 0x01,
1188  .event_name = "br_inst_retired.conditional",
1189  },
1190  {
1191  .event_code = {0xC4},
1192  .umask = 0x02,
1193  .event_name = "br_inst_retired.near_call",
1194  },
1195  {
1196  .event_code = {0xC4},
1197  .umask = 0x02,
1198  .event_name = "br_inst_retired.near_call_r3",
1199  },
1200  {
1201  .event_code = {0xC4},
1202  .umask = 0x04,
1203  .event_name = "br_inst_retired.all_branches_pebs",
1204  },
1205  {
1206  .event_code = {0xC4},
1207  .umask = 0x08,
1208  .event_name = "br_inst_retired.near_return",
1209  },
1210  {
1211  .event_code = {0xC4},
1212  .umask = 0x10,
1213  .event_name = "br_inst_retired.not_taken",
1214  },
1215  {
1216  .event_code = {0xC4},
1217  .umask = 0x20,
1218  .event_name = "br_inst_retired.near_taken",
1219  },
1220  {
1221  .event_code = {0xC4},
1222  .umask = 0x40,
1223  .event_name = "br_inst_retired.far_branch",
1224  },
1225  {
1226  .event_code = {0xC5},
1227  .umask = 0x00,
1228  .event_name = "br_misp_retired.all_branches",
1229  },
1230  {
1231  .event_code = {0xC5},
1232  .umask = 0x01,
1233  .event_name = "br_misp_retired.conditional",
1234  },
1235  {
1236  .event_code = {0xC5},
1237  .umask = 0x04,
1238  .event_name = "br_misp_retired.all_branches_pebs",
1239  },
1240  {
1241  .event_code = {0xC5},
1242  .umask = 0x08,
1243  .event_name = "br_misp_retired.ret",
1244  },
1245  {
1246  .event_code = {0xC5},
1247  .umask = 0x20,
1248  .event_name = "br_misp_retired.near_taken",
1249  },
1250  {
1251  .event_code = {0xC7},
1252  .umask = 0x01,
1253  .event_name = "fp_arith_inst_retired.scalar_double",
1254  },
1255  {
1256  .event_code = {0xC7},
1257  .umask = 0x02,
1258  .event_name = "fp_arith_inst_retired.scalar_single",
1259  },
1260  {
1261  .event_code = {0xC7},
1262  .umask = 0x04,
1263  .event_name = "fp_arith_inst_retired.128b_packed_double",
1264  },
1265  {
1266  .event_code = {0xC7},
1267  .umask = 0x08,
1268  .event_name = "fp_arith_inst_retired.128b_packed_single",
1269  },
1270  {
1271  .event_code = {0xC7},
1272  .umask = 0x10,
1273  .event_name = "fp_arith_inst_retired.256b_packed_double",
1274  },
1275  {
1276  .event_code = {0xc7},
1277  .umask = 0x20,
1278  .event_name = "fp_arith_inst_retired.256b_packed_single",
1279  },
1280  {
1281  .event_code = {0xc8},
1282  .umask = 0x01,
1283  .event_name = "hle_retired.start",
1284  },
1285  {
1286  .event_code = {0xc8},
1287  .umask = 0x02,
1288  .event_name = "hle_retired.commit",
1289  },
1290  {
1291  .event_code = {0xc8},
1292  .umask = 0x04,
1293  .event_name = "hle_retired.aborted",
1294  },
1295  {
1296  .event_code = {0xc8},
1297  .umask = 0x08,
1298  .event_name = "hle_retired.aborted_misc1",
1299  },
1300  {
1301  .event_code = {0xc8},
1302  .umask = 0x10,
1303  .event_name = "hle_retired.aborted_misc2",
1304  },
1305  {
1306  .event_code = {0xc8},
1307  .umask = 0x20,
1308  .event_name = "hle_retired.aborted_misc3",
1309  },
1310  {
1311  .event_code = {0xc8},
1312  .umask = 0x40,
1313  .event_name = "hle_retired.aborted_misc4",
1314  },
1315  {
1316  .event_code = {0xc8},
1317  .umask = 0x80,
1318  .event_name = "hle_retired.aborted_misc5",
1319  },
1320  {
1321  .event_code = {0xc9},
1322  .umask = 0x01,
1323  .event_name = "rtm_retired.start",
1324  },
1325  {
1326  .event_code = {0xc9},
1327  .umask = 0x02,
1328  .event_name = "rtm_retired.commit",
1329  },
1330  {
1331  .event_code = {0xc9},
1332  .umask = 0x04,
1333  .event_name = "rtm_retired.aborted",
1334  },
1335  {
1336  .event_code = {0xc9},
1337  .umask = 0x08,
1338  .event_name = "rtm_retired.aborted_misc1",
1339  },
1340  {
1341  .event_code = {0xc9},
1342  .umask = 0x10,
1343  .event_name = "rtm_retired.aborted_misc2",
1344  },
1345  {
1346  .event_code = {0xc9},
1347  .umask = 0x20,
1348  .event_name = "rtm_retired.aborted_misc3",
1349  },
1350  {
1351  .event_code = {0xc9},
1352  .umask = 0x40,
1353  .event_name = "rtm_retired.aborted_misc4",
1354  },
1355  {
1356  .event_code = {0xc9},
1357  .umask = 0x80,
1358  .event_name = "rtm_retired.aborted_misc5",
1359  },
1360  {
1361  .event_code = {0xCA},
1362  .umask = 0x02,
1363  .event_name = "fp_assist.x87_output",
1364  },
1365  {
1366  .event_code = {0xCA},
1367  .umask = 0x04,
1368  .event_name = "fp_assist.x87_input",
1369  },
1370  {
1371  .event_code = {0xCA},
1372  .umask = 0x08,
1373  .event_name = "fp_assist.simd_output",
1374  },
1375  {
1376  .event_code = {0xCA},
1377  .umask = 0x10,
1378  .event_name = "fp_assist.simd_input",
1379  },
1380  {
1381  .event_code = {0xCA},
1382  .umask = 0x1E,
1383  .event_name = "fp_assist.any",
1384  },
1385  {
1386  .event_code = {0xCC},
1387  .umask = 0x20,
1388  .event_name = "rob_misc_events.lbr_inserts",
1389  },
1390  {
1391  .event_code = {0xD0},
1392  .umask = 0x11,
1393  .event_name = "mem_uops_retired.stlb_miss_loads",
1394  },
1395  {
1396  .event_code = {0xD0},
1397  .umask = 0x12,
1398  .event_name = "mem_uops_retired.stlb_miss_stores",
1399  },
1400  {
1401  .event_code = {0xD0},
1402  .umask = 0x21,
1403  .event_name = "mem_uops_retired.lock_loads",
1404  },
1405  {
1406  .event_code = {0xD0},
1407  .umask = 0x41,
1408  .event_name = "mem_uops_retired.split_loads",
1409  },
1410  {
1411  .event_code = {0xD0},
1412  .umask = 0x42,
1413  .event_name = "mem_uops_retired.split_stores",
1414  },
1415  {
1416  .event_code = {0xD0},
1417  .umask = 0x81,
1418  .event_name = "mem_uops_retired.all_loads",
1419  },
1420  {
1421  .event_code = {0xD0},
1422  .umask = 0x82,
1423  .event_name = "mem_uops_retired.all_stores",
1424  },
1425  {
1426  .event_code = {0xD1},
1427  .umask = 0x01,
1428  .event_name = "mem_load_uops_retired.l1_hit",
1429  },
1430  {
1431  .event_code = {0xD1},
1432  .umask = 0x02,
1433  .event_name = "mem_load_uops_retired.l2_hit",
1434  },
1435  {
1436  .event_code = {0xD1},
1437  .umask = 0x04,
1438  .event_name = "mem_load_uops_retired.l3_hit",
1439  },
1440  {
1441  .event_code = {0xD1},
1442  .umask = 0x08,
1443  .event_name = "mem_load_uops_retired.l1_miss",
1444  },
1445  {
1446  .event_code = {0xD1},
1447  .umask = 0x10,
1448  .event_name = "mem_load_uops_retired.l2_miss",
1449  },
1450  {
1451  .event_code = {0xD1},
1452  .umask = 0x20,
1453  .event_name = "mem_load_uops_retired.l3_miss",
1454  },
1455  {
1456  .event_code = {0xD1},
1457  .umask = 0x40,
1458  .event_name = "mem_load_uops_retired.hit_lfb",
1459  },
1460  {
1461  .event_code = {0xD2},
1462  .umask = 0x01,
1463  .event_name = "mem_load_uops_l3_hit_retired.xsnp_miss",
1464  },
1465  {
1466  .event_code = {0xD2},
1467  .umask = 0x02,
1468  .event_name = "mem_load_uops_l3_hit_retired.xsnp_hit",
1469  },
1470  {
1471  .event_code = {0xD2},
1472  .umask = 0x04,
1473  .event_name = "mem_load_uops_l3_hit_retired.xsnp_hitm",
1474  },
1475  {
1476  .event_code = {0xD2},
1477  .umask = 0x08,
1478  .event_name = "mem_load_uops_l3_hit_retired.xsnp_none",
1479  },
1480  {
1481  .event_code = {0xD3},
1482  .umask = 0x01,
1483  .event_name = "mem_load_uops_l3_miss_retired.local_dram",
1484  },
1485  {
1486  .event_code = {0xD3},
1487  .umask = 0x04,
1488  .event_name = "mem_load_uops_l3_miss_retired.remote_dram",
1489  },
1490  {
1491  .event_code = {0xD3},
1492  .umask = 0x10,
1493  .event_name = "mem_load_uops_l3_miss_retired.remote_hitm",
1494  },
1495  {
1496  .event_code = {0xD3},
1497  .umask = 0x20,
1498  .event_name = "mem_load_uops_l3_miss_retired.remote_fwd",
1499  },
1500  {
1501  .event_code = {0xe6},
1502  .umask = 0x1f,
1503  .event_name = "baclears.any",
1504  },
1505  {
1506  .event_code = {0xF0},
1507  .umask = 0x01,
1508  .event_name = "l2_trans.demand_data_rd",
1509  },
1510  {
1511  .event_code = {0xF0},
1512  .umask = 0x02,
1513  .event_name = "l2_trans.rfo",
1514  },
1515  {
1516  .event_code = {0xF0},
1517  .umask = 0x04,
1518  .event_name = "l2_trans.code_rd",
1519  },
1520  {
1521  .event_code = {0xF0},
1522  .umask = 0x08,
1523  .event_name = "l2_trans.all_pf",
1524  },
1525  {
1526  .event_code = {0xF0},
1527  .umask = 0x10,
1528  .event_name = "l2_trans.l1d_wb",
1529  },
1530  {
1531  .event_code = {0xF0},
1532  .umask = 0x20,
1533  .event_name = "l2_trans.l2_fill",
1534  },
1535  {
1536  .event_code = {0xF0},
1537  .umask = 0x40,
1538  .event_name = "l2_trans.l2_wb",
1539  },
1540  {
1541  .event_code = {0xF0},
1542  .umask = 0x80,
1543  .event_name = "l2_trans.all_requests",
1544  },
1545  {
1546  .event_code = {0xF1},
1547  .umask = 0x01,
1548  .event_name = "l2_lines_in.i",
1549  },
1550  {
1551  .event_code = {0xF1},
1552  .umask = 0x02,
1553  .event_name = "l2_lines_in.s",
1554  },
1555  {
1556  .event_code = {0xF1},
1557  .umask = 0x04,
1558  .event_name = "l2_lines_in.e",
1559  },
1560  {
1561  .event_code = {0xF1},
1562  .umask = 0x07,
1563  .event_name = "l2_lines_in.all",
1564  },
1565  {
1566  .event_code = {0xF2},
1567  .umask = 0x05,
1568  .event_name = "l2_lines_out.demand_clean",
1569  },
1570  {
1571  .event_code = {0xf4},
1572  .umask = 0x10,
1573  .event_name = "sq_misc.split_lock",
1574  },
1575  {
1576  .event_name = 0,
1577  },
1578 };
1579 
1580 PERFMON_REGISTER_INTEL_PMC (cpu_model_table, event_table);
1581 
PERFMON_REGISTER_INTEL_PMC(cpu_model_table, event_table)