用于分析 .NET 程序的函数执行时间的工具

Posted

技术标签:

【中文标题】用于分析 .NET 程序的函数执行时间的工具【英文标题】:Tools to profile function execution times of a .NET program 【发布时间】:2009-06-03 22:41:35 【问题描述】:

有哪些工具可用于通过测量函数执行时间和生成图表来分析 .NET 程序,以可视化调用图表中各个点所花费的时间?

【问题讨论】:

【参考方案1】:

这会花费你,但Ants Performance Profiler 会完成这项工作。

【讨论】:

【参考方案2】:

AQTime 和 dotTrace 是两个非常好的商业分析器。

ProfileSharp 是一个免费选项,尽管我运气不佳。

Microsoft 也提供了CLR Profiler,它运行良好,但功能较少。

【讨论】:

@Gorgen:不——这篇文章早于 VS 2010 和 .NET 4。但是,现在,VS 的高端 SKU 包含一个非常好的分析器。 好的,这就是他们停止更新产品的原因。不幸的是,我使用的是 Express 版本,它在我的预算范围内。有什么建议吗? @Gorgen:我怀疑这是因为他们在商业上销售它,而且 CLR 4 的分析入口点发生了很大变化。话虽如此,那里有一些不错的免费分析器。试试 SlimTune:code.google.com/p/slimtune 或 EQUATEC:eqatec.com/Profiler/Download.aspx【参考方案3】:

CLR Profiler

【讨论】:

【参考方案4】:

有一个免费的C# IDE SharpDevelop 3.1,集成了profiler,并且兼容Visual Studio 解决方案。

【讨论】:

【参考方案5】:

目标是什么?您只是想 1) 查看带有时间的漂亮调用图,还是 2) 找到成本点以进行优化以使您的程序更快?

如果答案是 (2),并且您不介意免费的东西,您可以try this。

This 给出了一个如何使用它的例子。

【讨论】:

以上是关于用于分析 .NET 程序的函数执行时间的工具的主要内容,如果未能解决你的问题,请参考以下文章

Linux c++ 性能分析工具gprof

AppScan 工具,用于对基于 MobileFirst 8.0 构建的应用程序执行安全漏洞分析

对用于跟踪或分析 C++ 控制台应用程序执行和差异跟踪的工具的建议

C++ 中的运行时内存分析

如何在构建docker镜像时执行SonarQube扫描.NET Core应用

性能测试之JVM的故障分析工具VisualVM