问题标签 [libpfm4]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
x86 - 使用 libpfm4 确定事件映射的固定计数器
我正在使用libpfm4来确定 Intel 性能监视器计数器编码(例如,在人类可读的名称和编码之间进行映射)。
英特尔 PMU 有许多可以启用或禁用的“固定计数器”,但启用时始终计数相同的事件。libpfc 公开了固定计数器的数量pfm_pmu_info_t.num_fixed_cntrs
,但是我如何确定这些固定计数器映射的事件呢?
固定计数器涵盖的事件列在事件列表中,但它是通用编码,因此您必须浪费通用计数器以这种方式对其进行编程。
对于Intel来说,最近0个芯片上一般都有3个固定计数器:
详见第 18-2 卷的表 18-2。英特尔 SDM 1的图 3B 。
0特别是至少支持架构 PMU 版本 2 的任何东西,即Intel Core 2 Duo 处理器 T7700 和基于 Intel Core 微架构的更新处理器。
1表为表 18-2。固定功能性能计数器与架构性能事件的关联, 2016 年 12 月版。