【发布时间】:2012-12-03 10:03:55
【问题描述】:
我有一个基于 C++ 的程序正在运行,我的问题是我想知道:
- 调用次数最多的top10、top5、topX方法有哪些
- 什么是计算量最大的类或哪些线程需要最大时钟周期
是否可以在 Linux 下使用 valgrind、perf 或类似工具来执行此操作?
我不应该说这个应用程序使用了许多第三方库,但我对这些不感兴趣,因为我想要修改和改进的是应用程序本身的核心,所以我可以将所有可能的方法列表缩减为仅由“实际应用程序”实现的那些。
一般而言,如何检测导致分支失败和性能损失最大的类或方法是什么?
【问题讨论】:
-
如果一个函数被调用,用变量记下它,然后在控制台中显示每个函数变量,看看哪个被调用的次数最多?
-
@Need4Sleep 不完全是一个“解决方案”,我也想调查可执行文件,我不想为这个应用程序操作整个代码库,它很大而且做起来很危险,而且而且,这将是浪费时间。
标签: c++ valgrind performance-testing perf