What tools are available to profile a .NET program by measuring function execution times and generating graphs to visualize the time spent at various points in the call graph?
相关问题
- Generic Generics in Managed C++
- How to Debug/Register a Permanent WMI Event Which
- 'System.Threading.ThreadAbortException' in
- Bulk update SQL Server C#
- Should I use static function in c# where many call
There is a free C# IDE SharpDevelop 3.1, which has integrated profiler, and it is compatible with Visual Studio solutions.
CLR Profiler
It'll cost you but Ants Performance Profiler will do the job.
AQTime and dotTrace are two very good commerical profilers.
A free option would be ProfileSharp, though I have had little luck with it.
Microsoft provides the CLR Profiler as well, which works well, but has fewer features.
What's the goal? Do you just want to 1) See a nice call graph with times on it, or 2) Locate cost points to optimize to make your program faster?
If the answer is (2), and you don't mind something that's free, you can try this.
This gives an example of how to use it.