cancel
Showing results for 
Search instead for 
Did you mean: 
letorts
Stadia Player
Stadia Player

How can I reduce latency in every way from click to display?

various latency forms from a video on the stadia YT channelvarious latency forms from a video on the stadia YT channelSome bits of information about different latency reasons. Credits: GDC 2019 Developer Session: Gaming in the Cloud - A Technical Deep Dive (start at 8:05 minutes :slightly_smiling_face: )

 

 

Hello!

 

I don't know if this topic was already answered before. So I will start the conversation if not.

The focus of this post is to ask questions on how to optimise input to screen latency through hardware and software concerning my configuration, but I hope the answers (if there are) could benefit others! Indeed I had a hard time founding some answers so I am counting on your help! :slightly_smiling_face:

 

To start of, here is basically my configuration: (don't hesitate to ask for more)

Computer :

Software side

Windows Family Unique language pack: 64 bit , fully updated as always ONLY via Windows Update. It means that I don't force updates like the last one, codename 20H2. So I am still on 2004 with all updates installed, even the facultative one. Only facultative drivers are neglected. I like to take care of them by myself.

My drivers are overall up to date.

Bios is updated.

Chrome is updated to! No change to the flags has been made.

For the graphics I am using Geforce Experience to update the drivers, which I install from scratch every time there is a update to ensure default configuration.

My antivirus is no other that the Microsoft Defender Antivirus!

Last but not least, the router is fully up to date (4.2.5)

… I hope it is enough details

 

Hardware (only the parts that I think have a role to play in latency) :

A Geforce 1070 Founders Edition, with VP9 material acceleration supported according to my research.

I don’t know if it’s helping but my processor is old: i7-4820K

And a Realtek ethernet card, which I can't determine the product name...

 

Peripherals :

Mouse at 1000Hz refresh rate, so 1 ms added latency

Same for my Keyboard

 

Network technology:

I am using a PON fiber technology with bandwidth of 1Gb/s up, and 700Mb/s up.

My Internet provider will improve the underlying technology and upgrade it to 10G-EPON in the coming months.

 

The ISP Router:

The particular downside of this router is that it doesn’t have QoS prioritization. That could have been particularly useful for prioritizing Stadia when needed.

When the 10G-EPON will be enabled by the ISP, the 10Gb/s will solely be enabled by a SFP+ port on the router.

 

Overall Network Latency results:

I already have a very good ping in a lot of the various tests I am running. Unfortunately I am not able to see how my connection specifically works with the stadia servers I am running on when playing. The ping results I have on the measurement lab are around 2ms latency with a jitter of 2 ms approximately (through nperf). The retransmission rate is not always very stable but right now it’s around 0.29 %, even though it is usually much less, something like 0.01% (By the way if someone could tell me if those are good numbers).

And I do not know if I am using IPV6 with Stadia.

 

Some context:

“I am a stadia pro user since April the 11th, and I am very very pleased with it. But what’s most appealing to me is that it’s a real cloud gaming vision not alike letting an Xbox in a server make the Job. While on the other side Google promises to rethink gaming through cloud gaming and all the benefits it can offer: native latency, dynamic resources for games, regularly hardware updates, etc,..."

 

So that’s why I am asking all those questions in this post, those are important to me, because I care about Stadia and count on using it for every game I'll play and I would like to have the best experience possible!

 

Now that you know my current configuration, I would like to know how to improve the latency in every possible way.

PC's network

I clearly know it would be complicated to have better results on this side of the problem. Even though I am still trying to improve some parts; meaning the quality (overall stability, jitter, and retransmission rate)

Here are my current questions on the networking side:

  • I could use SFP+ between my pc and the router instead of the classic ethernet option I am already using. I read an article suggesting it could be a good idea even though the improvement would be relatively small. Is it true?
  • On the router side I am using the ISP router (Freebox Delta)  which seems to be an excellent choice. If a forum member is french I am very curious about advice on this side.

I tried to use my Google wifi to override the router which then was in Bridge mode. But I had some difficulties, because I heavily rely on ethernet ports, and Google wifi has only one output ethernet port. So the configuration wasn’t optimal. Modem (ISP)-> google wifi-> then switch -> and finally the ethernet card.

  • And I would like to know if changing my ethernet card could be a good idea? I thought of one of the intel network cards selection which would support either SFP+ or classic ethernet depending on your advices. I also was interested by Killer Networking, but there seems to be controversies around that product line. What do you think?
  • Have you got other ideas on the networking side?


Graphics

Then comes the graphical part… In fact at the moment the information is in the computer how is it possible to set the computer to be on a certain mode to deliver information in the most latency free way?

  • I understood my graphic card has parameters to reduce latency but it seems pretty complex. Have you any advice on which parameters I should change?. 
  • Then I read that we have to support VP9 material decoding when using the 4K mode. Which is my case. But a PowerPoint slide from a Google person pointed out the fact that AV1 would come to Stadia. And how will it work in this case if I can't decode materially, wilI I have to suffer lesser quality and latency?

 

Cables between Graphics card and the monitor

Then comes the connection cables between the graphics card and the monitor used and therefore the standards used to transmit information:

  • I viewed in the video shared on the top of the post, a developer of a stadia team pointing out the latency added to transport information from the graphics card to the screen. Which can be pretty big. (16-33 ms on HDMI) Do you know if there is a difference on how reactive a certain standard is? I am actually on DisplayPort due to Gsync obligations. But GSync is not my priority anymore because of Stadia. So I could change the type of cable I am using if one or the other is more efficient!

 

The screen

  • I have read that a lot of screens now support ULLM to decrease latency. Do you think it is really impactful? And if it is the case, do you know how efficient it could be in terms of ms gained versus a monitor without this mode?

 

The software side

  • Is there a trick to accelerate decoding and rendering through the system or graphic card parameters? Or to prioritize all the system on stadia a bit like game mode does on native games?
  • When installing a card like those of Intel or Killer are the configuration changes made by those drivers effective, and not dangerous for the security or the performance of the computer?
  • And finally is there a way to optimize the OS parameters for cloud computing?



To resume:

I really think there is ways to optimize “input to display” latency but i don’t really know how to do! 

The quantity of information online is immense, but having an opinion on every aspect is complicated. 

I hope I am not the only one scratching his head on those questions...

I hope maybe one day we will have a Google TV optimized for Stadia (with official mouse and keyboard support, and ethernet obviously) so we could rely on Google to do the optimisations. Because having to deal with all these parts is very Knowledge intensive.

I hope you guys have some clues. And if this discussion could reveal some good practices, ideas,... maybe it would help other people wanting to optimise their entire setup, from the mice through the cloud, and finally to our screens.

What would be even more fantastic, is a google help page on this subject, or a software to install, evaluating which components could be changed, or if there are parameters of windows/hardware it could itself optimise.

I hope I will get some answers to improve my already very good functioning configuration!

Have a nice day! And thank you for reading! Don’t hesitate to react!

Letorts
1 Kudo
2 Replies
Grovelhog
Founder
Founder

What problems are you getting with latency?

0 Kudos
JohnZoidberg
Gold Stadia Guide
Gold Stadia Guide

The vast majority of delay in most streaming systems comes from network queueing (not propagation delay). The time those packets spend waiting to be transmitted on the next link in the chain of routers is the biggest variable. So, if you want to optimize for latency, then focus on your network. Your ISP has a huge impact on this, though, too, and there isn't much you can do about that. Google works with many ISPs to get direct connections deep inside their networks to avoid as many of those routers as possible. But, not all ISPs have that in place. Google also deploys resources in large shared data centers (i.e., that they don't own themselves), which helps even the ISPs that don't have direct links to Google. The network affects both the input and output sides of the equation, and is why using the Stadia controller over WiFi helps, and why using wired USB peripherals on a PC is recommended (or at least not using Bluetooth).

The second biggest delay is in a TV that has any kind of inter-frame video processing. Things like motion smoothing (which adds extra frames) requires buffering a frame that just came in long enough to compare it with the next frame, and then creating and displaying interpolated frames at a higher frame rate. It may even buffer multiple frames before displaying them to apply more sophisticated processing. This can add substantial delay, and is what "game mode" on a TV is for (personally, I hate that processing for all video sources, so I don't have it enabled at all).

Keep in mind your reaction time is probably around 160 to 200 milliseconds. So, minor improvements aren't going to be perceptible unless you stack a whole lot of them up.

Why not Zoidberg?
1 Kudo