linux下分析c++程序各个函数运行时间和调用次数

\quad 博主当前系统为centos7,如果是其他linux会在安装c++性能分析工具时有所区别,但使用方法完全一样。

1、gprof

\quad 准备工作:假设你写了cpp程序命名为test.cpp,首先将其编译:g++ -o test test.cpp -pg -std=c++11,这里需要指定选项-pg,能产生供gprof剖析用的可执行文件,编译后可执行文件为test
\quad 第一步:执行可执行文件./test,会在当前目录下生成gmon.out。注意:此时执行时间会更长一些,主要原因时gprof内部运行逻辑导致的,但是对于自己写的函数的计时是较准确的。
\quad 第二步:输入命令gprof –b test gmon.out > report.txt,将统计结果输出到文件report.txt中去,打开文件就能看到各个函数运行时间和调用次数了。

2、perf

\quad 安装方法:yum install perf
\quad 准备工作:编译c++程序:g++ -o test test.cpp -std=c++11
\quad 第一步:使用perf record -e cpu-clock ./test运行编译后的可执行文件,并完成性能统计。
\quad 第二步:使用perf report,会生成分析报告,里面可以看出每个函数运行时间占比。

相关推荐
©️2020 CSDN 皮肤主题: 编程工作室 设计师:CSDN官方博客 返回首页