G-SYNC 101: G-SYNC vs. V-SYNC w/FPS Limit


So Close, Yet So Far Apart

On the subject of single, tear-free frame delivery, how does standalone double buffer V-SYNC compare to G-SYNC with the same framerate limit?

Blur Buster's G-SYNC 101: Input Latency & Optimal Settings
Blur Buster's G-SYNC 101: Input Latency & Optimal Settings
Blur Buster's G-SYNC 101: Input Latency & Optimal Settings
Blur Buster's G-SYNC 101: Input Latency & Optimal Settings
Blur Buster's G-SYNC 101: Input Latency & Optimal Settings
Blur Buster's G-SYNC 101: Input Latency & Optimal Settings

As the results show, but for 60Hz (remember, a “frame” of delay is relative to the refresh rate), the numbers are relatively close. So what’s so great about G-SYNC’s ability to adjust the refresh rate to the framerate, if the majority of added input latency with V-SYNC can be eliminated with a simple FPS limit? Well, as the title of this section hints, it’s not quite that cut and dry…

While it’s common knowledge that limiting the FPS below the refresh rate with V-SYNC prevents the over-queuing of frames, and thus majority of added input latency, it isn’t without its downsides.

Unlike G-SYNC, V-SYNC must attempt to time frame delivery to the fixed refresh rate of the display. If it misses a single one of these delivery windows below the maximum refresh rate, the current frame must repeat once until the next frame can be displayed, locking the framerate to half the refresh rate, causing stutter. If the framerate exceeds the maximum refresh rate, the display can’t keep up with frame output, as rendered frames over-queue in both buffers, and appearance of frames is delayed yet again, which is why an FPS limit is needed to prevent this in the first place.

When an FPS limit is set with V-SYNC, the times it can deliver frames per second is shrunk. If, for instance, the FPS limiter is set to 59 fps on a 60Hz display, instead of 60 frames being delivered per second, only 59 will be delivered, which means roughly every second a frame will repeat.

As the numbers show, while G-SYNC and V-SYNC averages are close over a period of frames, evident by the maximums, it eventually adds up, causing 1/2 to 1 frame of accumulative delay, as well as recurring stutter due to repeated frames. This is why it is recommended to set a V-SYNC FPS limit mere decimals below the refresh rate via external programs such as RTSS.

That said, an FPS limit is superior to no FPS limit with double buffer V-SYNC, so long as the framerate can be sustained above the refresh rate at all times. However, G-SYNC’s ability to adjust the refresh rate to the framerate eliminates this issue entirely, and, yet again, beats V-SYNC hands down.



3061 Comments For “G-SYNC 101”

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Sort by:   newest | oldest | most liked
toby23
Member
toby23

If I have a 120 Hz monitor with G-Sync and can achieve 115fps average in a game, is there any negative to locking the framerate to 59fps with RTSS to lower power consumption and smooth out Frametime?
Running unlocked in MSFS results in the Frametime jumping around all over the place but locking to 59 fps makes it steady.

PS Super article, thank you so much for keeping it updated.

Ryan Le
Member
Ryan Le

In Sea of Thieves, I have V-Sync turned off, but there is also an option to set the buffering to either double or triple, and there’s no off option. I set it to double buffering, but do I still need to enable V-Sync in NVCP? Would the in-game double buffering option (with in-game V-Sync off) conflict with NVCP V-Sync since it’s also running on double buffering?

Sequinoz
Member
Sequinoz

Hi Jorimt. A bit of a long comment here so I hope you don’t mind. Recently I bought a new G-Sync monitor (XG321UG) and noticed a peculiar G-Sync behaviour but I’m unsure if it’s abnormal or not.

To reproduce the behaviour, I ran the G-Sync Pendulum Demo application and manually changed the FPS from 60 to 50. The expected behaviour is a seamless framerate change with no noticeable stutter.

Instead, I noticed a ~0.2 seconds of continuous stutter from the moment the FPS changed from 60 to 50. It’s almost as if the G-Sync module tries to “catch up” to the sudden change in FPS.

Changing from 60 to 55 did not seem to show the problem much (if at all) and changing from 50 to 60 showed more of a one-time frame “jump”. Setting the FPS to gradually change back and forth between 60 and 40 seems to also be normal. Notably, the problem is less noticeable at higher FPS.

I tried testing my old G-Sync monitor (PG27AQ) and changing the FPS from 60 to 50 only seemed to show one stutter/frame jump but was less noticeable and did not stutter for as long as ~0.2 seconds.

I’m wondering if the symptom I’m seeing on my new monitor is normal or if it’s an indication that the G-Sync module is faulty.

As a side note: I also turned on the display’s built-in refresh rate counter and whenever I change FPS from 60 to 50, the refresh rate would go 60 > 49 > 43 > 49 > 50. Changing FPS from 60 to 55 instead showed 60 > 56 > 53 > 55. I’m unsure though if the built-in refresh rate counter is 100% accurate.

Perhaps the dips below the targeted FPS is the reason for the 0.2 secs stutter, which is more noticeable at lower targeted FPS and higher change in FPS. Again, I’m not fully sure about this and would like to know what you think.

Some more info that might be helpful~
GPU: RTX 3090
Driver Version: 551.46
Connection: DisplayPort (tried both cables that came with the old and new monitor but no difference)
Resolution: 3840 x 2160 Native
Refresh Rate: 144Hz Native
G-Sync Mode: On and Fullscreen Only. I heard the Pendulum Demo test overrides the G-Sync setting, in which case only the G-Sync option was used.

Indignified
Member
Indignified

Hello, why do pro players for fps games use uncapped fps instead of these settings? Are there any benefits to using uncapped fps?

Pyerimi
Guest
Pyerimi

Also I wanted to ask about what to do in case if ingame FPS limiter has bad implementation and introduce microstuttering like in this case: https://www.reddit.com/r/horizon/comments/i5p6io/pc_psa_do_not_use_the_ingame_fps_limiter_use_rtss/

Should I still use ingame option or RTSS?

wpDiscuz