3 ms·
In the event that the CPU is faster than the GPU, the CPU run ahead of the GPU and queue multiple frames to render, regardless of adaptive sync or not. This add
by ack_complete 3y ago
In the event that the CPU is faster than the GPU, the CPU run ahead of the GPU and queue multiple frames to render, regardless of adaptive sync or not. This adds lag. Adaptive sync or high Hz only gets rid of up to one frame of delay from vsync timing, not delay from excess frame queuing.
What Anti-Lag does is throttle the CPU work to reduce this delay to as low as sub-frame, so it doesn't process input and begin frame processing until closer to display time -- so the game starts frame updates with fresher input and gets those frames out with less delay. Graphics APIs often only allow setting the frame queue length in an integer number of frames and it can be difficult to reliably tell when frames present and control frame queuing, especially with a compositor involved. This has the graphics driver involved, so it knows the absolute truth of when frames hit the output.
- dist-epoch 3y ago> the CPU run ahead of the GPU and queue multiple frames to render Wouldn't the game limit that to 2-3 frames at most? > Graphics APIs often only allow setting the frame queue length in an integer number of frames and it can be difficult to reliably tell when frames present and control frame queuing, especially with a compositor involved. I'm pretty sure you can control the swap chain using DXGI: > Use DXGI 1.3 to reduce the effective frame latency by waiting for the swap chain to signal the appropriate time to begin rendering a new frame. https://learn.microsoft.com/en-us/windows/uwp/gaming/reduce-latency-with-dxgi-1-3-swap-chains https://learn.microsoft.com/en-us/windows/uwp/gaming/reduce-...