PIX - how to speed it up

Started by
5 comments, last by mancubit 13 years ago
I am writing a quite complex shader at the moment and i would really need to debug it. But PIX is almost useless at the moment, because it takes up to 15minutes to debug a single pixel. But sometimes it starts debugging quite fast. Unfortunately i dont understand when this is the case.

Is there anything to speed up pixel debugging? Or is there anything what i should prevent doing when i want to debug a shader?

Any help is appreciated!
Advertisement
15 minutes to debug a single pixel???
Can you post your pixel shader please?
the weird thing is, it is completly independent of the pixel shader itself. Even if my pixelshader simple returns a constant colour it takes this long. I just noticed that somehow previous draw calls are slowing dont PIX. So if i am executing the shader alone it can be debugged fast, if i a am doing some draw calls beforehand it takes >15min. Good to know but it doesnt help me because i need the results of these drawcalls in my shader

the weird thing is, it is completly independent of the pixel shader itself. Even if my pixelshader simple returns a constant colour it takes this long. I just noticed that somehow previous draw calls are slowing dont PIX. So if i am executing the shader alone it can be debugged fast, if i a am doing some draw calls beforehand it takes >15min. Good to know but it doesnt help me because i need the results of these drawcalls in my shader


What are you trying to do in PIX? Is this D3D9, 9EX, 10, or 11? Are you doing a single-frame record or a longer capture? How much GPU work is being done before PIX runs the pixel shader (because due to the nature of PIX, it needs to re-execute all of those commands every time you step forwards in the shader)? Are you using the D3D debug or release runtimes?
i am using d10, single frame record, GPU work is not that much - unfortunately hard to evaluate for me

i noticed that if i draw to a seperate rendertarget it slows down. If i draw exactly the same to the framebuffer directly i can debug quite fast. Currently i am using debug runtimes - i could give a try with release mode

edit: ok release mode doesn't change anything - the problem still exists
PIX debugs shaders using the REF device, and to debug a shader it needs to completely re-create the state in which the shader was executed by replaying all of the commands on the REF device. This can be very slow, depending on what happens in the frame.
thx for your explanation. I think i need to live with that.

This topic is closed to new replies.

Advertisement