pc2000 wrote: ↑20 May 2020, 10:20
I read g-sync tear if frametimes rapidly oscillate even within g-sync range.
Does it mean g-sync can't work 100% even every frametime in g-sync range?
Torn frames from frametime oscillations are usually outside G-SYNC range.
For a 140fps cap at 144Hz, you may have some frametimes that are 1/135sec and some frametimes that are 1/145sec
The frametime difference of 1/135sec and 1/145sec is only 510 microseconds (0.51ms).
It only take microseconds to change a frametime to go outside the G-SYNC range!
Frame rate caps aren't perfect, they aim for an average. Also, frametime jitter can occur from other causes (e.g. background processing, background software, etc).
Frame rate caps built-in into games, need to be modified to be more VRR-friendly. One can use RTSS instead (microsecond accurate frame rate cap), but in-game frame rate caps are quite inaccurate.
Fixing more of tearing, sometimes requires margin below Hz, e.g. 230fps cap at 240Hz, instead of 237fps at 240Hz, and/or using GSYNC + VSYNC ON. The latency penalty of slightly delaying a bottom-edge tearline is pretty small. (In a Custom Resolution Utility, a 600,000Hz horizontal refresh rate = 600KHz scan rate = 600,000 pixels rows per second -- means moving a tearline downwards 1 pixel would cost only a 1/600,000th of a second penalty. Tearing is relative to the cable scanout, since pixel rows are delivered one pixel rows at a time, from top to bottom, at constant rate, So if a tearline is 20 pixels off the bottom edge off the bottom edge of the screen, it's only a 20/600,000th latency penalty to push that tearline off the bottom edge of the screen). If most of your tearing (from an imperfect frame rate capper) is hovering only close to very bottom edge, then turning GSYNC+VSYNC ON has practically no penalty compared to GSYNC+VSYNC OFF.