应用程序测试软件以提高性能

3
我正在寻找一款软件,用于进行基准测试、代码和应用程序性能分析。 类似于英特尔VTune的东西。
有没有人能给我一些名称,免费或付费,针对c#应用程序。
谢谢。

这可能应该是一个社区维基。 - H H
5个回答

5

ANTS确实是最好的http://www.red-gate.com/products/ants_memory_profiler/index.htm。 - bertelmonster2k

3

听起来你有多个目的。

如果你想监控程序的性能健康状况,那么测量基准和分析器可能是你想要的。

如果你需要让一个程序运行更快,并且你有它的源代码,我认为最好的方法是获取一些可以采样调用堆栈并给你每行墙钟时间百分比的东西。对于这个,不要寻求高精度的计时。相反,寻找高精度的定位负责高百分比时间的代码。特别是在较大的程序中,这些行是函数或方法调用,你可以找到一种避免的方法。不要陷入认为唯一的问题是程序计数器所在的热点的神话,也不要陷入认为所有I/O都是必要的I/O的神话。

有一种完全手动的方法,有些人使用它,并且效果非常好。


谢谢,我会去检查那个网址 :D我正在开发一些处理大量数据的软件,开始在 .net 组件中显示这些数据时遇到了问题,比如树形视图等。同时也想测试提高内存消耗、速度等方面的方法 :D - Pedro Luz
@Narven:哦,天啊,这正是IME倾向于过度抽象浪费的代码类型。手动方法肯定会让你知道为什么它需要时间。修复可能需要进行大量重构。 - Mike Dunlavey

1

1

Visual Studio在其高级SKU中包含多个分析器,可用于此目的。如果您的应用程序正在使用多个线程,则VS 2010的新并发分析器非常适合分析C#并发代码。

市场上还有许多其他性能分析器也非常有用。我个人喜欢dotTrace,认为它具有非常清晰的界面。


0
我使用了免费的EQATEC性能分析器,它可以对运行时间进行基准测试,并帮助找出导致代码瓶颈的低效之处。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接