代码之家  ›  专栏  ›  技术社区  ›  Boolean

GCC的良好C++分析器

  •  8
  • Boolean  · 技术社区  · 15 年前

    我试图找到一个相关的问题,但是以前所有的问题都是关于Windows中的本地C++的剖析器。我在谷歌上搜索了一会儿,了解了gprof,但是gprof的输出实际上包含了很多模糊的内部函数。有一个很好的开源C++文档分析器,有很好的文档吗?

    6 回复  |  直到 6 年前
        1
  •  7
  •   iamslash    15 年前

    Valgrind公司

    我完全推荐这个 http://en.wikipedia.org/wiki/Valgrind

        2
  •  6
  •   Mike Dunlavey    6 年前

    不要使用 GPROF , for the reasons given here .

    你需要的是堆垛, explained here . 一种拍摄堆叠照片的方法是 堆栈 实用工具。另一种方法是在调试器下使用“暂停”或Ctrl-Break。阿尔索 LS叠加 ,如果你能得到一份副本。

    如果你想花钱, RotateRight makes a nice tool based on stack sampling called Zoom .

        3
  •  2
  •   LiraNuna    15 年前

    使用标志编译 -pg 使用 gprof .

        4
  •  1
  •   okun    15 年前

    如果你不介意kde库的依赖性, KCachegrind 对于增加的可视化效果非常有用。它依赖于callgrind和valgrind,正如人们所猜测的,所以在编译期间不需要特殊的编译器标志。

        5
  •  0
  •   Engineer    13 年前

    我听说Oprofile非常非常非常适合实时应用程序。不过,只有linux,afaik。

        6
  •  0
  •   learnvst    12 年前

    你的个人资料报告需要多少细节。如果您只想为一些函数做一些简单的时间剖析,那么可以通过C++ 11获得新的功能。 chrono 类使得以跨平台、跨编译器的方式进行分析变得容易。

    this article 对于一些简单的分析代码,它的工作原理类似于Matlab的超级易用性。 tic toc 功能。