我们知道如何使用'perf'动态计算一个过程的指令:
perf stat -p <pid> -- sleep <period>
我希望能够在一个线程上做同样的事情。假设具有PID 1500的进程具有SPID(TID)1501,1502,1503和1504的线程。我想使用
计算每个线程指令perf stat -p <spid> -- sleep <period>
然而,当我这样做时,我得到:
Performance counter stats for process id '1502':
<not counted> instructions
0.504 seconds time elapsed.
Some events weren't counted. Try disabling NMI watchdog:
echo 0 > /proc/sys/kernel/nmi_watchdog
perf stat ...
echo 1 > /proc/sys/kernel/nmi_watchdog
我在Raspberry Pi,Raspbian Jessie上使用perf。没有'/ proc / sys / kernel / nmi_watchdog'。我怀疑的问题是我正在尝试分析一个线程ID。如果'perf stat'命令有一个变通方法或属性来检查线程统计数据,我将不胜感激。
谢谢..