我正在使用Linux Perf工具来监控我的基准测试运行的某些事件。在事件列表参数-e中,我添加了cycles-t和cycles-ct,因为我想捕获它们。 但是当我运行perf时,它们总是返回0。
我正在使用以下命令:
perf stat -e cycles-ct dd if=/dev/zero of=/dev/numm count=10000
这是输出
10000+0 records in
10000+0 records out
5120000 bytes (5.1 MB) copied, 0.0318331 s, 161 MB/s
Performance counter stats for 'dd if=/dev/zero of=/dev/numm count=10000':
31,957,327 cycles-ct
0 cpu/cycles-ct/
0.035254063 seconds time elapsed
对此有何想法?我需要获取cpu / cycles-ct值。 (我在Fedora 20上。尝试更新perf实用程序,它没有解决我的问题。)
此外,如果我运行此命令
perf stat -T -a sleep 1
我得到如下输出:
Performance counter stats for 'system wide':
8022.927913 task-clock (msec) # 8.011 CPUs utilized
104842699 instructions # 0.87 insns per cycle [100.00%]
120099715 cycles # 0.015 GHz [100.00%]
162615 cpu/cycles-t/ # 0.14% transactional cycles [100.00%]
773 cpu/tx-start/ # 210 cycles / transaction [100.00%]
0 cpu/el-start/ # 0.000 K/sec [100.00%]
111864 cpu/cycles-ct/ # 0.04% aborted cycles
1.001474976 seconds time elapsed