关于c#:最佳.NET内存和性能分析器?

关于c#:最佳.NET内存和性能分析器?

Best .NET memory and performance profiler?

我们正在使用JetBrains的dotTrace。 可以建议使用哪些其他分析工具来更好地分析C#Windows Forms应用程序?


不。我已经尝试了市场上几乎所有的.NET分析器(ANTS,vTune,OptimizeIt,DevPartner,YourKit),我认为dotTrace是最好的。它是我使用过的仅有两个探查器之一(另一个是YourKit),它们的开销不足以处理CPU密集型应用程序。

当且仅当您的应用程序相对较轻时,我才建议使用ANTS Profiler。它的逐行统计信息有时非常有用,但它们会影响分析效率。


我已经使用了EQATEC Profiler。它是免费的,是代码分析器,而不是内存分析器。


对于内存配置文件,您同时具有免费的CLR分析器和商用.NET内存分析器。两者都很出色,但后者更精致。


我们对AQTime的了解非常好。从我们的角度来看,最棒的事情是它也可以处理代码的非托管部分。


它尚未被提及,但是对于内存分析,Windbg大约是您所能达到的全面和低级的水平。将它与sos.dll结合使用非常强大,但是学习曲线相当陡峭。

不过,它是一个免费工具,Tess Ferrandez的博客是一个很好的起点。 ANTS和其他探查器更加用户友好,但是在我看来,Windbg可以像对其他托管堆那样进行切片和切块。


Ants Profiler刚刚发布了版本4。
我们使用它,并且对此感到非常满意。有一个14天的试用版可以评估(大多数产品都是如此)。


我对RedGate ANTS感到非常满意。我尝试过的唯一另一个方法是Visual Studio Team附带的方法,它很糟糕。


我们像您一样使用DotTrace,但过去我们使用RedGate的Ants Profiler。这也是一个很好的工具。


您应该查看SpeedTrace。我们对该软件感到满意,它可以帮助我们解决问题的根本原因。


自最近发布以来,我一直在使用免费的SlimTune。尽管它具有最小的界面,但它非常易于使用,并提供了良好的诊断功能,对我有很大帮助。它当前支持两种显示,其中一种类似于nProf。它与SlimDX来自同一开发人员,因此我希望该工具在短期内会变得更好。

编辑:据我所知,它还不支持内存分析。


如果您正在寻找免费的东西,nProf是一个很好的工具。有时有点挑剔,但有一些小问题,但是如果您的预算有限,则可以完成工作。


推荐阅读