G-SYNC 101: In-game vs. External FPS Limiters


Closer to the Source

Up until this point, an in-game framerate limiter has been used exclusively to test FPS-limited scenarios. However, in-game framerate limiters aren’t available in every game, and while they aren’t required for games where the framerate can’t meet or exceed the maximum refresh rate, if the system can sustain the framerate above the refresh rate, and a said option isn’t present, an external framerate limiter must be used to prevent V-SYNC-level input lag instead.

In-game framerate limiters, being at the game’s engine-level, are almost always free of additional latency, as they can regulate frames at the source. External framerate limiters, on the other hand, must intercept frames further down the rendering chain, which can result in delayed frame delivery and additional input latency; how much depends on the limiter and its implementation.

RTSS is a CPU-level FPS limiter, which is the closest an external method can get to the engine-level of an in-game limiter. In my initial input lag tests on my original thread, RTSS appeared to introduce no additional delay when used with G-SYNC. However, it was later discovered disabling CS:GO’s “Multicore Rendering” setting, which runs the game on a single CPU-core, caused the discrepancy, and once enabled, RTSS introduced the expected 1 frame of delay.

Seeing as the CS:GO still uses DX9, and is a native single-core performer, I opted to test the more modern “Overwatch” this time around, which uses DX11, and features native multi-threaded/multi-core support. Will RTSS behave the same way in a native multi-core game?

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

Yes, RTSS still introduces up to 1 frame of delay, regardless of the syncing method, or lack thereof, used. To prove that a -2 FPS limit was enough to avoid the G-SYNC ceiling, a -10 FPS limit was tested with no improvement. The V-SYNC scenario also shows RTSS delay stacks with other types of delay, retaining the FPS-limited V-SYNC’s 1/2 to 1 frame of accumulative delay.

Next up is Nvidia’s FPS limiter, which can be accessed via the third-party “Nvidia Inspector.” Unlike RTSS, it is a driver-level limiter, one further step removed from engine-level. My original tests showed the Nvidia limiter introduced 2 frames of delay across V-SYNC OFF, V-SYNC, and G-SYNC scenarios.

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

Yet again, the results for V-SYNC and V-SYNC OFF (“Use the 3D application setting” + in-game V-SYNC disabled) show standard, out-of-the-box usage of both Nvidia’s v1 and v2 FPS limiter introduce the expected 2 frames of delay. The limiter’s impact on G-SYNC appears to be particularly unforgiving, with a 2 to 3 1/2 frame delay due to an increase in maximums at -2 FPS compared to -10 FPS, meaning -2 FPS with this limiter may not be enough to keep it below the G-SYNC ceiling at all times, and it might be worsened by the Nvidia limiter’s own frame pacing behavior’s effect on G-SYNC functionality.

Needless to say, even if an in-game framerate limiter isn’t available, RTSS only introduces up to 1 frame of delay, which is still preferable to the 2+ frame delay added by Nvidia’s limiter with G-SYNC enabled, and a far superior alternative to the 2-6 frame delay added by uncapped G-SYNC.



658 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
Zehdah
Member
Zehdah

I know that for the lowest possible input lag, you want to find the highest framerate your system can achieve an average of 95-99% of the time without maxing your GPU usage and cap your framerate there with an in game limiter, but what do I do to achieve that in a game like Warzone where my FPS can be as low as 140 in big open areas or as high as 240 when inside a building or small area?

My CPU and GPU usage always seem to be very high at 85-97%. I have an i7 9700k and 1080ti, playing on a 240hz monitor. The game seems to be poorly optimized so I’m struggling to decide what to do.

fanatycme
Member
fanatycme

When I play DOTA 2, my fps is all the time at ~117 because i capped it, but at the end of the game, when match finishes the base gets destroyed and i get a FPS DROP from ~117 fps to 80-90 fps and my game STUTTERS, is it normal? i am playing with g sync, vsync and fps cap, i thought gsync is supposed to GET RID of stutter or I do SOMETHING WRONG?? during the rest of the game everything seems ok

i am using:
-nvcp: gsync on fullscreen, highest refresh rate, vsync let 3d app decide
-dota2: vsync on, fps max 117 (120hz monitor), highest video settings
-latest drivers, gtx 1070, monitor aw3418dw

AnonymousH
Member
AnonymousH

I typically prioritize input latency and thus normally run with G-SYNC but without any framerate limit or V-Sync, which causes some tearing at high framerates. I initially thought that Fast Sync eliminates tearing but introduces some microstutter, and that was all, making it a viable option in combination with G-SYNC, and the rest depends on preference (with G-SYNC: none = tearing, V-Sync + framerate limit = higher latency, Fast Sync = microstutter). However, if I’m reading this correctly, even G-SYNC + Fast Sync without a frame limit isn’t recommended because it limits the framerate to something lower than the monitor refresh rate, or runs starting at that slightly lower framerate?

gzmm
Member
gzmm

Is there a way to fix the brightness flickering while g-sync is on?
happens in load screens or when the game are loading something.

hramulka
Member
hramulka

Hello! I would like to ask how to configure ULMB correctly??? I have ULMB Pulse Width in my monitor , it can be changed from 0 to 100. That ‘s how much you need to bet??? It works at 120 Hz. I set up the monitor itself using your advice, limited it to 119989 Hz,Scanline sync -60, and set the fast synchronization ,Low latency mode On. the game consistently holds 120 FPS

wpDiscuz