My game use async compute,I use pix to take a GPU capture,we can check the fence signal and wait call, it’s same as c++ code。But pix replay don’t support async compute,so i use nsight to debug it.
I take a graphics capture, and use gpu trace profiler to get a gpu trace, i found the fence count and position in the pipeline is same as pix, but the fence wait value is bigger, so the compute queue is stall.
for example, in pix, graphics queue call Signal(fence1, 2) Signal(fence1, 3) Signal(fence1, 4), and compute queue call Wait(fence1, 2) Wait(fence1, 4), but in nsight compute queue call wait(fence1, 4), wait(fence1, 13), why?
nsight version is 2026.2, 4060ti, win10 x64.
Hi, are you using the “Collect GPU Trace” button from the Graphics Capture gui (aka the Graphics Debugger)? I’m not sure if that could cause the numbers to be different, but it might. Can you compare to what happens with a direct GPU Trace of the application, i.e. from the Start Activity window?
Also, are you willing to share a copy of the application, or perhaps the graphics capture?