FD.io VPP  v20.09-64-g4f7b92f0a
Vector Packet Processing
perfmon_intel_snb.c
Go to the documentation of this file.
1 
3 
4 static perfmon_intel_pmc_cpu_model_t cpu_model_table[] = {
5  {0x2A, 0x00, 0},
6 
7 };
8 
9 static perfmon_intel_pmc_event_t event_table[] = {
10  {
11  .event_code = {0x00},
12  .umask = 0x03,
13  .event_name = "cpu_clk_unhalted.ref_tsc",
14  },
15  {
16  .event_code = {0x00},
17  .umask = 0x01,
18  .event_name = "inst_retired.any",
19  },
20  {
21  .event_code = {0x00},
22  .umask = 0x02,
23  .event_name = "cpu_clk_unhalted.thread",
24  },
25  {
26  .event_code = {0x00},
27  .umask = 0x02,
28  .event_name = "cpu_clk_unhalted.thread_any",
29  },
30  {
31  .event_code = {0x03},
32  .umask = 0x01,
33  .event_name = "ld_blocks.data_unknown",
34  },
35  {
36  .event_code = {0x03},
37  .umask = 0x02,
38  .event_name = "ld_blocks.store_forward",
39  },
40  {
41  .event_code = {0x03},
42  .umask = 0x08,
43  .event_name = "ld_blocks.no_sr",
44  },
45  {
46  .event_code = {0x03},
47  .umask = 0x10,
48  .event_name = "ld_blocks.all_block",
49  },
50  {
51  .event_code = {0x05},
52  .umask = 0x01,
53  .event_name = "misalign_mem_ref.loads",
54  },
55  {
56  .event_code = {0x05},
57  .umask = 0x02,
58  .event_name = "misalign_mem_ref.stores",
59  },
60  {
61  .event_code = {0x07},
62  .umask = 0x01,
63  .event_name = "ld_blocks_partial.address_alias",
64  },
65  {
66  .event_code = {0x07},
67  .umask = 0x08,
68  .event_name = "ld_blocks_partial.all_sta_block",
69  },
70  {
71  .event_code = {0x08},
72  .umask = 0x01,
73  .event_name = "dtlb_load_misses.miss_causes_a_walk",
74  },
75  {
76  .event_code = {0x08},
77  .umask = 0x02,
78  .event_name = "dtlb_load_misses.walk_completed",
79  },
80  {
81  .event_code = {0x08},
82  .umask = 0x04,
83  .event_name = "dtlb_load_misses.walk_duration",
84  },
85  {
86  .event_code = {0x08},
87  .umask = 0x10,
88  .event_name = "dtlb_load_misses.stlb_hit",
89  },
90  {
91  .event_code = {0x0D},
92  .umask = 0x03,
93  .event_name = "int_misc.recovery_cycles",
94  },
95  {
96  .event_code = {0x0D},
97  .umask = 0x03,
98  .event_name = "int_misc.recovery_stalls_count",
99  },
100  {
101  .event_code = {0x0D},
102  .umask = 0x03,
103  .event_name = "int_misc.recovery_cycles_any",
104  },
105  {
106  .event_code = {0x0D},
107  .umask = 0x40,
108  .event_name = "int_misc.rat_stall_cycles",
109  },
110  {
111  .event_code = {0x0E},
112  .umask = 0x01,
113  .event_name = "uops_issued.any",
114  },
115  {
116  .event_code = {0x0E},
117  .umask = 0x01,
118  .event_name = "uops_issued.stall_cycles",
119  },
120  {
121  .event_code = {0x0E},
122  .umask = 0x01,
123  .event_name = "uops_issued.core_stall_cycles",
124  },
125  {
126  .event_code = {0x10},
127  .umask = 0x01,
128  .event_name = "fp_comp_ops_exe.x87",
129  },
130  {
131  .event_code = {0x10},
132  .umask = 0x10,
133  .event_name = "fp_comp_ops_exe.sse_packed_double",
134  },
135  {
136  .event_code = {0x10},
137  .umask = 0x20,
138  .event_name = "fp_comp_ops_exe.sse_scalar_single",
139  },
140  {
141  .event_code = {0x10},
142  .umask = 0x40,
143  .event_name = "fp_comp_ops_exe.sse_packed_single",
144  },
145  {
146  .event_code = {0x10},
147  .umask = 0x80,
148  .event_name = "fp_comp_ops_exe.sse_scalar_double",
149  },
150  {
151  .event_code = {0x11},
152  .umask = 0x01,
153  .event_name = "simd_fp_256.packed_single",
154  },
155  {
156  .event_code = {0x11},
157  .umask = 0x02,
158  .event_name = "simd_fp_256.packed_double",
159  },
160  {
161  .event_code = {0x14},
162  .umask = 0x01,
163  .event_name = "arith.fpu_div_active",
164  },
165  {
166  .event_code = {0x14},
167  .umask = 0x01,
168  .event_name = "arith.fpu_div",
169  },
170  {
171  .event_code = {0x17},
172  .umask = 0x01,
173  .event_name = "insts_written_to_iq.insts",
174  },
175  {
176  .event_code = {0x24},
177  .umask = 0x01,
178  .event_name = "l2_rqsts.demand_data_rd_hit",
179  },
180  {
181  .event_code = {0x24},
182  .umask = 0x03,
183  .event_name = "l2_rqsts.all_demand_data_rd",
184  },
185  {
186  .event_code = {0x24},
187  .umask = 0x04,
188  .event_name = "l2_rqsts.rfo_hit",
189  },
190  {
191  .event_code = {0x24},
192  .umask = 0x08,
193  .event_name = "l2_rqsts.rfo_miss",
194  },
195  {
196  .event_code = {0x24},
197  .umask = 0x0C,
198  .event_name = "l2_rqsts.all_rfo",
199  },
200  {
201  .event_code = {0x24},
202  .umask = 0x10,
203  .event_name = "l2_rqsts.code_rd_hit",
204  },
205  {
206  .event_code = {0x24},
207  .umask = 0x20,
208  .event_name = "l2_rqsts.code_rd_miss",
209  },
210  {
211  .event_code = {0x24},
212  .umask = 0x30,
213  .event_name = "l2_rqsts.all_code_rd",
214  },
215  {
216  .event_code = {0x24},
217  .umask = 0x40,
218  .event_name = "l2_rqsts.pf_hit",
219  },
220  {
221  .event_code = {0x24},
222  .umask = 0x80,
223  .event_name = "l2_rqsts.pf_miss",
224  },
225  {
226  .event_code = {0x24},
227  .umask = 0xC0,
228  .event_name = "l2_rqsts.all_pf",
229  },
230  {
231  .event_code = {0x27},
232  .umask = 0x01,
233  .event_name = "l2_store_lock_rqsts.miss",
234  },
235  {
236  .event_code = {0x27},
237  .umask = 0x04,
238  .event_name = "l2_store_lock_rqsts.hit_e",
239  },
240  {
241  .event_code = {0x27},
242  .umask = 0x08,
243  .event_name = "l2_store_lock_rqsts.hit_m",
244  },
245  {
246  .event_code = {0x27},
247  .umask = 0x0F,
248  .event_name = "l2_store_lock_rqsts.all",
249  },
250  {
251  .event_code = {0x28},
252  .umask = 0x01,
253  .event_name = "l2_l1d_wb_rqsts.miss",
254  },
255  {
256  .event_code = {0x28},
257  .umask = 0x02,
258  .event_name = "l2_l1d_wb_rqsts.hit_s",
259  },
260  {
261  .event_code = {0x28},
262  .umask = 0x04,
263  .event_name = "l2_l1d_wb_rqsts.hit_e",
264  },
265  {
266  .event_code = {0x28},
267  .umask = 0x08,
268  .event_name = "l2_l1d_wb_rqsts.hit_m",
269  },
270  {
271  .event_code = {0x28},
272  .umask = 0x0F,
273  .event_name = "l2_l1d_wb_rqsts.all",
274  },
275  {
276  .event_code = {0x2E},
277  .umask = 0x41,
278  .event_name = "longest_lat_cache.miss",
279  },
280  {
281  .event_code = {0x2E},
282  .umask = 0x4F,
283  .event_name = "longest_lat_cache.reference",
284  },
285  {
286  .event_code = {0x3C},
287  .umask = 0x00,
288  .event_name = "cpu_clk_unhalted.thread_p",
289  },
290  {
291  .event_code = {0x3C},
292  .umask = 0x00,
293  .event_name = "cpu_clk_unhalted.thread_p_any",
294  },
295  {
296  .event_code = {0x3C},
297  .umask = 0x01,
298  .event_name = "cpu_clk_thread_unhalted.ref_xclk",
299  },
300  {
301  .event_code = {0x3C},
302  .umask = 0x02,
303  .event_name = "cpu_clk_thread_unhalted.one_thread_active",
304  },
305  {
306  .event_code = {0x48},
307  .umask = 0x01,
308  .event_name = "l1d_pend_miss.pending",
309  },
310  {
311  .event_code = {0x48},
312  .umask = 0x01,
313  .event_name = "l1d_pend_miss.pending_cycles",
314  },
315  {
316  .event_code = {0x49},
317  .umask = 0x01,
318  .event_name = "dtlb_store_misses.miss_causes_a_walk",
319  },
320  {
321  .event_code = {0x49},
322  .umask = 0x02,
323  .event_name = "dtlb_store_misses.walk_completed",
324  },
325  {
326  .event_code = {0x49},
327  .umask = 0x04,
328  .event_name = "dtlb_store_misses.walk_duration",
329  },
330  {
331  .event_code = {0x49},
332  .umask = 0x10,
333  .event_name = "dtlb_store_misses.stlb_hit",
334  },
335  {
336  .event_code = {0x4C},
337  .umask = 0x01,
338  .event_name = "load_hit_pre.sw_pf",
339  },
340  {
341  .event_code = {0x4C},
342  .umask = 0x02,
343  .event_name = "load_hit_pre.hw_pf",
344  },
345  {
346  .event_code = {0x4E},
347  .umask = 0x02,
348  .event_name = "hw_pre_req.dl1_miss",
349  },
350  {
351  .event_code = {0x4F},
352  .umask = 0x10,
353  .event_name = "ept.walk_cycles",
354  },
355  {
356  .event_code = {0x51},
357  .umask = 0x01,
358  .event_name = "l1d.replacement",
359  },
360  {
361  .event_code = {0x51},
362  .umask = 0x02,
363  .event_name = "l1d.allocated_in_m",
364  },
365  {
366  .event_code = {0x51},
367  .umask = 0x04,
368  .event_name = "l1d.eviction",
369  },
370  {
371  .event_code = {0x51},
372  .umask = 0x08,
373  .event_name = "l1d.all_m_replacement",
374  },
375  {
376  .event_code = {0x59},
377  .umask = 0x20,
378  .event_name = "partial_rat_stalls.flags_merge_uop",
379  },
380  {
381  .event_code = {0x59},
382  .umask = 0x20,
383  .event_name = "partial_rat_stalls.flags_merge_uop_cycles",
384  },
385  {
386  .event_code = {0x59},
387  .umask = 0x40,
388  .event_name = "partial_rat_stalls.slow_lea_window",
389  },
390  {
391  .event_code = {0x59},
392  .umask = 0x80,
393  .event_name = "partial_rat_stalls.mul_single_uop",
394  },
395  {
396  .event_code = {0x5B},
397  .umask = 0x0C,
398  .event_name = "resource_stalls2.all_fl_empty",
399  },
400  {
401  .event_code = {0x5B},
402  .umask = 0x0F,
403  .event_name = "resource_stalls2.all_prf_control",
404  },
405  {
406  .event_code = {0x5B},
407  .umask = 0x40,
408  .event_name = "resource_stalls2.bob_full",
409  },
410  {
411  .event_code = {0x5B},
412  .umask = 0x4F,
413  .event_name = "resource_stalls2.ooo_rsrc",
414  },
415  {
416  .event_code = {0x5C},
417  .umask = 0x01,
418  .event_name = "cpl_cycles.ring0",
419  },
420  {
421  .event_code = {0x5C},
422  .umask = 0x01,
423  .event_name = "cpl_cycles.ring0_trans",
424  },
425  {
426  .event_code = {0x5C},
427  .umask = 0x02,
428  .event_name = "cpl_cycles.ring123",
429  },
430  {
431  .event_code = {0x5E},
432  .umask = 0x01,
433  .event_name = "rs_events.empty_cycles",
434  },
435  {
436  .event_code = {0x5E},
437  .umask = 0x01,
438  .event_name = "rs_events.empty_end",
439  },
440  {
441  .event_code = {0x60},
442  .umask = 0x01,
443  .event_name = "offcore_requests_outstanding.demand_data_rd",
444  },
445  {
446  .event_code = {0x60},
447  .umask = 0x01,
448  .event_name = "offcore_requests_outstanding.cycles_with_demand_data_rd",
449  },
450  {
451  .event_code = {0x60},
452  .umask = 0x04,
453  .event_name = "offcore_requests_outstanding.demand_rfo",
454  },
455  {
456  .event_code = {0x60},
457  .umask = 0x04,
458  .event_name = "offcore_requests_outstanding.cycles_with_demand_rfo",
459  },
460  {
461  .event_code = {0x60},
462  .umask = 0x08,
463  .event_name = "offcore_requests_outstanding.all_data_rd",
464  },
465  {
466  .event_code = {0x60},
467  .umask = 0x08,
468  .event_name = "offcore_requests_outstanding.cycles_with_data_rd",
469  },
470  {
471  .event_code = {0x63},
472  .umask = 0x01,
473  .event_name = "lock_cycles.split_lock_uc_lock_duration",
474  },
475  {
476  .event_code = {0x63},
477  .umask = 0x02,
478  .event_name = "lock_cycles.cache_lock_duration",
479  },
480  {
481  .event_code = {0x79},
482  .umask = 0x02,
483  .event_name = "idq.empty",
484  },
485  {
486  .event_code = {0x79},
487  .umask = 0x04,
488  .event_name = "idq.mite_uops",
489  },
490  {
491  .event_code = {0x79},
492  .umask = 0x04,
493  .event_name = "idq.mite_cycles",
494  },
495  {
496  .event_code = {0x79},
497  .umask = 0x08,
498  .event_name = "idq.dsb_uops",
499  },
500  {
501  .event_code = {0x79},
502  .umask = 0x08,
503  .event_name = "idq.dsb_cycles",
504  },
505  {
506  .event_code = {0x79},
507  .umask = 0x10,
508  .event_name = "idq.ms_dsb_uops",
509  },
510  {
511  .event_code = {0x79},
512  .umask = 0x10,
513  .event_name = "idq.ms_dsb_cycles",
514  },
515  {
516  .event_code = {0x79},
517  .umask = 0x10,
518  .event_name = "idq.ms_dsb_occur",
519  },
520  {
521  .event_code = {0x79},
522  .umask = 0x18,
523  .event_name = "idq.all_dsb_cycles_4_uops",
524  },
525  {
526  .event_code = {0x79},
527  .umask = 0x18,
528  .event_name = "idq.all_dsb_cycles_any_uops",
529  },
530  {
531  .event_code = {0x79},
532  .umask = 0x20,
533  .event_name = "idq.ms_mite_uops",
534  },
535  {
536  .event_code = {0x79},
537  .umask = 0x24,
538  .event_name = "idq.all_mite_cycles_4_uops",
539  },
540  {
541  .event_code = {0x79},
542  .umask = 0x24,
543  .event_name = "idq.all_mite_cycles_any_uops",
544  },
545  {
546  .event_code = {0x79},
547  .umask = 0x30,
548  .event_name = "idq.ms_uops",
549  },
550  {
551  .event_code = {0x79},
552  .umask = 0x30,
553  .event_name = "idq.ms_cycles",
554  },
555  {
556  .event_code = {0x79},
557  .umask = 0x30,
558  .event_name = "idq.ms_switches",
559  },
560  {
561  .event_code = {0x79},
562  .umask = 0x3c,
563  .event_name = "idq.mite_all_uops",
564  },
565  {
566  .event_code = {0x80},
567  .umask = 0x01,
568  .event_name = "icache.hit",
569  },
570  {
571  .event_code = {0x80},
572  .umask = 0x02,
573  .event_name = "icache.misses",
574  },
575  {
576  .event_code = {0x85},
577  .umask = 0x01,
578  .event_name = "itlb_misses.miss_causes_a_walk",
579  },
580  {
581  .event_code = {0x85},
582  .umask = 0x02,
583  .event_name = "itlb_misses.walk_completed",
584  },
585  {
586  .event_code = {0x85},
587  .umask = 0x04,
588  .event_name = "itlb_misses.walk_duration",
589  },
590  {
591  .event_code = {0x85},
592  .umask = 0x10,
593  .event_name = "itlb_misses.stlb_hit",
594  },
595  {
596  .event_code = {0x87},
597  .umask = 0x01,
598  .event_name = "ild_stall.lcp",
599  },
600  {
601  .event_code = {0x87},
602  .umask = 0x04,
603  .event_name = "ild_stall.iq_full",
604  },
605  {
606  .event_code = {0x88},
607  .umask = 0x41,
608  .event_name = "br_inst_exec.nontaken_conditional",
609  },
610  {
611  .event_code = {0x88},
612  .umask = 0x81,
613  .event_name = "br_inst_exec.taken_conditional",
614  },
615  {
616  .event_code = {0x88},
617  .umask = 0x82,
618  .event_name = "br_inst_exec.taken_direct_jump",
619  },
620  {
621  .event_code = {0x88},
622  .umask = 0x84,
623  .event_name = "br_inst_exec.taken_indirect_jump_non_call_ret",
624  },
625  {
626  .event_code = {0x88},
627  .umask = 0x88,
628  .event_name = "br_inst_exec.taken_indirect_near_return",
629  },
630  {
631  .event_code = {0x88},
632  .umask = 0x90,
633  .event_name = "br_inst_exec.taken_direct_near_call",
634  },
635  {
636  .event_code = {0x88},
637  .umask = 0xA0,
638  .event_name = "br_inst_exec.taken_indirect_near_call",
639  },
640  {
641  .event_code = {0x88},
642  .umask = 0xC1,
643  .event_name = "br_inst_exec.all_conditional",
644  },
645  {
646  .event_code = {0x88},
647  .umask = 0xC2,
648  .event_name = "br_inst_exec.all_direct_jmp",
649  },
650  {
651  .event_code = {0x88},
652  .umask = 0xC4,
653  .event_name = "br_inst_exec.all_indirect_jump_non_call_ret",
654  },
655  {
656  .event_code = {0x88},
657  .umask = 0xC8,
658  .event_name = "br_inst_exec.all_indirect_near_return",
659  },
660  {
661  .event_code = {0x88},
662  .umask = 0xD0,
663  .event_name = "br_inst_exec.all_direct_near_call",
664  },
665  {
666  .event_code = {0x88},
667  .umask = 0xFF,
668  .event_name = "br_inst_exec.all_branches",
669  },
670  {
671  .event_code = {0x89},
672  .umask = 0x41,
673  .event_name = "br_misp_exec.nontaken_conditional",
674  },
675  {
676  .event_code = {0x89},
677  .umask = 0x81,
678  .event_name = "br_misp_exec.taken_conditional",
679  },
680  {
681  .event_code = {0x89},
682  .umask = 0x84,
683  .event_name = "br_misp_exec.taken_indirect_jump_non_call_ret",
684  },
685  {
686  .event_code = {0x89},
687  .umask = 0x88,
688  .event_name = "br_misp_exec.taken_return_near",
689  },
690  {
691  .event_code = {0x89},
692  .umask = 0x90,
693  .event_name = "br_misp_exec.taken_direct_near_call",
694  },
695  {
696  .event_code = {0x89},
697  .umask = 0xA0,
698  .event_name = "br_misp_exec.taken_indirect_near_call",
699  },
700  {
701  .event_code = {0x89},
702  .umask = 0xC1,
703  .event_name = "br_misp_exec.all_conditional",
704  },
705  {
706  .event_code = {0x89},
707  .umask = 0xC4,
708  .event_name = "br_misp_exec.all_indirect_jump_non_call_ret",
709  },
710  {
711  .event_code = {0x89},
712  .umask = 0xD0,
713  .event_name = "br_misp_exec.all_direct_near_call",
714  },
715  {
716  .event_code = {0x89},
717  .umask = 0xFF,
718  .event_name = "br_misp_exec.all_branches",
719  },
720  {
721  .event_code = {0x9C},
722  .umask = 0x01,
723  .event_name = "idq_uops_not_delivered.core",
724  },
725  {
726  .event_code = {0x9C},
727  .umask = 0x01,
728  .event_name = "idq_uops_not_delivered.cycles_0_uops_deliv.core",
729  },
730  {
731  .event_code = {0x9C},
732  .umask = 0x01,
733  .event_name = "idq_uops_not_delivered.cycles_le_1_uop_deliv.core",
734  },
735  {
736  .event_code = {0x9C},
737  .umask = 0x01,
738  .event_name = "idq_uops_not_delivered.cycles_le_2_uop_deliv.core",
739  },
740  {
741  .event_code = {0x9C},
742  .umask = 0x01,
743  .event_name = "idq_uops_not_delivered.cycles_le_3_uop_deliv.core",
744  },
745  {
746  .event_code = {0x9C},
747  .umask = 0x01,
748  .event_name = "idq_uops_not_delivered.cycles_ge_1_uop_deliv.core",
749  },
750  {
751  .event_code = {0x9C},
752  .umask = 0x01,
753  .event_name = "idq_uops_not_delivered.cycles_fe_was_ok",
754  },
755  {
756  .event_code = {0xA1},
757  .umask = 0x01,
758  .event_name = "uops_dispatched_port.port_0",
759  },
760  {
761  .event_code = {0xA1},
762  .umask = 0x01,
763  .event_name = "uops_dispatched_port.port_0_core",
764  },
765  {
766  .event_code = {0xA1},
767  .umask = 0x02,
768  .event_name = "uops_dispatched_port.port_1",
769  },
770  {
771  .event_code = {0xA1},
772  .umask = 0x02,
773  .event_name = "uops_dispatched_port.port_1_core",
774  },
775  {
776  .event_code = {0xA1},
777  .umask = 0x0C,
778  .event_name = "uops_dispatched_port.port_2",
779  },
780  {
781  .event_code = {0xA1},
782  .umask = 0x0C,
783  .event_name = "uops_dispatched_port.port_2_core",
784  },
785  {
786  .event_code = {0xA1},
787  .umask = 0x30,
788  .event_name = "uops_dispatched_port.port_3",
789  },
790  {
791  .event_code = {0xA1},
792  .umask = 0x30,
793  .event_name = "uops_dispatched_port.port_3_core",
794  },
795  {
796  .event_code = {0xA1},
797  .umask = 0x40,
798  .event_name = "uops_dispatched_port.port_4",
799  },
800  {
801  .event_code = {0xA1},
802  .umask = 0x40,
803  .event_name = "uops_dispatched_port.port_4_core",
804  },
805  {
806  .event_code = {0xA1},
807  .umask = 0x80,
808  .event_name = "uops_dispatched_port.port_5",
809  },
810  {
811  .event_code = {0xA1},
812  .umask = 0x80,
813  .event_name = "uops_dispatched_port.port_5_core",
814  },
815  {
816  .event_code = {0xA2},
817  .umask = 0x01,
818  .event_name = "resource_stalls.any",
819  },
820  {
821  .event_code = {0xA2},
822  .umask = 0x02,
823  .event_name = "resource_stalls.lb",
824  },
825  {
826  .event_code = {0xA2},
827  .umask = 0x04,
828  .event_name = "resource_stalls.rs",
829  },
830  {
831  .event_code = {0xA2},
832  .umask = 0x08,
833  .event_name = "resource_stalls.sb",
834  },
835  {
836  .event_code = {0xA2},
837  .umask = 0x0A,
838  .event_name = "resource_stalls.lb_sb",
839  },
840  {
841  .event_code = {0xA2},
842  .umask = 0x0E,
843  .event_name = "resource_stalls.mem_rs",
844  },
845  {
846  .event_code = {0xA2},
847  .umask = 0x10,
848  .event_name = "resource_stalls.rob",
849  },
850  {
851  .event_code = {0xA2},
852  .umask = 0xF0,
853  .event_name = "resource_stalls.ooo_rsrc",
854  },
855  {
856  .event_code = {0xA3},
857  .umask = 0x01,
858  .event_name = "cycle_activity.cycles_l2_pending",
859  },
860  {
861  .event_code = {0xA3},
862  .umask = 0x02,
863  .event_name = "cycle_activity.cycles_l1d_pending",
864  },
865  {
866  .event_code = {0xA3},
867  .umask = 0x04,
868  .event_name = "cycle_activity.cycles_no_dispatch",
869  },
870  {
871  .event_code = {0xA3},
872  .umask = 0x05,
873  .event_name = "cycle_activity.stalls_l2_pending",
874  },
875  {
876  .event_code = {0xA3},
877  .umask = 0x06,
878  .event_name = "cycle_activity.stalls_l1d_pending",
879  },
880  {
881  .event_code = {0xA8},
882  .umask = 0x01,
883  .event_name = "lsd.uops",
884  },
885  {
886  .event_code = {0xA8},
887  .umask = 0x01,
888  .event_name = "lsd.cycles_active",
889  },
890  {
891  .event_code = {0xA8},
892  .umask = 0x01,
893  .event_name = "lsd.cycles_4_uops",
894  },
895  {
896  .event_code = {0xAB},
897  .umask = 0x01,
898  .event_name = "dsb2mite_switches.count",
899  },
900  {
901  .event_code = {0xAB},
902  .umask = 0x02,
903  .event_name = "dsb2mite_switches.penalty_cycles",
904  },
905  {
906  .event_code = {0xAC},
907  .umask = 0x02,
908  .event_name = "dsb_fill.other_cancel",
909  },
910  {
911  .event_code = {0xAC},
912  .umask = 0x08,
913  .event_name = "dsb_fill.exceed_dsb_lines",
914  },
915  {
916  .event_code = {0xAC},
917  .umask = 0x0A,
918  .event_name = "dsb_fill.all_cancel",
919  },
920  {
921  .event_code = {0xAE},
922  .umask = 0x01,
923  .event_name = "itlb.itlb_flush",
924  },
925  {
926  .event_code = {0xB0},
927  .umask = 0x01,
928  .event_name = "offcore_requests.demand_data_rd",
929  },
930  {
931  .event_code = {0xB0},
932  .umask = 0x02,
933  .event_name = "offcore_requests.demand_code_rd",
934  },
935  {
936  .event_code = {0xB0},
937  .umask = 0x04,
938  .event_name = "offcore_requests.demand_rfo",
939  },
940  {
941  .event_code = {0xB0},
942  .umask = 0x08,
943  .event_name = "offcore_requests.all_data_rd",
944  },
945  {
946  .event_code = {0xB1},
947  .umask = 0x01,
948  .event_name = "uops_dispatched.thread",
949  },
950  {
951  .event_code = {0xB1},
952  .umask = 0x02,
953  .event_name = "uops_dispatched.core",
954  },
955  {
956  .event_code = {0xB2},
957  .umask = 0x01,
958  .event_name = "offcore_requests_buffer.sq_full",
959  },
960  {
961  .event_code = {0xB6},
962  .umask = 0x01,
963  .event_name = "agu_bypass_cancel.count",
964  },
965  {
966  .event_code = {0xBD},
967  .umask = 0x01,
968  .event_name = "tlb_flush.dtlb_thread",
969  },
970  {
971  .event_code = {0xBD},
972  .umask = 0x20,
973  .event_name = "tlb_flush.stlb_any",
974  },
975  {
976  .event_code = {0xBE},
977  .umask = 0x01,
978  .event_name = "page_walks.llc_miss",
979  },
980  {
981  .event_code = {0xBF},
982  .umask = 0x05,
983  .event_name = "l1d_blocks.bank_conflict_cycles",
984  },
985  {
986  .event_code = {0xC0},
987  .umask = 0x00,
988  .event_name = "inst_retired.any_p",
989  },
990  {
991  .event_code = {0xC0},
992  .umask = 0x01,
993  .event_name = "inst_retired.prec_dist",
994  },
995  {
996  .event_code = {0xC1},
997  .umask = 0x02,
998  .event_name = "other_assists.itlb_miss_retired",
999  },
1000  {
1001  .event_code = {0xC1},
1002  .umask = 0x08,
1003  .event_name = "other_assists.avx_store",
1004  },
1005  {
1006  .event_code = {0xC1},
1007  .umask = 0x10,
1008  .event_name = "other_assists.avx_to_sse",
1009  },
1010  {
1011  .event_code = {0xC1},
1012  .umask = 0x20,
1013  .event_name = "other_assists.sse_to_avx",
1014  },
1015  {
1016  .event_code = {0xC2},
1017  .umask = 0x01,
1018  .event_name = "uops_retired.all",
1019  },
1020  {
1021  .event_code = {0xC2},
1022  .umask = 0x01,
1023  .event_name = "uops_retired.stall_cycles",
1024  },
1025  {
1026  .event_code = {0xC2},
1027  .umask = 0x01,
1028  .event_name = "uops_retired.total_cycles",
1029  },
1030  {
1031  .event_code = {0xC2},
1032  .umask = 0x01,
1033  .event_name = "uops_retired.core_stall_cycles",
1034  },
1035  {
1036  .event_code = {0xC2},
1037  .umask = 0x02,
1038  .event_name = "uops_retired.retire_slots",
1039  },
1040  {
1041  .event_code = {0xc3},
1042  .umask = 0x01,
1043  .event_name = "machine_clears.count",
1044  },
1045  {
1046  .event_code = {0xC3},
1047  .umask = 0x02,
1048  .event_name = "machine_clears.memory_ordering",
1049  },
1050  {
1051  .event_code = {0xC3},
1052  .umask = 0x04,
1053  .event_name = "machine_clears.smc",
1054  },
1055  {
1056  .event_code = {0xC3},
1057  .umask = 0x20,
1058  .event_name = "machine_clears.maskmov",
1059  },
1060  {
1061  .event_code = {0xC4},
1062  .umask = 0x00,
1063  .event_name = "br_inst_retired.all_branches",
1064  },
1065  {
1066  .event_code = {0xC4},
1067  .umask = 0x01,
1068  .event_name = "br_inst_retired.conditional",
1069  },
1070  {
1071  .event_code = {0xC4},
1072  .umask = 0x02,
1073  .event_name = "br_inst_retired.near_call",
1074  },
1075  {
1076  .event_code = {0xC4},
1077  .umask = 0x02,
1078  .event_name = "br_inst_retired.near_call_r3",
1079  },
1080  {
1081  .event_code = {0xC4},
1082  .umask = 0x04,
1083  .event_name = "br_inst_retired.all_branches_pebs",
1084  },
1085  {
1086  .event_code = {0xC4},
1087  .umask = 0x08,
1088  .event_name = "br_inst_retired.near_return",
1089  },
1090  {
1091  .event_code = {0xC4},
1092  .umask = 0x10,
1093  .event_name = "br_inst_retired.not_taken",
1094  },
1095  {
1096  .event_code = {0xC4},
1097  .umask = 0x20,
1098  .event_name = "br_inst_retired.near_taken",
1099  },
1100  {
1101  .event_code = {0xC4},
1102  .umask = 0x40,
1103  .event_name = "br_inst_retired.far_branch",
1104  },
1105  {
1106  .event_code = {0xC5},
1107  .umask = 0x00,
1108  .event_name = "br_misp_retired.all_branches",
1109  },
1110  {
1111  .event_code = {0xC5},
1112  .umask = 0x01,
1113  .event_name = "br_misp_retired.conditional",
1114  },
1115  {
1116  .event_code = {0xC5},
1117  .umask = 0x02,
1118  .event_name = "br_misp_retired.near_call",
1119  },
1120  {
1121  .event_code = {0xC5},
1122  .umask = 0x04,
1123  .event_name = "br_misp_retired.all_branches_pebs",
1124  },
1125  {
1126  .event_code = {0xC5},
1127  .umask = 0x10,
1128  .event_name = "br_misp_retired.not_taken",
1129  },
1130  {
1131  .event_code = {0xC5},
1132  .umask = 0x20,
1133  .event_name = "br_misp_retired.taken",
1134  },
1135  {
1136  .event_code = {0xCA},
1137  .umask = 0x02,
1138  .event_name = "fp_assist.x87_output",
1139  },
1140  {
1141  .event_code = {0xCA},
1142  .umask = 0x04,
1143  .event_name = "fp_assist.x87_input",
1144  },
1145  {
1146  .event_code = {0xCA},
1147  .umask = 0x08,
1148  .event_name = "fp_assist.simd_output",
1149  },
1150  {
1151  .event_code = {0xCA},
1152  .umask = 0x10,
1153  .event_name = "fp_assist.simd_input",
1154  },
1155  {
1156  .event_code = {0xCA},
1157  .umask = 0x1E,
1158  .event_name = "fp_assist.any",
1159  },
1160  {
1161  .event_code = {0xCC},
1162  .umask = 0x20,
1163  .event_name = "rob_misc_events.lbr_inserts",
1164  },
1165  {
1166  .event_code = {0xCD},
1167  .umask = 0x02,
1168  .event_name = "mem_trans_retired.precise_store",
1169  },
1170  {
1171  .event_code = {0xD0},
1172  .umask = 0x11,
1173  .event_name = "mem_uops_retired.stlb_miss_loads",
1174  },
1175  {
1176  .event_code = {0xD0},
1177  .umask = 0x12,
1178  .event_name = "mem_uops_retired.stlb_miss_stores",
1179  },
1180  {
1181  .event_code = {0xD0},
1182  .umask = 0x21,
1183  .event_name = "mem_uops_retired.lock_loads",
1184  },
1185  {
1186  .event_code = {0xD0},
1187  .umask = 0x41,
1188  .event_name = "mem_uops_retired.split_loads",
1189  },
1190  {
1191  .event_code = {0xD0},
1192  .umask = 0x42,
1193  .event_name = "mem_uops_retired.split_stores",
1194  },
1195  {
1196  .event_code = {0xD0},
1197  .umask = 0x81,
1198  .event_name = "mem_uops_retired.all_loads",
1199  },
1200  {
1201  .event_code = {0xD0},
1202  .umask = 0x82,
1203  .event_name = "mem_uops_retired.all_stores",
1204  },
1205  {
1206  .event_code = {0xD1},
1207  .umask = 0x01,
1208  .event_name = "mem_load_uops_retired.l1_hit",
1209  },
1210  {
1211  .event_code = {0xD1},
1212  .umask = 0x02,
1213  .event_name = "mem_load_uops_retired.l2_hit",
1214  },
1215  {
1216  .event_code = {0xD1},
1217  .umask = 0x04,
1218  .event_name = "mem_load_uops_retired.llc_hit",
1219  },
1220  {
1221  .event_code = {0xD1},
1222  .umask = 0x40,
1223  .event_name = "mem_load_uops_retired.hit_lfb",
1224  },
1225  {
1226  .event_code = {0xD2},
1227  .umask = 0x01,
1228  .event_name = "mem_load_uops_llc_hit_retired.xsnp_miss",
1229  },
1230  {
1231  .event_code = {0xD2},
1232  .umask = 0x02,
1233  .event_name = "mem_load_uops_llc_hit_retired.xsnp_hit",
1234  },
1235  {
1236  .event_code = {0xD2},
1237  .umask = 0x04,
1238  .event_name = "mem_load_uops_llc_hit_retired.xsnp_hitm",
1239  },
1240  {
1241  .event_code = {0xD2},
1242  .umask = 0x08,
1243  .event_name = "mem_load_uops_llc_hit_retired.xsnp_none",
1244  },
1245  {
1246  .event_code = {0xD4},
1247  .umask = 0x02,
1248  .event_name = "mem_load_uops_misc_retired.llc_miss",
1249  },
1250  {
1251  .event_code = {0xE6},
1252  .umask = 0x1F,
1253  .event_name = "baclears.any",
1254  },
1255  {
1256  .event_code = {0xF0},
1257  .umask = 0x01,
1258  .event_name = "l2_trans.demand_data_rd",
1259  },
1260  {
1261  .event_code = {0xF0},
1262  .umask = 0x02,
1263  .event_name = "l2_trans.rfo",
1264  },
1265  {
1266  .event_code = {0xF0},
1267  .umask = 0x04,
1268  .event_name = "l2_trans.code_rd",
1269  },
1270  {
1271  .event_code = {0xF0},
1272  .umask = 0x08,
1273  .event_name = "l2_trans.all_pf",
1274  },
1275  {
1276  .event_code = {0xF0},
1277  .umask = 0x10,
1278  .event_name = "l2_trans.l1d_wb",
1279  },
1280  {
1281  .event_code = {0xF0},
1282  .umask = 0x20,
1283  .event_name = "l2_trans.l2_fill",
1284  },
1285  {
1286  .event_code = {0xF0},
1287  .umask = 0x40,
1288  .event_name = "l2_trans.l2_wb",
1289  },
1290  {
1291  .event_code = {0xF0},
1292  .umask = 0x80,
1293  .event_name = "l2_trans.all_requests",
1294  },
1295  {
1296  .event_code = {0xF1},
1297  .umask = 0x01,
1298  .event_name = "l2_lines_in.i",
1299  },
1300  {
1301  .event_code = {0xF1},
1302  .umask = 0x02,
1303  .event_name = "l2_lines_in.s",
1304  },
1305  {
1306  .event_code = {0xF1},
1307  .umask = 0x04,
1308  .event_name = "l2_lines_in.e",
1309  },
1310  {
1311  .event_code = {0xF1},
1312  .umask = 0x07,
1313  .event_name = "l2_lines_in.all",
1314  },
1315  {
1316  .event_code = {0xF2},
1317  .umask = 0x01,
1318  .event_name = "l2_lines_out.demand_clean",
1319  },
1320  {
1321  .event_code = {0xF2},
1322  .umask = 0x02,
1323  .event_name = "l2_lines_out.demand_dirty",
1324  },
1325  {
1326  .event_code = {0xF2},
1327  .umask = 0x04,
1328  .event_name = "l2_lines_out.pf_clean",
1329  },
1330  {
1331  .event_code = {0xF2},
1332  .umask = 0x08,
1333  .event_name = "l2_lines_out.pf_dirty",
1334  },
1335  {
1336  .event_code = {0xF2},
1337  .umask = 0x0A,
1338  .event_name = "l2_lines_out.dirty_all",
1339  },
1340  {
1341  .event_code = {0xF4},
1342  .umask = 0x10,
1343  .event_name = "sq_misc.split_lock",
1344  },
1345  {
1346  .event_name = 0,
1347  },
1348 };
1349 
1350 PERFMON_REGISTER_INTEL_PMC (cpu_model_table, event_table);
1351 
PERFMON_REGISTER_INTEL_PMC(cpu_model_table, event_table)