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/App; labeled “Max Frame Rate,” which 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 Profile 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.



3893 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
Robi
Member
Robi

Hey Jorimt, i did some testing again and found that in Cyberpunk2077 Frame Gen increases your latency in less gpu demanding areas, what do you know about this?

Here is my testings:

Question: Does DLSS Frame Generation increase PC Latency when GPU utilization decreases? (Cyberpunk 2077)

My settings:

– DLSS Super Resolution: Quality Transformer Model 2
– DLSS Frame Generation: 2×
– FPS cap: 157 RTSS (Async)
– NVIDIA Reflex: enabled (By default when FG)
– G-SYNC and V-Sync (NCP) configured correctly
– All graphics max + Path Tracing

My observations:

– In demanding areas, NVIDIA overlay PC Latency is around 35 ms.
– In less demanding areas, PC Latency rises to around 55 ms, despite lower GPU utilization.
– With Frame Generation disabled, I get around 100 FPS and 26 ms average latency.
– Interestingly, switching to DLAA while keeping Frame Generation enabled increases GPU utilization and reduces latency again but only in the less gpu demanding area.

I’ve repeated these tests, and I can feel the difference in responsiveness, I play lots of FPS games and I can physically feel the difference between 35ms and 55ms this is not a margin of error from Nvidia Overlay LAT.

Has anyone observed Frame Generation causing higher latency at lower GPU utilization?

wbotter
Member
wbotter

Hey! Wondering if V-Sync is applicable to Gsync Pulsar monitors? I just got one, went from PG27AQDM to the XG27AQNGV after receiving not one but TWO defective PG27AQWP-W’s!!! After the second AQWP-W started intermittently dropping signal due to the UHBR-20 handshake failing, works flawlessly in UHBR-13.5 with DSC, but for a $1250 monitor, I’d expect it to work as intended. So, I ultimately gave up on the flagship and was just searching for 27″ or less 1440p monitors over the 240hz my AQDM was already giving me, and the Gsync pulsar caught my eye. I had a BenQ Zowie with DyAc+ a few years ago and loved it, so yeah the curiosity got me with this monitor. I currently have a 9800x3d, cl 28 32gb 6000mhz, and a 5070. (Yes, Ik my gpu is hardcore limiting my FPS). I play competitive games mostly, in “comp settings” (basically low everything), DLSS Quality or Balanced using Model K, and I’ll get 384fps peaks, 271 avg, 202 1% lows and an average PCL of 10. All captured using frameview in marvel rivals after many many many “change one setting,” *capture for 45min-1hr of gameplay,* did this increase or decrease performance? lol! (All without DLSS FG. I’m not opposed to DLSS FG 2x, but 3x and above my PCL climbs quite a bit.)

Anyways, got any advice to get the most out of the GSYNC Pulsar Monitors? Or same rules apply? Thanks!!

user2422
Member
user2422

In an earlier comment you mentioned that ULLM is somewhat inefficient compared to Reflex or a manual limit, if i were to use Gsync + Vsync + ULLM, would that starving of the max queued frames and the potential stutters that come with it even apply considering that ULLM is auto limiting the fps in this configuration? Like does it limit low enough to prevent this from even happening?

Also when using Gsync + Vsync and then only enabling ULLM via Inspector without setting max pre-rendered frames to 1 (which ULLM would’ve otherwise done if it was applied via NVCP or NVApp), would this then be just an auto limiter without the other effects of ULLM? I’ve tried this configuration in-game and the auto limit still applies but I’m unsure whether or not ULLM will have any other impact in this configuration.

eonjr
Member
eonjr

Hi, thank you for the guides! But I have something to ask. My laptop has a 300hz refresh rate that is also GSync compatible. I have it capped at 285 using a formula that I saw on a Reddit post a while ago (via NVIDIA APP > Max Frame Rate).

I unfortunately get this gray flickering during gaming but I can get used to it. However, what I cannot stand is, when I tried using editing software (like Adobe Premiere Pro), the flickering was also present despite me having turned off GSync specifically for that app (via NVIDIA App). Is there something I am doing wrong? What can be done to completely eliminate flickering for non-game apps?

HagenKL
Member
HagenKL

Hey, the article talks about GSync with the Module. Is the Behaviour the same for GSync Compatible (aka Freesync monitors?)

wpDiscuz