我想知道如何使用 perf 正确测量每个周期的指令。作为参考:http ://www2.engr.arizona.edu/~tosiron/papers/SPEC2017_ISPASS18.pdf用于他们inst_retired.any
的cpu_clk_unhalted.ref_tsc
计算,我现在想知道这是否是正确的方法。相比之下,PAPI 使用硬件计数器PAPI_TOT_INS
和PAPI_TOT_CYC
计算 IPC。
经过一些测量,我得出结论:
inst_retired.any:u
似乎和PAPI_TOT_INS
cpu-cycles
似乎和PAPI_TOT_CYC
在一个示例基准上,cpu-cycles
相差cpu_clk_unhalted.ref_tsc
约 25%。现在的问题是,这两个值中哪一个是正确的计算值?还是两种方法都错了?