2

是否可以找到映射到 PAPI 事件的一组本机事件(CPU 计数器寄存器)?

4

3 回答 3

8

如果你安装了 papi,你可以使用 papi_avail 来获取原生事件。例如,

papi_avail -e PAPI_TOT_INS

事件名称:PAPI_TOT_INS
事件代码:0x80000032
本机事件数:1 简短描述:|Instr 已完成|
详细说明:|说明已完成|
开发者备注:||
派生类型:|NOT_DERIVED|
后缀处理字符串:||
本机代码[0]:0x40000002 |INSTRUCTION_RETIRED|
寄存器值数:0 本
机事件描述:|退休时的指令数|

-Ganesh

于 2013-03-21T09:23:20.223 回答
3

我想你的意思是

papi_native_avail

例如,PAPI_event_name_to_code(...)您可以将事件添加到事件集中

于 2017-04-10T12:51:24.077 回答
0

为了快速查看和导出从预设事件到本机事件的所有可用映射,请使用papi_decode -a命令。输出为 CSV 格式。我的 CPU 的一个例子:

pc@pc ~> papi_decode -a
name,derived,postfix,short_descr,long_descr,note,[native,...]

PAPI_L1_DCM,NOT_DERIVED,,"L1D cache misses","Level 1 data cache misses",,L1D:REPLACEMENT
PAPI_L1_ICM,NOT_DERIVED,,"L1I cache misses","Level 1 instruction cache misses",,L2_RQSTS:ALL_CODE_RD
PAPI_L2_DCM,DERIVED_SUB,,"L2D cache misses","Level 2 data cache misses",,LLC_REFERENCES,L2_RQSTS:CODE_RD_MISS
(...)
于 2019-05-27T13:27:22.823 回答