Networked input lag

Everything about latency. Tips, testing methods, mouse lag, display lag, game engine lag, network lag, whole input lag chain, VSYNC OFF vs VSYNC ON, and more! Input Lag Articles on Blur Busters.
Post Reply
silikone
Posts: 57
Joined: 02 Aug 2014, 12:27

Networked input lag

Post by silikone » 24 Nov 2018, 13:16

So the focus here is mostly on the issues surrounding displays and graphics hardware, but I miss seeing some more thorough documentation and explanation of how networked gaming affects the overall pipeline.
Now, the tried methods of measuring input lag are probably not going to be affected by networking, as game clients more or less simulate actions ahead of the server. The caveat of using client-side prediction is that it is bound to falter, which for a player can feel jarring as the game suddenly exhibits signs of lag that were otherwise not evident. How much a game can or should predict from the client is really a philosophical question without any correct solutions.
The aspect I find more promise in addressing is the packet/tick rate that is often notoriously low. Thanks to interpolation, multiplayer games can have the appearance of being smooth with as little as 10Hz. Analogous to video frame rate, the higher the packet rate, the lower the potential lag becomes. Ideally, a game server would send packets at the same rate as the client update rate just at the right time for them to arrive immediately before the beginning of a client game cycle.
I did some testing of my own in Quake on a LAN, as it allows for a lot of fine-tuning to test network performance. Setting everything to update at 60Hz, the game becomes pleasantly responsive on a client in spite of there being no client-side prediction. Disabling interpolation further increased the responsiveness, but it also exposed drifting that manifested as a jump or stutter at a regular interval. In this case, had there been a way to synchronize the frame rate with the server's tick rate, the experience would be flawless.
Of course, this becomes much more of a challenge across the internet, as ping times can become very volatile and almost impossible to synchronize.

User avatar
jorimt
Posts: 2484
Joined: 04 Nov 2016, 10:44
Location: USA

Re: Networked input lag

Post by jorimt » 24 Nov 2018, 14:03

Not my realm, but Battle(non)sense posted an article on Blur Busters about this subject:
https://www.blurbusters.com/network-lag/

His YouTube channel covers this subject in-depth as well:
https://www.youtube.com/c/battlenonsense
(jorimt: /jor-uhm-tee/)
Author: Blur Busters "G-SYNC 101" Series

Displays: ASUS PG27AQN, LG 48CX VR: Beyond, Quest 3, Reverb G2, Index OS: Windows 11 Pro Case: Fractal Design Torrent PSU: Seasonic PRIME TX-1000 MB: ASUS Z790 Hero CPU: Intel i9-13900k w/Noctua NH-U12A GPU: GIGABYTE RTX 4090 GAMING OC RAM: 32GB G.SKILL Trident Z5 DDR5 6400MHz CL32 SSDs: 2TB WD_BLACK SN850 (OS), 4TB WD_BLACK SN850X (Games) Keyboards: Wooting 60HE, Logitech G915 TKL Mice: Razer Viper Mini SE, Razer Viper 8kHz Sound: Creative Sound Blaster Katana V2 (speakers/amp/DAC), AFUL Performer 8 (IEMs)

User avatar
Chief Blur Buster
Site Admin
Posts: 11653
Joined: 05 Dec 2013, 15:44
Location: Toronto / Hamilton, Ontario, Canada
Contact:

Re: Networked input lag

Post by Chief Blur Buster » 24 Nov 2018, 16:24

Yep, Battle(non)sense is a great go-to for the network lag stuff!
On the other thing you mentioned -- tick rate synchronized to refresh rate.

<THOUGHT EXERCISE>

Synchronizing tick rates to refresh rates is also a challenge even if everyone is using exactly the same 144Hz or such.

There's a bit of clock drift between two separate PCs, that one computer is running at 144.003Hz and the other computer is running at 143.998Hz -- even though they're using exactly the same hardware, software, drivers, and running at the same temperature, etc.

Just like when you purchase two wristwatches, they never stay in sync forever -- they'll drift seconds apart over the period of a several days without synchronization. So you can't sync two ends, if they're fixed-Hz displays.

Now... VRR displays can provide a solution though, since refresh cycles are commanded via software whenever framerates are within the VRR range. So by this vein, it's possible to synchronize VRR displays to the software tick rate exactly on both ends. It'd even work if one end is G-SYNC and the other end is FreeSync! I wonder if any game developers have tried.

Hmmmm. We need VRR 240Hz displays overclockable to a little beyond >256Hz, so we can test 256Hz with CS:GO, synchronized to a multiple of the tick rate!

</THOUGHT EXERCISE>
Head of Blur Busters - BlurBusters.com | TestUFO.com | Follow @BlurBusters on Twitter

Image
Forum Rules wrote:  1. Rule #1: Be Nice. This is published forum rule #1. Even To Newbies & People You Disagree With!
  2. Please report rule violations If you see a post that violates forum rules, then report the post.
  3. ALWAYS respect indie testers here. See how indies are bootstrapping Blur Busters research!

Post Reply