G-SYNC 101: Control Panel


G-SYNC Module

The G-SYNC module is a small chip that replaces the display’s standard internal scaler, and contains enough onboard memory to hold and process a single frame at a time.

The module exploits the vertical blanking interval (the span between the previous and next frame scan) to manipulate the display’s internal timings; performing G2G (gray to gray) overdrive calculations to prevent ghosting, and synchronizing the display’s refresh rate to the GPU’s render rate to eliminate tearing, along with the delayed frame delivery and adjoining stutter caused by traditional syncing methods.

G-SYNC Demo

The below Blur Busters Test UFO motion test pattern uses motion interpolation techniques to simulate the seamless framerate transitions G-SYNC provides within the refresh rate, when directly compared to standalone V-SYNC.

G-SYNC Activation

“Enable for full screen mode” (exclusive fullscreen functionality only) will automatically engage when a supported display is connected to the GPU. If G-SYNC behavior is suspect or non-functioning, untick the “Enable G-SYNC, G-SYNC Compatible” box, apply, re-tick, and apply.

Blur Buster's G-SYNC 101: Control Panel

G-SYNC Windowed Mode

“Enable for windowed and full screen mode” allows G-SYNC support for windowed and borderless windowed mode. This option was introduced in a 2015 driver update, and by manipulating the DWM (Desktop Windows Manager) framebuffer, enables G-SYNC’s VRR (variable refresh rate) to synchronize to the focused window’s render rate; unfocused windows remain at the desktop’s fixed refresh rate until focused on.

G-SYNC only functions on one window at a time, and thus any unfocused window that contains moving content will appear to stutter or slow down, a reason why a variety of non-gaming applications (popular web browsers among them) include predefined Nvidia profiles that disable G-SYNC support.

Note: this setting may require a game or system restart after application; the “G-SYNC Indicator” (Nvidia Control Panel > Display > G-SYNC Indicator) can be enabled to verify it is working as intended.

G-SYNC Preferred Refresh Rate

“Highest available” automatically engages when G-SYNC is enabled, and overrides the in-game refresh rate selector (if present), defaulting to the highest supported refresh rate of the display. This is useful for games that don’t include a selector, and ensures the display’s native refresh rate is utilized.

“Application-controlled” adheres to the desktop’s current refresh rate, or defers control to games that contain a refresh rate selector.

Note: this setting only applies to games being run in exclusive fullscreen mode. For games being run in borderless or windowed mode, the desktop dictates the refresh rate.

G-SYNC & V-SYNC

G-SYNC (GPU Synchronization) works on the same principle as double buffer V-SYNC; buffer A begins to render frame A, and upon completion, scans it to the display. Meanwhile, as buffer A finishes scanning its first frame, buffer B begins to render frame B, and upon completion, scans it to the display, repeat.

The primary difference between G-SYNC and V-SYNC is the method in which rendered frames are synchronized. With V-SYNC, the GPU’s render rate is synchronized to the fixed refresh rate of the display. With G-SYNC, the display’s VRR (variable refresh rate) is synchronized to the GPU’s render rate.

Upon its release, G-SYNC’s ability to fall back on fixed refresh rate V-SYNC behavior when exceeding the maximum refresh rate of the display was built-in and non-optional. A 2015 driver update later exposed the option.

This update led to recurring confusion, creating a misconception that G-SYNC and V-SYNC are entirely separate options. However, with G-SYNC enabled, the “Vertical sync” option in the control panel no longer acts as V-SYNC, and actually dictates whether, one, the G-SYNC module compensates for frametime variances output by the system (which prevents tearing at all times. G-SYNC + V-SYNC “Off” disables this behavior; see G-SYNC 101: Range), and two, whether G-SYNC falls back on fixed refresh rate V-SYNC behavior; if V-SYNC is “On,” G-SYNC will revert to V-SYNC behavior above its range, if V-SYNC is “Off,” G-SYNC will disable above its range, and tearing will begin display wide.

Within its range, G-SYNC is the only syncing method active, no matter the V-SYNC “On” or “Off” setting.

Currently, when G-SYNC is enabled, the control panel’s “Vertical sync” entry is automatically engaged to “Use the 3D application setting,” which defers V-SYNC fallback behavior and frametime compensation control to the in-game V-SYNC option. This can be manually overridden by changing the “Vertical sync” entry in the control panel to “Off,” “On,” or “Fast.”



3098 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
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?

Pyerimi
Guest
Pyerimi

Hello, thank you for comprehensive guide.
I have three questions. I am using AMD card and freesync premium monitor. I setup V-Sync in driver for every game and lock FPS ingame if there is an option to do so, if not RTSS.

1) Counter-Stike 2 has its own limiter in console, ex: “fps_max 141”. It limits fps, but frametime isn’t as perfect as it is when using RTSS which makes it buttery smooth. The FPS itself stays at 141.
In amd software I turn V-Sync for this game and disable it ingame, and limit fps as I mentioned above ingame.
The question is, is this horrible frametime graph considered a problem when using freesync or it isn’t noticiable while under freesync conditions?
Should I use RTSS and unlock framerate ingame instead?

2) There are games where the option to manually configure FPS value to a precise number is absent.
Only presets, like 30\60\200 and so on. And there is no option to unlock FPS, only these presets.
What to do in this case to limit it to 141? If I set it to 141 in RTSS, will it conflict with the ingame limiter if I set it to lets say 200?
Should we set ingame limiter to max available value in this case and then lock it in RTSS?

3) In Forza Horizon 4 FreeSync seems to be not working, I disable ingame vsync and unlock fps, then limit it to 141 in RTSS and enable vsync in AMD driver, but FreeSync is not activating, I look at monitor OSD and I see 144 hz instead of variable 140-141.
However, AMD driver sets FreeSync option to “AMD optimized” for every game, this option is basically a blacklist for games where freesync allegedly known to be not working properly.
When setting this option to “On” freesync activates and seems to work, but according to my tests it introduces some stutters every now and then.
But the problem is, when I don’t use freesync for this game and set ingame options by default to vsync on and 144 fps preset, I don’t notice any latency added by vsync, meanwhile freesync is not working there.
The question is, could FH4 implementation of Vsync be latency-free and is there any need to force freesync there?

thiezek
Member
thiezek

Hello, good afternoon. Excellent post, I only had one doubt, using a configuration of GSYNC ON + NVCP VSYNC ON and the in-game fps limiter at 237 (I have a 240hz monitor). What should I use in the NVIDIA REFLEX? ON or ON+BOOST? Taking into account that I am already limiting my fps to 237 in-game.
Thanks!

wpDiscuz