Steam Streamingtechnik Grenzen/Machbarkeit

Nikflin

Lieutenant
Registriert
Mai 2008
Beiträge
574
Hallo Leute!
Mir wuselt etwas im Kopf herum und ich würde gerne eure Meinung dazu wissen. Ich beschäftige mich seit einiger Zeit mit dem Gedanken, was wäre wenn es eine eGPU gäbe, welche mit einem Netzwerkanschluss jeden Thin-Client in einem Netzwerk mit der notwendigen Power versorgen könnte um AAA-Titel spielen zu können.

Ich habe gerade jenen Beitrag von pcgamer.com gelesen (Link) bei dem Valves CEO Gabe Newell darüber spricht, dass er die SteamBox als einen Server sieht, bei denen bis zu 8 Monitore, mit jeweils einem Controller, zeitgleich von einer GPU angefeuert werden und da hat es mir die Kinnlade runter gehauen, denn genau das ist das was ich mir wünschen würde - praktisch ein Mini-Gaikai für zuhause.

Nunja, betrachten wir die heutigen Thin-Clients so sind das eigentliche Powerbiester in 1-Liter-Gehäuse. Man kann mühelos i7 Prozessoren der aktuellen Generation verbauen und 16GB RAM sind auch kein Thema, also ist der einzige Flaschenhals die Grafikkarte.

Jetzt stellt sich mir die Frage, welche Voraussetzung müsste es geben, damit man eine eGPU per LAN verwenden könnte? Dabei geht es mir jetzt nicht darum dass 8 Leute zeitgleich auf die Grafikkarte zugreifen, sondern das primär ein Gerät bei einer Distanz von sagen wir 30m Kabellänge in den Genuss von AAA-Titel in FullHD kommt, die sich so spielen wir auf einem Gamer-PC.

Mein Erster Gedanke geht in die Richtung Übertragungsgeschwindigkeit und da habe ich schon so meine Probleme. (Bitte korrigiert mich, wenn ich mich irre) Ausgehend von einem PCIe 3.0 x16 Grafikkartenslot, welcher mit 8,0 GT/s und einer Übertragungsrate von 15754 MB/s (15,7 GB/s), kann ich natürlich nicht sagen wieviel jetzt eine Grafikkarte davon tatsächlich nutzt, aber ausgehend von den vollen 80% "Raw-Speed" (Link), welche der Slot hergeben kann, sprechen wir hier von ~12,6 GB/s.
Im Forum gibt es einen tollen Beitrag über eGPUs, bei dem ich allerdings nichts über Netzwerkanschlüsse iVm. eGPUs finden konnte. Lediglich, dass Thunderbolt als die Schnittstelle schlecht hin angepriesen wird. Ausgehend von der Übertragungsgeschwindigkeit von 10Gbit/s (1,25 GB/s) und die scheinen was ich beim Skimmen der Beiträge bemerkt zu haben, ausreichend zu sein.

Nun mit LAN müsste man also auch theoretisch auf ein 10GbE Netzwerk setzen um einen Client befeuern zu können, oder scheitert es da schon bei meiner Logik? Zumindest seh ich ein großes Problem darin, nicht zu wissen wieviel eine Grafikkarte tatsächlich von der Leistung eines PCIe Slots nutzt. Ich persönlich glaube man würde viell. mit weniger auch auskommen, aber ich kann in keinsterweise abschätzen ob es noch andere Flaschenhälse gibt - Horizonterweiterungen erwünscht!

Ich selbst betreibe ein recht ungewöhnliches Konzept von einer Custom Steam-Machine die an meinem Wohnzimmer-TV angeschlossen ist, mit einer GF760 betrieben wird, aber ausschließlich mit einem Controller gesteuert wird. Für Spiele wo ich eine Maus benötige, streame ich zu meinem Arbeitsplatz PC und es lässt sich auch einigermaßen flüssig Counter-Strike damit spielen. Zumindest muss ich auf 720p die Auflösung herunter drehen, damit ich keine spürbaren Mouse-Lags habe und gelegentlich treten Artefakte auf. Ein ernsthafter Spieler würde mich auslachen *räusper*. Mir ging es primär um die Machbarkeit. :-)
 
Zuletzt bearbeitet: (Typo)
Jetzt stellt sich mir die Frage, welche Voraussetzung müsste es geben, damit man eine eGPU per LAN verwenden könnte?

Eine Netzwerktechnik die 16 GBytes/s übertragen kann. Nix lumpige 10Gbit/s.
Völliger Blödsinn was du hier schwafelst.
Eine Steambox bzw. Streaming funktioniert völlig anders: das Spiel wird komplett, CPU und GPU, auf der Steambox gerendert und der Viewport via Netzwerk übertragen. Das nennt sich Steam in House Streaming. Funktioniert auch einigermaßen bis auf die Latenz. Aber genau diese Latenz wäre bei einer eGPU noch viel schlimmer.
 
HominiLupus hat bereits alles gesagt, da spielen etliche Faktoren eine Rolle. Du müsstest hierzu mehr oder weniger den ganzen PCIe Bus über das Netzwerk laufen lassen. Mal abgesehen von der Bandbreite, ließ dir mal Tests zu Riser Kabel durch, da machen schlecht geschirmte schon Probleme. Du kannst also zur reinen Übertragung auch noch die Übersetzung in ein "fähiges" Signal dazu rechnen. Schlussfolgerung, geht (momentan) nicht und macht auch keinen Sinn nur die GPU auszulagern.
 
Ich denke das größte Problem bei so einer Lösung werden Latenzen sein. Das umsetzen der Signale die normalerweise über PCIe laufen auf ein Netzwerkprotokoll und wieder zurueck wird einige Zeit dauern.
Mit spezieller Hardware, die diesen Schritt einsparen kann, könnte ich es mir vorstellen, aber sicher nicht mit derzeit gängigen Produkten.
 
Ah, gut. Da hab ich tatsächlich viel komplizierter gedacht. Danke für die Antworten! Gut dann verwerfen wir mal den Gedanken mit der 1:1 Übertragung der Daten.

Okay, ausgehend von der Technik die Valve beim Streaming setzt stellt sich mir dann die Frage wo stecken die Hürden in der Umsetzung. Betreffend der Latenzen glaube ich nicht dass ein Netzwerk (LAN) mit 1GBit/s jetzt für die reine Übertragung der Bildinhalte sowie die Übertragung von Maus- u. Tastatureingaben zu wenig wären. Scheitert es letzten Endes an dem TCP/IP Protokoll? ... oder nimmt die Konvertierung des Bildmaterials zu viel in Anspruch?

Im Übrigen, wie glaubt Valve überhaupt dass eine Steambox als Server 8 Geräte bedienen könnte? Vom heutigen Standpunkt aus ist dies doch gar nicht umsetzbar. Ich könnte zwar jetzt zwei Spiele im WindowMode starten aber 8!?
 
Zuletzt bearbeitet:
Nikflin schrieb:
Okay, ausgehend von der Technik die Valve beim Streaming setzt stellt sich mir dann die Frage wo stecken die Hürden in der Umsetzung. Betreffend der Latenzen glaube ich nicht dass ein Netzwerk (LAN) mit 1GBit/s jetzt für die reine Übertragung der Bildinhalte sowie die Übertragung von Maus- u. Tastatureingaben zu wenig wären. Scheitert es letzten Endes an dem TCP/IP Protokoll? ... oder nimmt die Konvertierung des Bildmaterials zu viel in Anspruch?

Alles zusammen. Jeder einzelne Schritt braucht Zeit und erzeugt damit höhere Latenzen. Schon der Unterschied WLAN zu LAN ist deutlich spürbar. 1GBit/s reicht vom Transfervolumen locker solange man komprimiert, aber die Latenz macht es nichtmehr konkurrenzfähig. Die Spieler kaufen ja schon "low input latency" Monitore...
 
Mal angenommen das Signal benötigt 30ms von der Eingabe über das Netzwerk und zurück, das System packt 60 FPS - heißt ca alle 16ms ein Bild,wären dann knapp 50ms, dann kommt noch die Verzögerung des Monitors hinzu, im schlimmsten Fall bei 60 Hz auch wieder ca 16ms dann bist du schon bei ca 65ms Verzögerung und die GPU braucht zum streamen auch noch ein paar ms. An der Bandbreite liegts absolut nicht um Bilder zu streamen, die Latenzen machen die größten Probleme.

Du kannst dich ja mal mit CS:GO Spielern unterhalten was die von solchen Latenzen halten.
 
Mit einem Thunderbolt 2-Kabel und einem externen PCIe-Gehäuse sind bis zu 60 m Abstand zwischen "Client" und Graka möglich. Geschwindigkeitsmäßig etwas limitiert (entspricht PCIe 2.0 x4, in der Praxis bleiben glaube ich etwa 75-80 % der normal angebunden Grafikkarte über). Sollte Corning in Zukunft Thunderbolt 3-Kabel (40 Gbit, entspricht PCIe 3.0 x4) anbieten, dürfte der leistungsmäßige Abstand geringer werden.
 
Morgen! Danke für den Input. Gut die Eine Frag,e wie Valve das mit den simultanen Betrieb mehrerer Games anstellen möchte, bleibt zwar ungeklärt, aber zumindest habe ich einen Überblick über die aktuelle Situation.

Betreffend der Latenzen ist mir bewusst, dass professionelle CS:GO Spieler jeder ms die Sie reduzieren können, nachlaufen - wobei "Skill" mMn nur dann wirklich bestätigt werden kann, wenn für alle Parteien die selben Bedingungen herrschen hinsichtlich der Verzögerung. Aber das ist ein ganz anderes Kapitel. :-)
 
Zurück
Oben