使用g++进行性能分析

3
如何对C++代码进行性能分析,以获取代码每行的调用次数和耗时,就像Matlab中的性能分析工具一样?
我尝试使用-fprofile-arcs等工具,但它只生成代码覆盖率报告,其中可以找到调用次数,但不能找到耗时。
有人可以帮忙吗?谢谢。
1个回答

6
你可以使用g++ -pg(或者可能是-p,甚至是--coverage;并且-Wall总是很有用的),然后使用gprof(甚至是gcov)。你还可以学习使用oprofile;了解有关GCC 调试选项的更多信息

我使用 gprofgcov,正如 OP 所说,它们可以给出计数器(函数被调用的次数),但我没有看到计时器(该函数消耗了多少实际时间),更不用说按降序排列的列表了... http://lcov.csspp.org/csspp-1.0.10/lib/compiler.cpp.gcov.html - Alexis Wilke

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接