当前位置:  开发笔记 > 编程语言 > 正文

什么是Windows最好的免费C++探查器?

如何解决《什么是Windows最好的免费C++探查器?》经验,为你挑选了7个好方法。

我正在寻找一个分析器,以便找到我的C++代码中的瓶颈.我想找一个免费,非侵入性和良好的分析工具.我是一名游戏开发人员,我使用PIX for Xbox 360并发现它非常好,但它不是免费的.我知道英特尔VTune,但它也不是免费的.



1> yrp..:

CodeXL现已取代End of Line的AMD代码分析师,两者都是免费的,但不如VTune先进.还有Sleepy,这很简单,但在很多情况下都可以完成.


以下是CodeAnalyst的链接:http://developer.amd.com/CPU/CODEANALYST/Pages/default.aspx

2> lsalamon..:

Very Sleepy是Windows系统的C/C++ CPU分析器(免费).
CppCheck是Windows系统的静态C/C++ CPU分析器(免费).


googletest是一个单元测试框架.你会如何使用它来执行分析?

3> pauldoo..:

Proffy非常酷:http://pauldoo.com/proffy/

免责声明:我写了这个.



4> Arty..:

MS VC 7.1及更高版本的仪器(功能准确)分析器称为MicroProfiler.你可以在这里(x64)或这里(x86)得到它.它不需要对代码进行任何修改或添加,并且能够实时显示调用者和被调用者的函数统计信息,而无需关闭应用程序/停止分析过程.

它与VisualStudio集成,因此您可以轻松启用/禁用项目的分析.也可以将它安装在干净的机器上,它只需要将符号信息与被分析的可执行文件一起定位.

当非常困的采样分析器的统计近似不充分时,此工具非常有用.

粗略的比较显示,它胜过AQTime(当它在仪表,功能级别运行中调用时).以下程序(完全优化,内联禁用)运行速度快三倍,微型分析器实时显示结果,而AQTime只是简单地收集统计信息:

void f()
{
    srand(time(0));

    vector v(300000);

    generate_n(v.begin(), v.size(), &random);
    sort(v.begin(), v.end());
    sort(v.rbegin(), v.rend());
    sort(v.begin(), v.end());
    sort(v.rbegin(), v.rend());
}



5> epotter..:

Microsoft拥有Windows性能工具包.

它确实需要Windows Vista,Windows Server 2008或Windows 7.


怎么不免费?它是Windows SDK的一部分.我能够毫无问题地下载它.(不可否认,我们有一个MSDN订阅,所以有些人可能会有不同的体验.)
它不是免费的:(

6> Buggieboy..:

Shiny是一个新成员.

​​​​​


找不到可下载的二进制文件,只是源代码.不太方便.

7> MW_dev..:

我强烈推荐使用Windows性能工具包(WPT)或XPERF

命令行xperf命令行工具记录可以使用GUI xperfview工具分析的Windows事件跟踪(ETW)日志.

使用stacktrace命令行争论已经证明对我公司来说是一个非常宝贵的工具,因为它可以描述和排除瓶颈问题.其中一个最引人注目的事情是WPT可以安装在任何环境中,即使是在古老的Windows XP上也是如此.

Windows 8上,Windows性能分析器将xperf提升到更高的水平.

除了视觉工作室分析器(2010/2012)之外,ETW日志中提供的硬数据和统计数据是无与伦比的,除了视觉工作室分析器(2010/2012),它也很棒但不是免费的AFAIK.

如果你从未使用过xperf ......你不知道自己缺少什么

推荐阅读
手机用户2402852387
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有