RdrThread is some Asobo terminology that is honestly not 100% sure we can decode and understand exactly what it is… but we can make a close guess.
- RdrThread is definitely CPU workload
- RdrThread is most likely the group of CPU work that envelopes the game writing commands to the GPU for drawing geometry and applying post-processing
- The geometry part would be the most costly part of it: computing transform matrices, performing geometry culling based on camera FOV, uploading data to the GPU, then finally enqueuing the list of polygons to draw
- Applying post-processing is typically cheap on the CPU: it comes down to enqueing what shaders to run and uploading the corresponding parameters to the GPU
- In a good implementation, RdrThread does not wait on the GPU ever, and therefore is not related to the performance of your GPU
RdrThread being lower than the Main thread would mean that it is faster for the game to draw geometry etc than it is to compute game physics, AI, and other game logic.
RdrThread being higher than the Main thread would mean there is a lot of geometry to draw and it dominates every other workload (other aspects of the game such as physics, AI, etc…).
RdrThread being lower than the GPU time means you are GPU-bound: executing the commands on the GPU to draw all the scenery/objects and perform image processing costs more than it does for the CPU to tell the GPU what to do, and eventually your need to wait for the GPU to complete this work. You need to lower your resolution and/or the complexity of the effects to apply in post-processing (eg: TAA, clouds).
RdrThread being higher than the GPU time means you are CPU-bound: it takes longer to tell the GPU what to do than it takes the GPU to do it. So the GPU is constantly “underfed” commands to execute, and waits for the CPU to send the next commands. You need to lower your geometry settings like LOD.
Ideally, for maximum efficiency, you would want the RdrThread and GPU frame time to be equal: it means you are maximizing both your CPU and GPU.
If you plan to rely on OpenXR Toolkit (FSR or foveated rendering) or DLSS to improve your performance, you will want to be GPU-bound: these performance features help reducing your GPU time only. There is no cure to high RdrThread besides lowering LOD.
Ideally, for the smoothest experience, you will want the maximum of RdrThread and GPU frame time to be as low as possible, which determines your effective frame rate.