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


Closer to the Source*

*As of Nvidia driver version 441.87, Nvidia has made an official framerate limiting method available in the NVCP; labeled “Max Frame Rate,” it is a CPU-level FPS limiter, and as such, is comparable to the RTSS framerate limiter in both frametime performance and added delay. The Nvidia framerate limiting solutions tested below are legacy, and their results do not apply to the “Max Frame Rate” limiter.

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.



1462 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
BlackStorm82
Member
BlackStorm82

240Hz / GSYNC ON / 60FPS
240HZ / GSYNC OFF / 60FPS

Which is better in response time? Which one is better for blur?
G-Sync’s variable refresh rate function Does the screen response speed also affect it?

swaz
Member
swaz

Hi,
NVIDIA recently introduced a new “Max Frame Rate” setting in its Control Panel.
So I’m wondering if that uses the same FPS limiter tested via “Nvidia Inspector” on page 11.
If that’s not the case, when an in-game framerate limiter isn’t available, should I use RTSS or this new setting?
Thanks in advance.

DrGoku4star
Member
DrGoku4star

I’ve noticed more and more game now are ditching “Fullscreen exclusive” mode now such as Wow (World of warcraft) and Cod (Call of Duty) cold war and Rust.

One way i verify this is buy moving the volume scroll on my keyboard, and if i see the windows volume overlay appear in game, it’s not full screen exclusive?

Anyway, my main question is, with what i just said in mind, isn’t it better to leave The “Full screen optimizations” box ticked now? So that the DWM bypasses triple buffed v-sync?

Talos-LXIX
Member
Talos-LXIX

Hello there!
First i just want to say thank you so much for all the amazing work you guys do. in-depth analysis and guides like this are really helpful.

I just have a few things that I’m not entirely sure about.

1) You’ve found that G-SYNC completely bypasses the 1 frame of delay add by DWM in windowed/borderless. is that only the case if you’re within the G-SYNC range with V-SYNC enabled? could you still bypass it if you ran G-SYNC with V-SYNC off while being over your monitors refresh rate?

2) is G-SYNC+ V-SYNC off with fps over the monitors refresh rate identical to G-SYNC off + V-SYNC off?
For some reason some games (Apex Legends for example) lock their fps to my monitors refresh rate (120) when i try to disable G-SYNC via the per program settings on the NVCP.
I typically like to disable it for competitive FPS games as i can get much higher FPS than 120.

Hiram
Member
Hiram

Hello, I have read a lot, but I have a question.
In my case I play Fortnite, and if I limit the fps to 144 in the game and in the NVCP the screen tearing is not very noticeable, but it happens, otherwise if I play at limited 120 fps the screen tearing is much more noticeable, ( also putting 120hz in the NVCP).
Of course, my fps are not very stable when I get into a fight, they drop from 120 to 100 or a little less.
My question is, do I have to have V-sync activated?
I hope you can answer me

wpDiscuz