Deadlock with low latency setup

Hi Ilja

Thanks for reporting this. I reproed this locally and have submitted a fix in CL 44753093 to //UE5/Main. Please let me know if that change fixes the deadlock for you.

As for the latency question, it can be difficult to answer as there are a multitude of console variables and configuration in the engine that can affect the total length of the renderer pipeline. I remember that a 30hz title on console under default engine settings can have up to ~120ms of latency, which was why we had to add the “r.GTSyncType” console variable to reduce that.

I should note that “r.GTSyncType 2” is only implemented on certain console platforms. On PC, it behaves the same as “r.GTSyncType 1”, which (under default settings for other cvars) causes the game thread to synchronize with the N-1 frame on the RHI thread. Running with “r.OneFrameThreadLag 0” will cause the game thread to wait for the current frame (i.e. frame N) on the RHI thread instead. After that, there’s still the latency introduced by the GPU and swapchain. If the swapchain is triple-buffered, there can be an additional frame of latency there.

We do have a console variable (“r.VsyncInformationInsights”) that enables additional information in Unreal Insights, adding events where each frame flips, along with the frame number. You can use these to figure out the total game thread -> frame flip end-to-end latency.

Cheers,

Luke