Solid C++/Windows Profiler

I’m looking to buy a profiler and I was wondering what your experiences were with the different packages available.


I use VTune a lot, and it’s a very decent sampling profiler. A little slow crunching through data after a profile run, but otherwise it gets the job done. Only supports high-resolution sampling on Intel chips, though.

AMD has a similar, but not as mature, tool called CodeAnalyst, which is free.

Youve also got Qunatify from Rational which is good because it gives good performance on instrumented code. No need for recompilation.

You’ve also got TrueTime from Numega which is good when you need details of a certain module. No need to intrument the whole code. Need for recompilation to instrument…

Thanks guys for the pointers. At least I can download the Intel/AMD profilers for free and get evals cranked on the other two.

I realize these things won’t diagnose OpenGL-related things like geometry bound vs. fill bound, but how are OpenGL calls accounted for? Has your experience been that one profiler is a little better for profiling OpenGL code?

VTune is a sampling profiler that profiles all of your system (no recompile needed of anything). This means that you’ll get a breakdown of how much you spend in the OpenGL driver versus your program (and the sound driver, and the kernel/HAL, and …).

For example, at one time, I was spending 10% in the nVIDIA OpenGL driver, inside some loop which, when disassembled, seemed to convert WORDs to DWORDs. When I switched my vertex index format off, that loop stopped showing up in VTune.