2009-09-03 34 views
9

使用的工具,如:从oprofile获得最有用输出的最佳方法是什么?

  • opreport
  • opcontrol
  • opannotate

我开始使用这个工具,并试图找到最好的组合,例子让 最出的分析。

感谢

+1

“最好”的意思总是取决于“好”的意思,而这并不总是显而易见的。你能描述一下你在找什么好东西吗? – hlovdal 2009-09-04 06:28:20

回答

5

看那KCachegrind - 这是一个配置文件数据可视化工具。

KCachegrind可视化由Callgrind profiler工具生成的数据文件。但是conversion scripts,KCachegrind能够将OProfile等其他分析器的输出可视化。

当您使用软件包管理器(yum,apt-get等)安装KCachegrind时,您会得到一个名为op2calltree的工具,它将Oprofile的输出转换为KCachegrind的格式。

6

gprof2dot是用于配置文件数据的最惊人的可视化工具。向下钻取实际问题的代码时

opcontrol --shutdown 
opcontrol --callgraph=7 
opcontrol --image=<abs/path/to/your/execuable> 
opcontrol --start 

... time passes ... 

opcontrol --dump 
opreport -c > profile_info.txt 
gprof2dot.py -f oprofile --strip profile_info.txt | dot -Tsvg > profile_graph.svg 
inkscape profile_graph.svg 

gprof2dot--skew选项是非常好的。

记住如果您手动将事件计数器设置为较低的数字,则无法设置callgraph。例如屏幕截图:使用--callgraph选项最小计数器是一个比--list-events


编辑列出的15倍时是默认 gprof2dot.py example output

分辨率降低,以避免泄露机密数据,但你明白了。

+0

你认为它比KCachegrind更好吗?有截图吗? – 2013-02-13 20:16:02

+2

@NathanKidd:我有一个关于gprof2dot更完整的答案:http://stackoverflow.com/a/4453999/28817 – 2014-01-29 22:34:23

+0

我已经上传了截图。非常感谢这个工具! – ulidtko 2014-02-03 16:36:41

相关问题