适用于Windows的体面探查器?

oll*_*iej 24 c++ windows performance profiling

Windows是否有适当的采样(例如,非仪器)分析器?最好一个类似于鲨鱼在MacOS,虽然我愿意接受我我将不得不支付这样一个分析器上的窗口.

我试着在VS团队套件探查,并没有太深刻的印象,并想知道是否有任何其他好的.

[编辑:ERK,我忘了说,这是C/C++,而不是.NET - 抱歉任何混淆]

use*_*071 16

对于Windows,请查看Windows SDK附带的免费Xperf.它使用采样配置文件,具有一些有用的UI,并且不需要检测.对于跟踪性能问题非常有用.你可以回答以下问题:

谁使用最多的CPU?使用调用堆栈深入查看函数名称.

谁分配的内存最多?

出色的内存分配(泄漏)

谁在进行大多数注册表查询?

磁盘写?等等


Naa*_*aff 12

我知道在问这个问题几个月之后我正在添加我的答案,但我想我会指出一个体面的,开源的分析器:非常困.

它没有之前提到的其他一些分析器的功能计数,但它是一个非常值得尊敬的采样分析器,在大多数情况下都能很好地工作.


Dic*_*eed 11

英特尔VTune很好,并且没有仪表.我们为Windows评估了大量的分析器,这对于使用驱动程序代码是最好的(尽管它也有非托管用户级代码).一个特别的优势是它可以读取所有英特尔处理器性能计数器,因此您可以很好地理解代码运行缓慢的原因,并且将预取指令放入代码并整理数据布局以便与缓存行,以及缓存行在多核系统中失效的方式.

它是商业性的,我不得不说它不是世界上最简单的用户界面.

  • vtune也有一个可怕的,可怕的用户界面,我发现它非常可怕. (4认同)

Die*_*nte 6

AMD的CodeAnalyst 在这里免费的

  • 也许是一个愚蠢的问题,但CodeAnalyst是否适用于英特尔CPU? (2认同)