DLSS 3 im ersten Praxis-Test: Wie gut ist Nvidias neues Upsampling mit KI-Frameraten-Boost?

Die Latenz-Folie vom Igor sagt leider nicht so viel aus ohne die dazugehörigen FPS.

Man könnte ja die DLSS3 Latenzen vergleichen mit pre-rendered frames auf 2 oder triple buffering. Battlefield oder Iracing hat die option.

Für video-playback gibt es eine handvoll Lösungen - nvidia hat dafür die optical flow api rausgebracht. https://developer.nvidia.com/blog/whats-new-in-optical-flow-sdk-3-0/
Eingebundener Inhalt
An dieser Stelle findest du externe Inhalte von Youtube. Zum Schutz deiner persönlichen Daten werden externe Einbindungen erst angezeigt, wenn du dies durch Klick auf "Alle externen Inhalte laden" bestätigst: Ich bin damit einverstanden, dass mir externe Inhalte angezeigt werden. Damit werden personenbezogene Daten an Drittplattformen übermittelt.
Für mehr Informationen besuche die Datenschutz-Seite.
hier noch paar andere Frame-berechner. Die unterschiedlichen Verfahren sind mehr oder weniger Echtzeit fähig. Es macht den eindruck als wäre dies auch machbar ohne spezial Rechenwerke. Also entweder Nvidia schlägt uns wieder Ihre Marketingwischiwaschi um die Ohren oder es sind keine eingeschobenen Frames.

Das Frame wird wohl nicht eingeschoben wie beim TV. Diese berechnen den Mittelwert zwischen den zwei Bildern. Die Folie mit den Vektoren suggeriert, dass das Bild extrapoliert wird. Also das Zwischenbild wird geraten, sobald das letzte echte Frame berechnet wurde. Wohl anhand der letzten realen Frames. Um die Verschiebungsvektoren zu berechen brauchts mindestens 2. Wenn noch bisschen gesmooth wird, damit die Änderungen der Vektoren nicht zu gross wird, könnten noch ein 3 oder 4 richtiges Frame in der Berechnung drin sein.

Was genau im Cpu Limit passiert - vorallem bei dieser gepatchten Cyberpunk version - ist mir auch schleierhaft. Zuerst nativ 23FPS und 160ms und dann mit den Optimierungen 100FPS und 55ms. Wie kommen die auf die 55ms, werden da vereinfachte cpu Frames generiert? In diesem Fall müssten auch 4 Bilder eingeschoben werden. Bei einem Film mit bekanntem Frame pacing einfach, jedoch bei Echtzeitberechnung ein Glücksspiel.

Das ganze müsste doch über die Eingabeverzögerung ableitbar sein. Wenn ein Zwischenbild aus den echten Frames davor und danach berechnet wird dann muss die Latenz hoch gehen. Das einzige was denkbar wäre ist, dass das "danach Frame" zuerst nur in der Downsample version berechnet wird, diese Informationen für das Zwischenframe genutzt werden und anschliessend das "danach Frame" fertiggestellt wird.


Für VR wäre mit der Kombination von DLSS3 und Single Pass Stereo auch ein weiterer Rendermodi denkbar. Single Pass Stereo errechnet den Blickpunkt für beide Augen in einem CPU Frame. Das eine Auge wird dann richtig berechnet und das zweite geraten aus den vorhanden Informationen. Man kann die Frames auch jede Runde zwischen den Augen tauschen.
 
Zuletzt bearbeitet:
Die Latenz-Folie vom Igor sagt leider nicht so viel aus ohne die dazugehörigen FPS.

Man könnte ja die DLSS3 Latenzen vergleichen mit pre-rendered frames auf 2 oder triple buffering. Battlefield oder Iracing hat die option.

Für video-playback gibt es eine handvoll Lösungen - nvidia hat dafür die optical flow api rausgebracht. https://developer.nvidia.com/blog/whats-new-in-optical-flow-sdk-3-0/
Eingebundener Inhalt
An dieser Stelle findest du externe Inhalte von Youtube. Zum Schutz deiner persönlichen Daten werden externe Einbindungen erst angezeigt, wenn du dies durch Klick auf "Alle externen Inhalte laden" bestätigst: Ich bin damit einverstanden, dass mir externe Inhalte angezeigt werden. Damit werden personenbezogene Daten an Drittplattformen übermittelt.
Für mehr Informationen besuche die Datenschutz-Seite.
hier noch paar andere Frame-berechner. Die unterschiedlichen Verfahren sind mehr oder weniger Echtzeit fähig. Es macht den eindruck als wäre dies auch machbar ohne spezial Rechenwerke. Also entweder Nvidia schlägt uns wieder Ihre Marketingwischiwaschi um die Ohren oder es sind keine eingeschobenen Frames.

Das Frame wird wohl nicht eingeschoben wie beim TV. Diese berechnen den Mittelwert zwischen den zwei Bildern. Die Folie mit den Vektoren suggeriert, dass das Bild extrapoliert wird. Also das Zwischenbild wird geraten, sobald das letzte echte Frame berechnet wurde. Wohl anhand der letzten realen Frames. Um die Verschiebungsvektoren zu berechen brauchts mindestens 2. Wenn noch bisschen gesmooth wird, damit die Änderungen der Vektoren nicht zu gross wird, könnten noch ein 3 oder 4 richtiges Frame in der Berechnung drin sein.

Was genau im Cpu Limit passiert - vorallem bei dieser gepatchten Cyberpunk version - ist mir auch schleierhaft. Zuerst nativ 23FPS und 160ms und dann mit den Optimierungen 100FPS und 55ms. Wie kommen die auf die 55ms, werden da vereinfachte cpu Frames generiert? In diesem Fall müssten auch 4 Bilder eingeschoben werden. Bei einem Film mit bekanntem Frame pacing einfach, jedoch bei Echtzeitberechnung ein Glücksspiel.

Das ganze müsste doch über die Eingabeverzögerung ableitbar sein. Wenn ein Zwischenbild aus den echten Frames davor und danach berechnet wird dann muss die Latenz hoch gehen. Das einzige was denkbar wäre ist, dass das "danach Frame" zuerst nur in der Downsample version berechnet wird, diese Informationen für das Zwischenframe genutzt werden und anschliessend das "danach Frame" fertiggestellt wird.


Für VR wäre mit der Kombination von DLSS3 und Single Pass Stereo auch ein weiterer Rendermodi denkbar. Single Pass Stereo errechnet den Blickpunkt für beide Augen in einem CPU Frame. Das eine Auge wird dann richtig berechnet und das zweite geraten aus den vorhanden Informationen. Man kann die Frames auch jede Runde zwischen den Augen tauschen.

https://www.igorslab.de/nvidia-geforce-rtx-4090-fe-im-dxr-dlss-reflex-und-frame-generation-test/11/

Ab jetzt hat der NVIDIA Kunde (RTX 4000) mit den Tensor-Kernen der vierten Generation – neben dem AI-Netzwerk (zum Anlernen der Spielegrafik) und der bisher bekannten DLSS 2.3 Features, die die Super Resolution bilden, auch noch die Frame Generation. Diese besteht aus 4 Inputs: Dem aktuellen und vorhergehendem Frame, den Motion Vektoren der Spiel-Engine und der Optical Flow Acceleration. Diese Analysiert zwei sequenzielle Spiel-Frames und berechnet ein optisches Bewegungsfeld. Dabei werden sämtliche Informationen (Partikel, Licht, Schatten, Reflektionen usw.) mitberücksichtigt.

Es wird das letzte und aktuelle Frame genutzt, das aktuelle Frame wird für die Ausgabe "pausiert" und ein "Tensor" Frame wird vorher ausgegeben. Das kostet dann 10-20ms Latenz je nach Spiel und Integration. Verdoppelt halt fast die FPS und hebelt das CPU Limit aus.
 
Wenn dem mal so wäre. DLSS 3.0 macht aber tatsächlich KEINE Bildvorhersage sondern eine Interpolation mit Daten aus dem Triplebuffering. Also wirklich inhaltlich (nicht unbedingt technisch) genau das was Fernseher auch machen. Übrigens ist es kein absolut unüblicher Tipp mancher Konsoleros die Zwischenbildberechnung für Spiele auch an zu schalten.
Und für die Nutzung von TB darf ich mir regelmäßig anhören dass das doch das Latenz Sakrileg schlechthin wäre. Jetzt macht es NV und es soll der neue heiße Scheiß sein. :stupid:

Das ist sogar schon Quadbuffering:

#1: Bild 1, fertig, wird ausgegeben
#2: Bild 2, fertig, wartet
#3: Bild 3 in Arbeit
#4: Bild 1,5 wird gerade interpoliert

Bei der Latenz wirkt sich das aber anders aus, als der Schritt von Double zu Tripple Buffering. Bei einer GPU-Framerate, die halb so hoch wie die Bildwiederholrate des Monitors ist, braucht Triple Buffering gut zwei Refresh-Zyklen, ehe ein Anlass aus dem Gameloop angezeigt wird und dann noch einmal vier, ehe man auch die Reaktion sieht. DLSS 3.0 ist bei der Ausgabe der Reaktion genauso schnell, aber der gesamte Berechnungs-Loop ist um einen Refresh-Zyklus nach vorne verschoben und man reagiert nicht auf einen zwei Zyklen alten Inhalt, sondern auf einen drei Zyklen alten. (Gesamtlatenz von Anlass im Gameloop bis Ausgabe der Reaktion: 7 Zyklen statt 6.) Double Buffering ohne Vsync kommt dagegen im Best Case (= Anlass und Reaktion liegen auf der richtigen Seite der Tearingzone) mit einem Zyklus Vor- und zwei Zyklen Nachlauf aus. (3 insgesamt)

Das alles natürlich unter der perfekt theoretischen Annahme, dass die Tensorcores ihre Arbeit in 0,0 ms erledigen oder zufällig immer rechtzeitig genug vor dem nächsten Refresh damit beginnen können, um noch vor diesem fertig zu werden, und unter der Annahme, dass sie dafür weder Strombudget noch Speichertransferrate zu Lasten der Shader benötigen. In der Praxis ist all das natürlich nicht garantiert, sodass die DLSS-Ausgabe sich bei einigen Frames um einen weiteren Zyklus verlangsamen wird und es werden auch nicht exakt doppelt so viele Fps erreicht, sodass bei gleicher Monitorwiederholrate entweder das Triple-Buffering-System ab und zu mal einen Frame nur einmal anzeigt und dadurch einen Zyklus einspart oder aber das DLSS-3.0-System manchmal drei Refreshzyklen mit einem Render-Frame überbrücken muss.
@PCGH_Phil: Weißt du, ob Nvidia in letzterem Fall zwei Zwischenbilder berechnet oder ob eins wiederholt angezeigt wird? Im Prinzip braucht man dann ja sogar fünf Buffer.
 
Zuletzt bearbeitet:
Ich bin ja nVidia-Fan.

Aber ich finde das sehr fragwürdig:
Erst wird Reflex gepriesen, um den Input-Lag zu senken. OK cool... so weit bin ich dabei.

Aber nun wird Reflex dafür genommen, den ansteigenden Input-Lag lediglich wieder halbwegs abzumildern;
so dass die ursprünglichen Vorteile, mit denen Reflex ja mal beworben wurde - weniger Input-Lag - im Zusammenhang mit DLSS 3 gar nicht mehr gegeben sind.

Was ist denn das für eine Strategie?
Weil offenbar ist der ursprüngliche, beworbene "niedrigere Input-Lag als normal" durch Reflex ja nVidia nicht besonders wichtig.
 
Zuletzt bearbeitet:
Ich bin ja nVidia-Fan.

Aber ich finde das sehr fragwürdig:
Erst wird Reflex gepriesen, um den Input-Lag zu senken. OK cool... so weit bin ich dabei.

Aber nun wird Reflex dafür genommen, den ansteigenden Input-Lag lediglich wieder halbwegs abzumildern;
so dass die ursprünglichen Vorteile, mit denen Reflex ja mal beworben wurde - weniger Input-Lag - im Zusammenhang mit DLSS 3 gar nicht mehr gegeben sind.

Was ist denn das für eine Strategie?
Weil offenbar ist der ursprüngliche, beworbene "niedrigere Input-Lag als normal" durch Reflex ja nVidia nicht besonders wichtig.

Seltsame Auffassung. Du hast jetzt halt eine Option mehr, ganz einfach.

DLSS 2.0 + Reflex (wobei nicht alle Spiele die DLSS 2.0 unterstützen auch Reflex unterstützen) - bester Input Lag
DLSS 3.0 inkludiert immer Reflex - schlechterer Input Lag (immer noch besser als nativ), dafür FPS aus der Hölle

Es ist ja nicht so dass es (Stand jetzt) reine DLSS 3.0 Spiele geben wird, man hat immer die Wahl. Für Singleplayer Titel in denen man auf 4K alles auf maximal stellen möchte, und wo der 10-20ms höhere Input Lag verschmerzbar ist, ist das doch eine tolle Option?
 
Man hat immer die Wahl ob DLSS 2 oder DLSS 3? Auch in Zukunft noch?
Wobei es mir selbst dann lieber wäre, wenn sie stattdessen DLSS 2 weiterentwickeln bzw. einen anderen Ansatz als bei 3 verfolgen.
 
Zuletzt bearbeitet:
Das ist korrekt. Wenn man aber ein Extrembeispiel heranziehen muss (20 FPS nativ, 40 FPS DLSS 3.0) um das Feature schlecht dastehen zu lassen, dann ist das meiner Meinung nach umgekehrtes cherry picking.
Werbevideos gibt es genug, sogar von Digital Foundry, die muss ich nicht nachplappern. Ich stelle mir die Frage, was übersehe ich hier.

Bei dieser Frage komme ich unweigerlich zu dem Schluss, dass Videospiele seit 30+ Jahren nicht nur darauf getestet werden wie sie sie aussehen, sondern auch wie sie sich anfühlen. Das führt uns zu den Anfängen der Diskussion warum 60fps besser sind als 30fps. Denn da ging es nie nur darum was man sieht, sondern immer darum, dass das Spiel sich besser anfühlt, es reagiert besser, die Steuerung "fühlt" sich besser an.

Aber Gefühle haben damit nichts zu tun, es war schon immer der Umstand, dass 60fps Spiele auch 60 Mal pro Sekunde nachjustieren lassen und das spürt man im Vergleich zu 30fps Spielen. Ganz zu schweigen von uralten 15fps Amiga Jump and Runs im Vergleich zu Turrican.

Im Sinne des Gedankens, dass man sich informiert fühlt und nicht nur beworben, gilt es diesen Umstand zu betrachten. Es ist wie bei Freesync, das braucht auch eine minimale Framerate.

Cherrypicking beginnt wieder früh genug, wenn die 4060 Laptop mit Cyberpunk 2077 beworben wird. Weil, OMG, 60+ fps mit Rytracing auf einem Laptop.
 
Habe ich das richtig verstanden, dass Frame Generation nicht mit V/G/Free-Sync funktioniert?
Na toll, dann hat man wieder mit Tearing zu kämpfen und die GPU läuft immer auf 100%.
 
Was ich bis jetzt noch immer nicht verstanden hab und auch bisher wie ich gesehen hab auch nicht erwähnt wurden ist, ob DLSS 3.0 abwärtskompatibel ist.
Sprich wenn ein Titel DLSS 3.0 unterstützt, unterstützt es damit auch gleichzeitig DLSS 2.0 und DLSS 1.0 oder dann überhaupt nicht? :huh::huh::huh:
 
Heisst auch, es gibt kein Framegeneration ohne Upsampling, wenn ich es richtig verstanden habe?!
Muss mich hier übrigens korrigieren.
Im letzten Video von DF zu DLSS 3 wird gesagt und gezeigt, dass sich Frame Generation auch ohne Upsampling aktivieren lässt. Ist also beides unabhängig voneinander.
 
Zurück