Shaders are never available for debug

Started by
7 comments, last by pankajsachdeva85 12 years, 1 month ago

Hi,

I am trying to debug the shaders using the NVIDIA Parallel Nsight 2.1 but I am unable to do so. As soon as I start debug with Nsight there is a message in Shaders window "Shader Debugger is not available". So, I googled this problem and found this link. I have tried all the options that are discussed into the above thread, still no success.

If any of you guys have any experience of debugging shaders, then please help me with this problem.

Thanks,

Pankaj

Advertisement
Do you have a two-machine configuration? In order to do live shader debugging on actual hardware, the driver and GPU need to be interrupted and this means that the debugger itself cannot run on the same machine (because it would effectively be stopped too). Hence the need for the second machine to host the debugger.

Do you use D3D? Microsoft's PIX tool lets you debug shaders using the reference device (emulator) and you can inspect and step thru any primitive.

Niko Suni

Hi Niko Suni,

Is it necessary to have two separate computers (workstations) or we can do the debugging with a single computer with two graphics cards? BTW, I have a laptop. What would you recommend for the best setup for game development?

Thank You,
Pankaj
The docs say that you have to be using a remote debugging session to run the shader debugger.

The docs say that you have to be using a remote debugging session to run the shader debugger.




Yes, I have set up the remote debugging session. In those settings I have set the Remote Command as the executable path on my machine and set the Remote Server Name as my computer's name but no success there. Still I see the "Shader Debugger is not available" in shader list.

Thanks,
Pankaj
That's not "remote" - "remote" means a second machine.

Direct3D has need of instancing, but we do not. We have plenty of glVertexAttrib calls.


Hi Niko Suni,

Is it necessary to have two separate computers (workstations) or we can do the debugging with a single computer with two graphics cards? BTW, I have a laptop. What would you recommend for the best setup for game development?

Thank You,
Pankaj



Do you have a optimus enabled card for your laptop. You cannot debug a shader at optimus enabled laptop yet. Requirements are specified here.
The live shader debugging does require a whole separate machine, because the video system (and probably more) is completely paused on the machine that is being debugged and therefore you couldn't actually use the debugger program on said machine. For an analogy, consider a debug break on an ordinary desktop program - the only thing that a breaked thread responds to is the debugger itself. PIX debugging is a lot easier because the emulator does not need to do any system-wide locks; it is simply an user-mode software module and other running programs do not care if it freezes.

Niko Suni

Thank you all I figured out why I wasn't able to debug the shaders. I was using the optimus graphics card and because of which I wasn't able to debug the shaders.

This topic is closed to new replies.

Advertisement