首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用callgrind/kcachegrind获取每个线程的统计信息

使用callgrind/kcachegrind获取每个线程的统计信息
EN

Stack Overflow用户
提问于 2010-03-05 02:18:45
回答 2查看 5K关注 0票数 8

我希望能够看到我的应用程序中的每个线程使用callgrind有多“昂贵”。我使用--separate-thread=yes选项进行了分析,它为整个应用程序提供了一个callgrind文件,然后每个线程一个文件。

这对于查看任何给定线程的配置文件都很有用,但我真正想要的只是每个线程的CPU时间的排序列表,这样我就可以看到哪些线程占用的CPU时间最多。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2010-07-21 19:42:40

Valgrind/Callgrind不允许这种行为。两个kcachegrind都没有,但我认为这将是一个很好的改进。也许可以在他们的邮件列表中找到一些答案。

一种有效但非常无聊的方法是使用选项--separate-thread=no,并更新您的代码,以便为每个线程使用不同的函数名或类名。根据您的代码复杂性,它可能是答案(使用1computeData(),2computeData(),..)

票数 4
EN

Stack Overflow用户

发布于 2014-11-06 09:19:00

只需在kcachegrind中同时打开多个配置文件。

票数 -2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2381647

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档