views:

80

answers:

4

Hi,

I'm searching for software to do benchmarking, analysis, performance of code and apps. Something like Intel VTune.

Can anyone give me some names, free or payed, targeting c# apps.

thanks

+5  A: 

Redgate Performance Profiler

...their Memory Profiler will undoubtedly help as well.

Justin Niessner
ANTS is indeed the best http://www.red-gate.com/products/ants_memory_profiler/index.htm.
bertelmonster2k
thanks a lot :D
Narven
+1  A: 

Visual Studio, in it's higher SKUs, includes multiple profilers which can be used for this purpose. If your application is using multiple threads, VS 2010's new Concurrency Profiler is incredible for profiling C# concurrent code.

There are many other performance profilers on the market which are useful for performance profiling as well. I personally like dotTrace and think it's a very clean interface.

Reed Copsey
+2  A: 

It sounds like you have multiple purposes.

If you want to monitor the performance health of programs, benchmarks and profilers that measure are probably what you want.

If you need to make a program faster, and you have the source code for it, I think your best bet is to get something that samples the call stack and gives you line-level percent of wall-clock time. For this, don't look for high precision of timing. Look instead for high precision of pinpointing code that is responsible for high percentages of time. Especially in larger programs, these lines are function or method calls that you can find a way to avoid. Don't fall into the myth of thinking that the only problems are hotspots where the program counter lives, and don't fall into the myth that all I/O is necessary I/O.

There's a totally manual method that a few people use and works very well.

Mike Dunlavey
thanks, im going to check that url :Dim working on some software that handles huge amount of data, and im starting to have problems with showing that data in .net components, like treeviews and stuff.also want to test ways of improve memory consume, speed, etc :D
Narven
@Narven: Oh boy, that's exactly the kind of code that IME is prone to wasteful use of over-abstraction. The manual method will definitely show you why it is taking time. The fixes may require some heavy refactoring.
Mike Dunlavey
many thanks again :D
Narven
A: 

I've used the EQATEC profiler which is free for personal use. It benchmarks run time and helped point out the inefficiencies that were causing bottlenecks in my code.

Robert Gowland