Tools to profile function execution times of a .NET program

Posted on

Problem :

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?

Solution :

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.

CLR Profiler

There is a free C# IDE SharpDevelop 3.1, which has integrated profiler, and it is compatible with Visual Studio solutions.

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.

Leave a Reply

Your email address will not be published. Required fields are marked *