【发布时间】:2023-04-10 21:08:01
【问题描述】:
我希望对使用 Clang 编译的二进制文件进行性能分析(如果可能的话),对性能的影响尽可能小(因此类似于 GCC 的 -pg)。是否有替代方法使用代码检测,或产生类似于 gprof 的输出?
【问题讨论】:
-
你最好在 clang 的开发者名单上问这个,不是吗?
-
你真的想要类似于 gprof 的输出吗?
-
是的,为什么不呢?它清晰而全面。我从来没有找到一个可用的替代品,valgrind 是最接近的。
-
这些页面上到处都是试图理解 gprof 输出的人。 1) 对阻塞时间视而不见,就像 IO。 2)你需要训练自己忽略“自我时间”,它几乎没用。 3) 对所有调用计数和函数计时都类似。 4) 没有行级信息。 5)调用图很好,形式上很有趣,而且几乎没用。当你必须过河时,我会承认它是可用的,就像一辆可靠的汽车。
-
@Mike Dunlavey:我知道 1、2 以及 3 和 4 你错了。至于5,你为什么认为我在使用C? gprof 生成组合输出,对性能的影响最小。我试图找到一种替代方法来处理阻塞时间等没有运气的事情。有其缺点的 gprof 仍然更胜一筹。
标签: c gcc profiling clang gprof