Strange timing of command buffers for d3d11 dispatches

This is easiest to explain with a picture:

I’m trying to work out why my two dispatches, which are each taking ~300us, are showing in command buffers that are executing for ~1600us. Those two dispatch calls are consecutive D3D API calls, and are followed directly by framebuffer clear on the draw command buffer.

Any idea how I can find out what the GPU is doing between the dispatches?

The overhead seems to be constant. Before optimising those dispatches, the first one was taking ~2000us, but there was still >1000us mystery time afterward.


And obviously I figure it out immediately after posting this…

I was calling GenerateMips afterwards, and apparently it doesn’t register as dispatch or draw.