首页 > 代码库 > C/C++性能分析工具gprof

C/C++性能分析工具gprof

转载自:

linux环境下 C++性能测试工具 gprof + kprof + gprof2dot

添加-pg编译选项:

gcc/g++ -g -pg file.c[c]

运行a.out 以 生成gmon.out

./a.out 

生成中间分析文件

gprof ./a.out > prof.log

常用参数 -b brief的缩写 简要输出

gprof -b ./a.out > prof.log

-q 打印函数调用关系

gprof -q ./a.out > prof.log

-p print a flat profile

gprof -p ./a.out > prof.log

 

https://github.com/jrfonseca/

生成程序流程图

gprof ./test | gprof2dot.py | xdot

gprof -b ./test gmon.out | gprof2doc > a.dot

gprof2dot默认是部分函数调用图,对性能影响不大的函数调用都不显示,例如上图中没有出现类的构造,析构函数,

 如果想要显示全部的函数调用,可以 gprof2dot -n0 -e0 ,默认是n0.5即影响小于5%的函数就不显示了。

当然这样图片会很乱,因为显示内容很多,可以 gprof2dot -n0 -e0 -s #-s表示不显示诸如模板,函数入口参数等等,使得

函数名称显示更加精简。

C/C++性能分析工具gprof