我广泛使用了JetBrains dotTrace和Redgate ANTS.它们在功能和价格上相当相似.它们都提供了有用的性能分析和非常基本的内存分析.
dotTrace与Resharper集成,这非常方便,因为只需从IDE单击一下,就可以分析单元测试的性能.然而,dotTrace似乎经常给出虚假的结果(例如,说一个方法运行了几年)
我更喜欢蚂蚁呈现分析结果的方式.它向您显示源代码,每行的左边告诉您运行所需的时间.dotTrace只有一个树状视图.
EQATEC profiler是非常基本的,需要编译程序集的特殊指令版本,然后可以在EQATEC profiler中运行.然而,它是免费的.
总体而言,我更喜欢使用ANTS进行性能分析,尽管如果您使用ReSharper,那么dotTrace的集成是一个杀手级的特性,这意味着它在可用性上胜过了ANTS.
免费的Microsoft CLR Profiler(.Net framework 2.0/.Net Framework 4.0)是.NET内存分析所需的全部.
2011 Update:
Scitech memory profiler有一个非常基本的用户界面,但有很多有用的信息,包括dotTrace和ANTS缺乏的一些非托管内存信息——如果你正在进行COM互操作,你可能会发现它很有用,但我还没有找到任何能使COM内存问题易于诊断的探查器——你通常必须破解windbg.exe
.
在过go 的几年里,ANTS profiler取得了突飞猛进的发展,它的内存分析器有一些真正有用的功能,在我看来,这些功能现在已经超过了dotTrace.我很幸运,两个都有许可证,但如果你打算买一个的话.Net profiler的性能和内存,让它成为蚂蚁.