2

是否可以使用 Callgrind 的分析输出来获取跟踪信息?

如果是的话,你能解释一下这是怎么做到的吗?

[更新]这可能是我的术语。当使用 Kcachegrind 查看 Callgrind 分析结果时,调用的回溯/调用堆栈是什么以及它驻留在哪里?

4

1 回答 1

0

当您第一次启动 Kcachegrind 时,您有三个区域: 在左侧,您有一个名为“Flat profile”的 DockWidget,它是按应用程序中成本百分比排序的功能列表,包括所有子调用。(这就是为什么主要的通常成本几乎 100%)。然后在右下角区域,您有另一个带有“调用图”选项卡的 dockwidget,这里有所有调用的树,也许你正在寻找什么;)

但是,如果您想在特定点进行回溯,并提供有关上下文的更多信息,我建议您在此处使用带断点的 gdb,然后继续执行,直到到达所需的上下文。Profiling主要是用来定位你的应用程序中哪个函数开销最大,然后看能不能优化。

于 2013-08-08T10:09:07.873 回答