我知道在使用perf stat
执行程序期间,我可以获得分支误预测的总百分比。但是,如何获取C代码中特定分支(if
或switch
语句)的统计信息?
答案 0 :(得分:5)
您可以在branch-misses
事件中进行抽样:
sudo perf record -e branch-misses <yourapp>
然后报告它(甚至选择你感兴趣的功能):
sudo perf report -n --symbols=<yourfunction>
在那里,您可以访问带注释的代码并获取给定分支的一些统计信息。或者使用带有annotate
选项的perf命令直接--symbol
。