I have searched this forum as well as the internet but could not find an answer so I m asking here. All of us know the powerful nvidia perfHUD for directx apps. Is there anything similar for opengl? I only see perfkit which allows u to get the counters for instrumented drivers but nothing graphical in it. gDebugger and glslDevil are some other tools that I use often but these exist as good standalone alternates that do not show things as perfHUD does right on top of the app. Are u aware of any project which is doing this? Is anyone working on this?
I’ve been talking about this problem for a long time.
OpenGL is a second-order citizen, obviously.
You might try NVIDIA Parallel Nsight, but…
There are too many buts.
Correct me if i am wrong. Isn’t NSIGHT primarily for debugging of CUDA apps and does shader stuff for directx using PIX?
I didn’t try it, because it requires two separate machines for debugging, but according to the documentation Parallel Nsight Debugger enables debugging all HLSL shader types: Vertex, Pixel, Geometry, and Tessellation, while Parallel Nsight Graphics Inspector captures frames, automatically identifies bottlenecks, and shows all operations that affected a given pixel. Unfortunately, I think that all this works only with D3D.
Ah, yes, there are differences between Standard and Professional edition. OpenGL is mentioned just in Pro Ed. I’ll install Standard edition and check what can be done there.
Your best bet for performance profiling currently is either gDebugger ( http://www.gremedy.com/download.php ), or rolling your own using timer-queries.
Nvidia’s NSIGHT does show you the time each draw-call takes, and a visualisation of this, which is great. It doesn’t actually tell you what parts are slow, or why, and it is a bit hard to get a good overview from it.
AMD has GPU perf studio 2 ( http://developer.amd.com/gpu/PerfStudio/Pages/default.aspx ), which is pretty good for frame-debugging, though is still missing proper support for FBOs (and a number of other features).
Yeah! Unfortunately, NSight Std.Ed. enables only OpenGL API trace information correlated with other GPU and CPU events. Very very poor.
I would delete OpenGL from the list of supported APIs.