I’m working on some dynamic global illumination that isn’t quite real-time, but instead spreads the calculation out over a number of frames. Subdividing this task into equal parts to be processed each frame is a bit difficult.
The time it takes the process to complete doesn’t matter, but its impact on the GPU does matter. Ideally I would like to create a secondary device queue, send it a command buffer, and tell it “take no more than 20% of the GPU power to do this, however long it takes”.
The goal is to prevent erratic frame rendering times, but also prevent the “background” queue from hogging the GPU.
Any advice?