绘制线程上下文切换的工具

时间:2012-05-14 13:54:31

标签: c++ multithreading profiling

我正在寻找一个用于性能分析和调试的工具,它可以绘制线程上下文切换,也可能是信号量状态,事件,...... 我在嵌入式世界中使用过类似的工具,但我现在正在Windows或Linux平台上寻找相同的工具。 我想要分析的应用程序是一个c ++多线程应用程序。 有没有人有推荐的工具?

4 个答案:

答案 0 :(得分:2)

对于Linux和Solaris,来自Oracle Solaris Studio的 Oracle线程分析器(它也可以在Linux上运行,尽管它的名称)可以提供对多线程应用程序性能问题的大量了解。除了Oracle Solaris Studio,仍然是免费的

英特尔VTune Amplifier XE (以前称为英特尔线程分析器)可在Linux和Windows上使用。

答案 1 :(得分:1)

在Windows上,您可以使用xperf工具收集和绘制上下文切换。它是一个免费工具,是Windows Performance Analysis Developer Center的一部分。对我来说很好,看截图。 xperf displaying context switches for threads of my app

答案 2 :(得分:0)

Windows性能监视器?

perfmon.exe

我认为它是大多数Windows平台的标准配置,并提供有关上下文切换的信息等等。

Windows只是我害怕。

答案 3 :(得分:0)

可能这不是您正在考虑的工具,但它简单,快速且有用。

使用GDB时,您可以输入:

info threads

查看有关正在运行的线程的信息。接下来,您可以切换到所选的线程并打印回溯以查看它的位置:

thread <thread-id>
bt