使用gprof进行分析指向从未调用的普通函数

时间:2015-08-04 20:42:19

标签: c++ profiling gprof

所以,我有一些代码,我正在努力加快速度。关于该计划的一些相关说明:

1)我已经注​​释掉了所有的I / O

2)为了这些目的,我已经关闭了多线程export OMP_NUM_THREADS=1

3)没有递归

现在,我运行代码并且gprof告诉我,它花费了87%的时间在getGamma

 %   cumulative   self              self     total
 time   seconds   seconds    calls  us/call  us/call  name
 87.49     20.69    20.69  3125353     6.62     6.62  Alkali::getGamma(double, double)

(这是个人资料的第一行,所以我我正在正确地阅读此内容。gprof2dot生成并用getGamma生成鲜红色的图像,所以我'我可能是对的。)

问题是getGamma基本上是一个存根:

double Alkali::getGamma(double tau, double laser_power) {
  double gamma = (1.0 / tau);
  return gamma;
}

当我在grepgetGamma时,我只能在设置例程中获得定义和一个调用。是的,添加一个print语句确认这个简单的函数只被调用一次。

那么什么是愚弄gprof?在其他编译器标志中,我正在使用-O3。如果您需要更多信息并提前致谢,请告诉我。

0 个答案:

没有答案