关于c#:性能瓶颈 – 使用Visual Studio

Performance bottleneck - using Visual Studio

我正在寻找一种在解决方案中找到瓶颈方法的方法(很多项目)。

假设我有一个庞大的程序(1000多个方法),我想通过查找调用很多的方法(实际上在运行时使用)来提高性能,并对它们进行优化。我需要一个复杂的问题,这是用C++,C语言,CLI/C++编写的。(我可以在debug中编译它,并拥有.pdb文件)所以,我在寻找一种分析器,它可以告诉我每个方法使用多少CPU时间。

我可以在Visual Studio中使用什么工具/插件/功能来获取这些信息?我希望能够运行程序几分钟,然后分析该方法的CPU使用情况。或者更好—CPU数量/调用次数。如果我可以按名称空间或dll/package/project排序,那就更好了。


更昂贵的Visual Studio版本应提供内置的探查器:请参阅此线程。

然而,还有更多的方法需要分析,例如,在StackOverflow中,这个主题已经讨论了很多次。


在Christian Goltz的一个链接之后,我发现了一个可以做我想做的事情的程序,它对托管和非托管代码都进行了配置:

AQTimePro


这种方法技术含量低,但效果很好。

我也在一个巨大的应用程序中工作,当我们遇到性能问题时,它会很快发现问题。


我对JetBrains的Dottrace产品有一些很好的经验。不确定它是否具有IDE集成或者您正在寻找的所有功能,但是它确实完成了工作。