PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : nVidias Deep Learning Super Sampling - DLSS 2.x und DLSS 3


Seiten : [1] 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26

Dampf
2020-04-28, 22:00:40
Um den AI Machine Learning Thread zu entlasten, habe ich hier einen Thread speziell für DLSS eröffnet.

Hier könnt ihr euch über Nvidia's neueste Rekonstruktions-AI, DLSS 2.0 austauschen. Vergleiche sind hier gern gesehen!

Was ist DLSS 2.0? DLSS ist ein Deep Learning Modell, das auf Nvidia's Servern mit 16K Super Sampled Trainingsdaten von Spielen gefüttert wird, dieses trainierte Modell wird dann via den Game-Ready Treibern auf den RTX GPUs deployed. Im Spiel wird mittels DLSS in einer geringeren Auflösung gerendert, was die Framerate deutlich erhöht. Gleichzeitig wird das Deep Learning Modell auf den RTX Tensor Cores, die speziell für AI Aufgaben entwickelt wurden, ausgeführt und ersetzt die fehlenden Details der geringen Render-Auflösung durch die Informationen, die das Netzwerk dank dem Training gelernt hat.

Was ist der Unterschied zu Sharpening und Upscaling?

Das sind grundverschiedene Techniken. Upscaling fügt keine Details hinzu. Wenn ihr ein Spiel in 1440p mit einer Render-Auflösung von 720p spielt, dann habt ihr 720p Bildqualität, einzig die HUD profitiert davon. Auch Sharpening ist nur ein Grain-Filter der die Bildschärfe zwar artifiziell etwas erhöht, aber die Bildqualität verbessert sich dadurch nicht. Anders DLSS: hier erreicht die KI oftmals die Bildqualität der nativen Auflösung, manchmal übertrifft sie nativ sogar noch und fügt Details hinzu, die in der nativen Ausgabe noch nicht da waren. Gleichzeitig genießt ihr aber ähnliche FPS wie wenn ihr das Spiel in 720p spielen würdet.

Hier näheres zur Funktionsweise aus dem GTC Talk:

https://www.hardwareluxx.de/images/cdn01/D902C1466B8C40308829E317E05313E2/img/3F27C450E2064D04B873D0D3A62A8F12/NVIDIA-DLSS20-GDC2020-015_3F27C450E2064D04B873D0D3A62A8F12.jpg

Vergleiche aus dem GTC Talk:

https://imgur.com/a/Ly60gnD

https://i.imgur.com/HPawi4E.jpg

https://i.imgur.com/LCrrpZf.jpg

https://i.imgur.com/gFA2p8d.jpg

https://i.imgur.com/X3Ro8c8.jpg

https://i.imgur.com/A3pbad0.jpg

Wolfenstein Youngblood (FPS Anzeige oben rechts):

https://imgsli.com/MTUxNjE

x-force
2020-04-28, 23:00:31
interessant wäre es, wenn der afterburner die möglichkeit bekommt die auslastung der tensor kerne anzuzeigen, so daß man die normale pipeline über die primärauflösung optimal auslasten kann und man sich nicht durch quality dlss via tensor kerne limitiert.

optimal wäre es, wenn die performance von z.b. 1080p nativ auch mit dlss zur basis 1080p identisch ist und je nach vorhandener tensor leistung quality normal, oder performance zum upscaling genutzt wird.

Dampf
2020-04-28, 23:15:59
interessant wäre es, wenn der afterburner die möglichkeit bekommt die auslastung der tensor kerne anzuzeigen, so daß man die normale pipeline über die primärauflösung optimal auslasten kann und man sich nicht durch quality dlss via tensor kerne limitiert.

optimal wäre es, wenn die performance von z.b. 1080p nativ auch mit dlss zur basis 1080p identisch ist und je nach vorhandener tensor leistung quality normal, oder performance zum upscaling genutzt wird.

Da stimm ich dir zu, das wäre sehr interessant. Man kann ja mit Nsight Graphics die Tensor-Pipe bei Spielen betrachten, aber eine einfachere Möglichkeit wäre SEHR wünschenswert, gerade auch bei Compute-Anwendungen. Da ist es nämlich deutlich schwerer, die Tensor Auslastung anzuzeigen.

Was genau meinst du damit? Bei DLSS gibt es ja schon verschiedene Qualitäts-Stufen. So wie ich das sehe ist die DLSS-Leistung unabhängig der Tensor Core Leistung, was auch Sinn ergibt. Überleg mal eine 2060 kann DLSS Performance (Faktor 4x Upscaling) nicht nutzen, weil die Tensor Core Leistung nicht ausreicht. Wobei ja gerade die von einem höheren Upscaling-Faktor profitiert. Die DLSS-Leistung ist wohl so bemessen, dass selbst die schwächste RTX Karte das DLSS in der Qualität und mit dem Upscaling-Faktor nutzen kann wie die größte RTX Karte, ohne dass die Shaderleistung groß beeinflusst wird.

Ich hab ja auch auf meinem RTX 2060 Laptop festgestellt, dass DLSS 2.0 in Control mehr Leistung kostet als DLSS 1.9. Aber auch nicht so viel, dass es sich nicht mehr lohnen würde.

x-force
2020-04-29, 00:12:48
Da stimm ich dir zu, das wäre sehr interessant. Man kann ja mit Nsight Graphics die Tensor-Pipe bei Spielen betrachten, aber eine einfachere Möglichkeit wäre SEHR wünschenswert, gerade auch bei Compute-Anwendungen. Da ist es nämlich deutlich schwerer, die Tensor Auslastung anzuzeigen.

na immerhin kennt die api die befehle, muss nur noch veröffentlicht und eingebaut werden :biggrin:


Was genau meinst du damit? Bei DLSS gibt es ja schon verschiedene Qualitäts-Stufen. So wie ich das sehe ist die DLSS-Leistung unabhängig der Tensor Core Leistung, was auch Sinn ergibt.


das würde aber bedeuten, daß klassische einheiten einen gehörigen teil der arbeit übernehmen. dann wäre identische leistung bei gleicher basisauflösung ja gar nicht möglich.


Überleg mal eine 2060 kann DLSS Performance (Faktor 4x Upscaling) nicht nutzen, weil die Tensor Core Leistung nicht ausreicht. Wobei ja gerade die von einem höheren Upscaling-Faktor profitiert. Die DLSS-Leistung ist wohl so bemessen, dass selbst die schwächste RTX Karte das DLSS in der Qualität und mit dem Upscaling-Faktor nutzen kann wie die größte RTX Karte, ohne dass die Shaderleistung groß beeinflusst wird.

wenn das so ist, verschenken sie aber etwas.

edit: man müsste sich vielleicht mal ansehen, ob die unterschiedlichen dlss modi auf den verschieden großen karten prozentual gleich viel kosten, gibt es dazu schon etwas?

Gast
2020-04-29, 08:35:35
Der Interessante Aspekt DLSS 2.0, der auch dafür sorgt warum das aim Vergleihc zu DLSS 1.0 auf einmal funktioniert, ist dass gelernt wurde die Information "intelligent" über die Zeit zu akkumulieren.

Die ganzen temporalen handgemachten Heuristiken von TAA sind einfach scheisse, das kann ein Netzwerk viel besser lernen.
Daraus folgt dann implizit auch, dass DLSS 2.0 das potential hat sogar deutlich bessere Bildqualität als natives TAA zu liefern. Sprich an den Stellen wo es Unterschiede gibt ist DLSS 2.0 sogar oftmals "richtiger".

Was ich cool fände wäre auch noch ein DLSS 2.0 Mode in voller Auflösung ohne upsampling, der vorallem dafür genutzt wird die Information zeitlich zu akkumulieren. Aber das wäre vielleicht auch Overkill...

pixeljetstream
2020-04-29, 11:43:04
GTC Talk zu DLSS 2.0
https://developer.nvidia.com/gtc/2020/video/s22698

Zafi
2020-04-29, 13:04:02
Bilde ich mir das bloss ein oder haben die DLSS 2.0 Bilder ein gröberes Kontrastspektrum?

Bei dem Stadtbild kann man es an den dunklen Szenen erkennen, die merklich heller/blasser sind. Der Himmel ist auch etwas blasser, aber da ist es nicht so deutlich.

Und beim Waldbild tendiert der dunkle Bereich auf der linken Seite schon ins Schwarz und verliert jegliche Bildinformation. Während der andere Teil des Waldes wie Scharfgezeichnet aussieht (künstlich aufgeblasener Kontrast).

Sieht für mich also so aus, als ob die Umrechnung auf Kosten des Farbspektrums geht und hier Farbinformationen verloren gehen. Aber die Vorteile sind auch nicht ohne.

Screemer
2020-04-29, 13:34:52
das kann auch schlicht am screengrab aus dem video liegen. ordentliche vergleichbarkeit hast du mit jpg sowieso nicht. da sollte man wie immer irgenwas lossless wie z.b. png ohne kompression nehmen.

Gast
2020-04-29, 14:19:43
Was genau meinst du damit? Bei DLSS gibt es ja schon verschiedene Qualitäts-Stufen. So wie ich das sehe ist die DLSS-Leistung unabhängig der Tensor Core Leistung, was auch Sinn ergibt.


Die DLSS Leistung ist konstant pro Frame, und logischerweise schneller mit den schnelleren Grafikkarten.

Eine 2080Ti braucht für das Upsampling deutlich weniger Zeit als beispielsweise eine 2060.

Da allerdings die DLSS Zeit pro Frame konstant ist und die 2060 normalerweise schon bei der Grundframerate deutlich langsamer sein sollte, könnte es sein, dass die 2060 relativ sogar mehr gewinnt.

Generell scheint DLSS auch sehr wenig Leistung zu kosten, in der Regel <10%, wobei diese relativ natürlich bei höheren Frameraten größer wird.

Börk
2020-05-02, 09:12:05
Bilde ich mir das bloss ein oder haben die DLSS 2.0 Bilder ein gröberes Kontrastspektrum?

Bei dem Stadtbild kann man es an den dunklen Szenen erkennen, die merklich heller/blasser sind. Der Himmel ist auch etwas blasser, aber da ist es nicht so deutlich.

Und beim Waldbild tendiert der dunkle Bereich auf der linken Seite schon ins Schwarz und verliert jegliche Bildinformation. Während der andere Teil des Waldes wie Scharfgezeichnet aussieht (künstlich aufgeblasener Kontrast).

Sieht für mich also so aus, als ob die Umrechnung auf Kosten des Farbspektrums geht und hier Farbinformationen verloren gehen. Aber die Vorteile sind auch nicht ohne.

Das kann vor allem auch daran liegen, dass DLSS darauf trainiert wurde wie 8x8 Supersampling auszusehen und nicht wie TAA.

Daher kann es durchaus passieren, dass die TAA "Referenzbilder" an manchen Stellen falsche Kontraste liefern und DLSS sogar akkurater ist.
Das ist vorallem bei Materialien der Fall die ein stark Winkelabhängiges Erscheinungsbild haben und bei sehr flachen Betrachtungswinkeln.
Dort macht TAA nämlich größere Fehler.

Troyan
2020-05-02, 09:22:56
Generell scheint DLSS auch sehr wenig Leistung zu kosten, in der Regel <10%, wobei diese relativ natürlich bei höheren Frameraten größer wird.

Da das Upscaling fixe Kosten von 1,5ms (2080TI) hat, hängt der Leistungsverlust einzig allein von der Zeit der Erstellung des Frames ab:
8,3ms (120FPS) => 18%
33,3ms (30 FPS) => 4,5%

Gebrechlichkeit
2020-05-02, 15:27:29
Welche GPUs werden (aktuell) unterstuetzt? Nur auf den RTX¿

alle mit Tensor Cores würd ich sagen

thanks, trotzdem schade.

TheAntitheist
2020-05-03, 00:52:46
Welche GPUs werden (aktuell) unterstuetzt? Nur auf den RTX¿
alle mit Tensor Cores würd ich sagen

][immy
2020-05-03, 01:36:38
Was ich wirklich interessant finde ist, wie viele Details heutzutage in 540p drin stecken können (auch ohne DLSS2). Das ist quasi PAL Auflösung.

Man schaue sich einfach mal das Bild von oben an

https://i.imgur.com/X3Ro8c8.jpg


Suche sich ein älteres Spiel raus und vergleiche das einfach mal.
Da merkt man mal wieder, das Auflösung nicht alles ist, sondern "nur" einer von vielen Faktoren der Grafik gut aussehen lässt.


zu DLSS 2.0, das scheint jetzt langsam endlich das zu liefern, was nvidia vor 2 Jahren versprochen hat. Vor allem hat man es scheinbar mal geschafft, die Anzahl und Größe der Artefakte zu verringern. Allerdings würde ich es vorher erst mal häufiger implementiert sehen.

Neosix
2020-05-03, 06:38:23
Ein wichtiger Aspekt von DLSS hat leider weniger mit der "technischen" Seite damit zu tun.
DLSS vermag bei guter Umsetzung die FPS bei gleichbleibender Qualität mehr als zu verdoppeln. Beispiele wurden ja hier im Forum schon paar verlinkt. Für mich als jemanden der seine Rechner gerne möglichst lange betreibt, wäre das ein Segen, und bei dem nächsten Kauf AMD/Nvidia eben eine fette Gewichtung Richtung Nvidia. Weil ich damit mit der gleichen GPU viel länger auskommen könnte.

Was mir jedoch starte Kopfzerbrechen betreibt, ist die Tatsache, dass Nvidia bisher die Titel für ihre DLSS Servercluster handverlesen auswählt. Klartext aktuell entscheidet mehr oder weniger Nvidia only, welche Spiele das Feature kriegen und welche nicht. Mir ist schon klar dass die Rechenzeit auf einem Großrechner natürlich nicht umsonst ist. Mir wäre es aber lieber wenn jedes Spiel dieses Feature nutzen könnte.

Daraus entstehen für mich 2 Probleme: spiele ich etwas, was kein DLSS Support hat, kann ich das Feature verständlicherweise nicht nutzen. Ka ob für spätere Implementierungen da was allgemeines kommt was immer geht? Zweites Problem, was hindert es Nvidia das Feature jeder Zeit auszuschalten? Kommt in 2 Monaten eine neue Generation, Stecker raus. "Ihr wollt mehr FPS? Kauft die nächste GPU Generation".

Karümel
2020-05-03, 07:57:02
Was mir jedoch starte Kopfzerbrechen betreibt, ist die Tatsache, dass Nvidia bisher die Titel für ihre DLSS Servercluster handverlesen auswählt. Klartext aktuell entscheidet mehr oder weniger Nvidia only, welche Spiele das Feature kriegen und welche nicht. Mir ist schon klar dass die Rechenzeit auf einem Großrechner natürlich nicht umsonst ist. Mir wäre es aber lieber wenn jedes Spiel dieses Feature nutzen könnte.

Daraus entstehen für mich 2 Probleme: spiele ich etwas, was kein DLSS Support hat, kann ich das Feature verständlicherweise nicht nutzen. Ka ob für spätere Implementierungen da was allgemeines kommt was immer geht? Zweites Problem, was hindert es Nvidia das Feature jeder Zeit auszuschalten? Kommt in 2 Monaten eine neue Generation, Stecker raus. "Ihr wollt mehr FPS? Kauft die nächste GPU Generation".

Unreal Engine unterstützt DLSS doch schon Engineseitig, so sollten dann eigentlich alle? Spiele welche die Engine nutzen das unterstützen, oder?
Stimmt, aber, ich hoffe auch das DLSS von so vielen Spielen wie möglich unterstützt wird.
Es könnte bei Spielen die zuerst auf den Konsolen erscheinen (dort ist ja AMD-Hardware verbaut) dann eher nicht mit drin sein.
Oder das nachträglich einzubauen wäre kein großer "Aufwand"?

Neosix
2020-05-03, 08:06:28
Wie genau soll diese Unreal Engine Lösung denn funktionieren? Die Entwickler müssen doch ihre Files auf die Nvidia Server hochladen damit dort trainiert werden kann. Und da jedes Spiel ja mehr als die Standard Assets benutzt, muss auch jedes einzeln trainiert werden? Und das passiert eh erst, wenn Nvidia vorher ihr "OK" gibt. Korrigiert mich hier gerne.

dildo4u
2020-05-03, 08:16:22
Das war der Fall bei DLSS 1.0.Es ist jetzt unabhängig vom Content des Games.

https://www.pcgameshardware.de/Nvidia-Geforce-Grafikkarte-255598/Specials/Mechwarrior-5-DLSS-Test-Control-DLSS-Test-1346257/#a2


Im FAQ:

Q: How do I get access to DLSS 2.0 in Unreal Engine 4
A: Register here to request access to the DLSS beta program. Once your application is approved, NVIDIA will enable you to access DLSS 2.0 through the public RTX Unreal Engine 4 branch.


https://developer.nvidia.com/dlss

Troyan
2020-05-03, 14:58:52
Daraus entstehen für mich 2 Probleme: spiele ich etwas, was kein DLSS Support hat, kann ich das Feature verständlicherweise nicht nutzen. Ka ob für spätere Implementierungen da was allgemeines kommt was immer geht? Zweites Problem, was hindert es Nvidia das Feature jeder Zeit auszuschalten? Kommt in 2 Monaten eine neue Generation, Stecker raus. "Ihr wollt mehr FPS? Kauft die nächste GPU Generation".

Die Informationen liegen auf deinem PC. Spiele, die schon DLSS haben, können daher nicht remote deaktiviert werden (außer nVidia löscht einfach die Daten per Treiber...).

Platos
2020-05-03, 16:27:08
Oder es kommt ein Patch rein und ende Gelände. Heute kann man ja Spiele auf Steam nicht mal mehr starten, bevor man gewisse Updates/Patches nicht durchgeführt hat.

Und mal ehrlich, Treiber kann man, früher oder später, auch nicht ignorieren. Irgendwann muss man die updaten (wenn man bessere Perfomance will, was ja gerade de Sinn am ganzen ist). Also theoretisch ist das sehr wohl ganz einfach möglich.

Ob das dann wirklich realistisch ist, ist eine andere Frage. Ich glaube kaum, dass sowas passieren wird. Ich kann mir aber vorstellen, dass (wie üblich eben) der Treibersupport nunmal nicht ewig geht bzw. nicht wirklich neue Treiber kommen und dann auch Spiele nicht mehr supportet werden auf alten Karten (bei diesem Feature). Aber da muss man zuerst einmal abwarten. Das ganze ist auch mit DLSS 2.0 noch in Kinderschuhen, das war erst der Anfang.

Als beispiel die 500-er GeForce Serie hat nur noch den alten 391.35 Treiber. die 600-er Serie hat noch den aktuellen. Gut, die Karte ist natürlich sehr alt, klar. Aber dennoch, beliebig lässt sich damit nicht eine Lebensdauer steigern. Aber die meisten könnten davon wohl profitieren, aber auch nur solange, bis AMD ein Pendant hat und das in praktisch jedem Spiel standart wird. Dann ist es wieder normal und die Ressourcen werden dementsprechend auch genutzt werden, denke ich (also kein Vorteil gegenüber anderen= Lebensdauer wie gewöhnlich).

Gast
2020-05-03, 19:07:13
Was mir jedoch starte Kopfzerbrechen betreibt, ist die Tatsache, dass Nvidia bisher die Titel für ihre DLSS Servercluster handverlesen auswählt. Klartext aktuell entscheidet mehr oder weniger Nvidia only, welche Spiele das Feature kriegen und welche nicht.


Genau dieses Problem ist mit DLSS 2.0 Geschichte, ein spielespezifisches Training ist damit nicht mehr nötig.

Anscheinend ist da sogar nicht mal mehr so viel im Treiber nötig, weil Wolfenstein Youngblood hatte DLSS 2.0 von der ersten Implementierung an und der "DLSS 2.0 Treiber" kam erst einige Zeit später heraus.

Timbaloo
2020-05-04, 23:58:20
Aus einem anderen Thread:
Das Spiel-spezifische Training gibt es nicht mehr seit 2.0
Funktioniert generisches Training denn bei Grafikstilen wie z.B. die überzeichneten/schwarzen Rändern in Borderlands? Ich stelle mir das schwierig vor?

pixeljetstream
2020-05-05, 00:13:35
Gut möglich dass solche Spezialfälle noch anderes Training brauchen. Wir evaluieren auch gerade für CAD/DCC Software wo bekanntlich die Oberflächenbegrenzungskanten über den Dreiecken liegen, wie gut das jetzige Netzwerk das kann. Das entscheidende ist halt dass das Training nicht pro Spiel geschieht sondern man allgemein dann versucht Szenarien abzudecken. In jedem Fall hat ja der Entwickler die Kontrolle darüber ob die Qualität okay ist. Das ganze ist auch permanent im Fluss, was Verbesserung angeht.

Dampf
2020-05-05, 00:36:55
Gut möglich dass solche Spezialfälle noch anderes Training brauchen. Wir evaluieren auch gerade für CAD/DCC Software wo bekanntlich die Oberflächenbegrenzungskanten über den Dreiecken liegen, wie gut das jetzige Netzwerk das kann. Das entscheidende ist halt dass das Training nicht pro Spiel geschieht sondern man allgemein dann versucht Szenarien abzudecken. In jedem Fall hat ja der Entwickler die Kontrolle darüber ob die Qualität okay ist. Das ganze ist auch permanent im Fluss, was Verbesserung angeht.

Was hältst du eigentlich von dem Gerücht, dass DLSS zukünftig in jedem TAA Spiel aktivierbar ist, ohne dass die Entwickler das erst implementieren müssen? Sozusagen als Funktion im Control Panel.

Ist das möglich?

pixeljetstream
2020-05-05, 08:44:26
Was hältst du eigentlich von dem Gerücht...
Hältst du es für fair Mitarbeiter zu Gerüchten zu fragen, würdest du das wollen?

robbitop
2020-05-05, 09:55:19
Wenn man sich den GTC Talk von NV über DLSS 2.0 anschaut, sieht man, was für DLSS benötigt wird. Moderne Spielepipelines sind super komplex verglichen zu den Zeiten, wo man noch sinnvoll Dinge überstülpen konnte. Und jede Rendering Pipeline unterscheidet sich z.T. stark von anderen. Und selbst bei gleicher Engine ist oft vieles anders gelöst.

Intuitiv gesehen kann das mMn nicht generisch überstülpbar sein - zumindest so, dass es auch richtig gute Resultate bringt.

Dampf
2020-05-05, 12:54:13
Hältst du es für fair Mitarbeiter zu Gerüchten zu fragen, würdest du das wollen?

Tut mir leid, war spät und hab ich nicht nachgedacht.

Würde ich auch nicht wollen. Ich schätze deine Beiträge wirklich sehr, ich hoffe ich hab dir die Lust an dem Forum nicht in irgendeiner Weise geschmälert... Sorry nochmal!

Wenn man sich den GTC Talk von NV über DLSS 2.0 anschaut, sieht man, was für DLSS benötigt wird. Moderne Spielepipelines sind super komplex verglichen zu den Zeiten, wo man noch sinnvoll Dinge überstülpen konnte. Und jede Rendering Pipeline unterscheidet sich z.T. stark von anderen. Und selbst bei gleicher Engine ist oft vieles anders gelöst.

Intuitiv gesehen kann das mMn nicht generisch überstülpbar sein - zumindest so, dass es auch richtig gute Resultate bringt.

Stimme dir zu, ich halte das auch für sehr unrealistisch.

aufkrawall
2020-05-05, 13:55:50
Mit dem Turing-Nachfolger wird es bestimmt verstärkte Bemühungen geben, das in mehr Spiele zu bekommen. Es scheint ja seit 2.0 viel besser bei Testern und Spielern anzukommen als z.B. TXAA.

pixeljetstream
2020-05-05, 15:22:07
, ich hoffe ich hab dir die Lust an dem Forum nicht in irgendeiner Weise geschmälert...
und mir die Chance auf Besserwisserei zu nehmen, niemals ;)

robbitop
2020-05-05, 15:27:16
Mit dem Turing-Nachfolger wird es bestimmt verstärkte Bemühungen geben, das in mehr Spiele zu bekommen. Es scheint ja seit 2.0 viel besser bei Testern und Spielern anzukommen als z.B. TXAA.
Wobei txaa damals auch nicht so toll war. Sehr unscharf. Sehr teuer.
DLSS ist nach aktuellem Stand zwar nicht perfekt aber schon verblüffend gut. :)

Karümel
2020-05-05, 16:25:32
https://www.computerbase.de/2020-05/nvidia-dlss-2.0-test/

Computerbase "Test"

Klevapalis
2020-05-05, 16:43:43
Intuitiv gesehen kann das mMn nicht generisch überstülpbar sein - zumindest so, dass es auch richtig gute Resultate bringt.
Warum nicht?

AI/ML ist im Grunde nichts weiter, als einem Computer primitiv beizubringen, wiederkehrende Muster anzuwenden. Ob du dem Netzwerk dann beibringst, nur im Spiel X einen Computer (oder welches Objekt auch immer) aus dem Pixelbrei zu erkennen und den detaillierter darzustellen oder für jedes Spiel, das sollte keinen großen Unterschied machen.

Zumal es ja nicht mal so krasses ML sein muss, selbst die Logik unscharfe/flimmerende Linie -> scharfe Linie sollte relativ simpel und generisch sein.

Troyan
2020-05-05, 17:07:47
https://www.computerbase.de/2020-05/nvidia-dlss-2.0-test/

Computerbase "Test"

In Control und DutM ist die 2060S mit Qualität gleich oder schneller als die 2080TI mit nativer Berechnung. Das zeigt eindrucksvoll, das der Weg über DLSS viel sinnvoller ist als sinnbefreit nur Pixel zu berechnen. Und mit Performance ist man dann sogar meilenweit voraus.

unl34shed
2020-05-05, 18:12:34
Würden die Entwickler bei Control bei Nativ nicht alles so weich Zeichnen und nicht nur bei DLSS2.0 das Bild Schärfen, könnte man auch die Qualität vergleichen.

robbitop
2020-05-05, 18:26:14
Warum nicht?

AI/ML ist im Grunde nichts weiter, als einem Computer primitiv beizubringen, wiederkehrende Muster anzuwenden. Ob du dem Netzwerk dann beibringst, nur im Spiel X einen Computer (oder welches Objekt auch immer) aus dem Pixelbrei zu erkennen und den detaillierter darzustellen oder für jedes Spiel, das sollte keinen großen Unterschied machen.

Zumal es ja nicht mal so krasses ML sein muss, selbst die Logik unscharfe/flimmerende Linie -> scharfe Linie sollte relativ simpel und generisch sein.
Je mehr Input des NN hat desto mehr Möglichkeiten gibt es. DLSS 2.0 hat aktuell Zugriff auf ein Bild vor Post Processing + vor HUD und motion vectors. Dazu sicherlich auch Z und G Buffer. Es weiß also eine ganze Menge über das berechnete Bild, die Geometrie und über die Bewegung (und was sich nicht bewegt).
Dazu musst du halt in die 3D Pipeline rein. Von außen übergestülpt hast du halt nur ein plumpes 2D Bild (fertigen Framebuffer) ohne all das. Das sind völlig andere Voraussetzungen. Gerade temporale Informationen helfen dem NN bei der Rekonstruktion.

Einfach nur AI = Lösung für alles - so funktioniert das nicht.

Gast
2020-05-05, 18:32:40
Warum nicht?


Sieh dir das GDC Video an, dann wirst du verstehen warum das nicht "von Außen" einfach integriert werden kann.

Da wird genau erklärt was eine Engine beim Rendern mit DLSS anders machen muss.

Alleine schon, dass du 2 verschiedene Auflösungen hast, einmal die tatsächliche Renderauflösung und dann noch die von DLSS upgescalte Auflösung kann niemals funktionieren, ohne dass die Engine darüber bescheid weiß.

Klevapalis
2020-05-05, 18:36:14
Je mehr Input des NN hat desto mehr Möglichkeiten gibt es. DLSS 2.0 hat aktuell Zugriff auf ein Bild vor Post Processing + vor HUD und motion vectors. Dazu sicherlich auch Z und G Buffer. Es weiß also eine ganze Menge über das berechnete Bild, die Geometrie und über die Bewegung (und was sich nicht bewegt).
Dazu musst du halt in die 3D Pipeline rein. Von außen übergestülpt hast du halt nur ein plumpes 2D Bild (fertigen Framebuffer) ohne all das. Das sind völlig andere Voraussetzungen. Gerade temporale Informationen helfen dem NN bei der Rekonstruktion.
Sind doch alles generische Daten, es bedarf dazu nur relativ kleiner Eingriffe in die Engine und es bedarf auch keinem gezielten Training für jedes einzelne Spiel und einem daraus resultierenden Model. Es reicht ein generisches Model + generische Daten - genau das, was ich schrieb.

DLSS 1.x = Training für jedes einzelne Game = ML-Network für jedes Spiel
DLSS 2.x = Training generisch = ein gemeinsames ML-Network für alle Spiele

Einfach nur AI = Lösung für alles - so funktioniert das nicht.
Wer behauptet das? :confused:

Troyan
2020-05-05, 18:48:58
Würden die Entwickler bei Control bei Nativ nicht alles so weich Zeichnen und nicht nur bei DLSS2.0 das Bild Schärfen, könnte man auch die Qualität vergleichen.

Du kannst doch nachschärfen. Aber das hilft nicht im geringsten. DLSS ist einfach viel besser. Gutes Beispiel ist Mechwarrior 5. Das hat AMDs FidelityFX, aber 1080p mit DLSS sieht deutlich besser aus (in Bewegung ohne und vor Allem mit Raytracing) als 1080p mit FidelityFX.

Oder "Deliver us the Moon", hier haben die Entwickler den Schärferegel gleich überverwendet. Sieht dann schärfer als DLSS aus, hat aber sichtbare Artefakte und der Hintergrund sieht richtig strange aus...

Dampf
2020-05-05, 18:50:32
Würden die Entwickler bei Control bei Nativ nicht alles so weich Zeichnen und nicht nur bei DLSS2.0 das Bild Schärfen, könnte man auch die Qualität vergleichen.

Guck dir mein Vergleich mit Wolfenstein an. Dort ist das spielinterne Sharpening auf der gleichen Stufe bei TAA und DLSS.

Trotzdem ist DLSS auch dort schärfer. Das ist halt ein Ding, was sich durch alle Spiele mit TAA zieht, TAA gibt einfach eine gewisse Unschärfe ab. DLSS scheint das nicht zu tun.

und mir die Chance auf Besserwisserei zu nehmen, niemals ;)

gut, da bin ich ja beruhigt :biggrin:

pixeljetstream
2020-05-05, 19:11:36
Wer behauptet das? :confused:
Als Du robbitop widersprachst ging es um eine Lösung im Treiber ohne engine Modifikationen, also nur Bilddaten. Es ging nicht um generisches Training, wo ihr beide gleicher Meinung seid.

robbitop
2020-05-06, 09:44:43
Sind doch alles generische Daten, es bedarf dazu nur relativ kleiner Eingriffe in die Engine und es bedarf auch keinem gezielten Training für jedes einzelne Spiel und einem daraus resultierenden Model. Es reicht ein generisches Model + generische Daten - genau das, was ich schrieb.

DLSS 1.x = Training für jedes einzelne Game = ML-Network für jedes Spiel
DLSS 2.x = Training generisch = ein gemeinsames ML-Network für alle Spiele

Ich glaube wir reden aneinander vorbei. ;)
Wie DLSS 1.x und 2.x in Bezug auf das Training funktioniert: d'accord.

Mir ging es um die Aussage, dass DLSS automagisch mit jedem Spiel, welches TAA unterstützt ohne Anpassung durch den Entwickler funktioniert. Einfach übergestülpt (so wie man es vor 20 Jahren mit AA/AF gemacht hat).
DLSS braucht eben eine Einbettung in die Renderpipeline des Spiels, um die Informationen zu bekommen, die es so gut macht. Und ein noch rohes Bild (kein PP/kein HUD), damit man sehr gute Ergebnisse erzielen kann.
Das geht genererisch übergestülpt kaum. (ich kann mir aber gut vorstellen, dass, wenn NV das wollte, sie pro individuellem Spiel das über Hooks u.ä hinbekommen könnten. Aber wäre A) viel Arbeit und B) wahrscheinlich rechtlich nicht ganz einfach).

Dass DLSS 2.0 sehr einfach einzubetten ist und es sehr gute Ergebnisse liefert und eine generalisierte Trainingsbasis hat: wie gesagt - absolut d'accord.

Das Potenzial ist einfach zu groß, dass kommende Spiele entweder DLSS oder aber eigene oder gar generische Verfahren zum AI Upsampling nicht in Betracht ziehen werden. Das wird sich mMn durchsetzen.

Ich könnte mir aber vorstellen, dass man ein PP DLSS als Fallback zu Ampere vorstellen wird. Nutzt also tatsächlich nur fertig gerenderte Bild. Ähnlich zu dem AI Upsampling auf der Shield TV.
Wird garantiert bei Spielecontent nicht an echtes DLSS 2.0 rankommen (da viel weniger Informationen) aber besser als herkömmliches Upsampling mit festen Filterkernels.

Klevapalis
2020-05-06, 10:11:28
Ich glaube wir reden aneinander vorbei. ;)
Wie DLSS 1.x und 2.x in Bezug auf das Training funktioniert: d'accord.
Ok, das klang anders.

Mir ging es um die Aussage, dass DLSS automagisch mit jedem Spiel, welches TAA unterstützt ohne Anpassung durch den Entwickler funktioniert. Einfach übergestülpt (so wie man es vor 20 Jahren mit AA/AF gemacht hat).
Grundsätzlich bekommt DLSS ungefähr das, was auch TAA an Daten braucht. Also sollte dort eine Codeweiche relativ simpel sein.

Dazu kommt, dass heute ja viele Spiele über eine Engine laufen, Unreal z.B. Da würde es also für NVIDIA reichen, den TAA-Code um genau diese Weiche für DLSS zu erweitern.

Andererseits erhält und enthält der Treiber sowieso alle Daten, über die wir reden. Ich würde es nicht für unmöglich halten, dass man mit entsprechenden Treiberanpassungen die beschriebenen Daten nicht unabhängig von der Engine auslesen kann. Die Engine und deren Daten zum Rendering sind für die Grafiktreiber ja keine Blackbox und hinten kommt ein Bild raus, sondern das geschieht ja alles über API-Calls, die vom Treiber verarbeitet werden.

Aber so im Details das zu bewerten, da fehlt uns sicherlich die Kenntnis drüber.

(ich kann mir aber gut vorstellen, dass, wenn NV das wollte, sie pro individuellem Spiel das über Hooks u.ä hinbekommen könnten. Aber wäre A) viel Arbeit und B) wahrscheinlich rechtlich nicht ganz einfach).
Grundsätzlich kann man das über intrinsic functions lösen. Statt dem generischen DX-Call leitet man die Daten eben über den eigenen Call, der die Daten zum DLSS-Code weiter gibt.

Sagen wir es mal so: Alle IHVs haben schon mehr Arbeit getrieben als das, um 5% mehr Leistung raus zu holen :ugly:

Es würde mich - angesichts des Qualität- und/oder Leistungssprung - aber stark wundern, wenn DLSS nicht sehr gut von den Entwicklern angenommen wird, also NVIDIA hier gar nicht viel tricksen muss, um eine hohe Verbreitung zu erreichen.

Ich würde als Entwickler DLSS jedem TAA oder TXAA drei Mal vorziehen.

robbitop
2020-05-06, 11:18:30
Ich bin da sehr(!) skeptisch: Wenn das so einfach und generisch gehen würde, würde DLSS 2.0 keine explizite Einbindung benötigen. Man hat sich offenbar stark darum gekümmert, die Schnittstellen klar zu definieren und die Implementierung möglichst entwicklerfreundlich zu machen und dazu noch sehr gut zu dokumentieren. Dazu dann sicherlich über DevRel einiges an Unterstützung für die Implementierung. Sowas kostet enorm Arbeit/Geld. Wenn das generisch ginge, hätte man das sicherlich der jetzigen Lösung vorgezogen.

Der Treiber sieht ja den Spielecode selbst nicht sondern ein High Level Kompilat. IMO bräuchte es dafür schon irgendeine Art Heuristik - und wie die es so an sich haben, ist das nicht immer konsistent.

Ich kann mir hier beim besten Willen ohne Entwicklerunterstützung nur ein Fallback auf ein AI Upsampling was mit dem fertigen framebuffer arbeitet vorstellen.

Am Ende werden wir es dann ja sehen. :)

Klevapalis
2020-05-06, 12:31:22
Eventuell kann man es auch in Plan A (Entwicklersupport) und Plan B (Treiberhack) einteilen. Sollte Plan A laufen und die Entwickler DLSS gut annehmen, ist Plan B vielleicht einfach nicht notwendig.

Dass NVIDIA viel Entwicklersupport liefert, ist ja nichts Neues. Dem würde ich nicht viel Gewicht geben.

robbitop
2020-05-06, 12:36:22
Es ist zumindest ein guter Indikator, dass es nicht so einfach ist. Wie gesagt: Spiele Renderpipelines sind nicht mehr so simpel.
Egal: Wir werden es am Ende ja sehen. Ich würde sogar einen Kasten Bier darauf setzen, dass auch Ampere (bzw der Turing Nachfolger) kein generisches DLSS herausbringt welches gleiche oder besserere BQ wie DLSS mit explizitem Entwicklersupport liefert.

aufkrawall
2020-05-06, 12:39:24
Ich hatte ja TXAA schon erwähnt: Temporales SSAA ist auch nicht mit einem Fingerschnippsen implementiert, trotzdem hatte das schon vor zig Jahren funktioniert. Ich seh jetzt nicht, wie DLSS da schwieriger zu implementieren wäre, wenn die Engines eh schon alle TAA haben und man da ansetzen kann.

Asaraki
2020-05-06, 12:42:35
Wenn das generisch ginge, hätte man das sicherlich der jetzigen Lösung vorgezogen.


Ich würde vermuten, dass das alles nicht so klar war, wie die finale Implementation wirklich aussehen wird. Ich denke die Frage, die wir hier stellen, wurde schon vor langer Zeit inhouse diskutiert und wenn die Antwort so einfach gewesen wäre, dann hätte man da sicherlich gleich den "korrekten" Weg gewählt.

Denke bis zu DLSS2.0 war auch noch nicht klar, wie generisch es wirklich gehen kann - also ob das Deep Learning da zu einem Resultat kommt, welches auch spiele-unspezifisch gut funktioniert. Denn wenn das nicht gegeben ist, dann braucht man über die viele Arbeit das gleich in den Treiber/Renderpfad zu packen gar nicht nachdenken. Da waren sicher auch Ökonomische Gründe dahinter (erstmal PoC und so...)

Eventuell kann man es auch in Plan A (Entwicklersupport) und Plan B (Treiberhack) einteilen. Sollte Plan A laufen und die Entwickler DLSS gut annehmen, ist Plan B vielleicht einfach nicht notwendig.

Dass NVIDIA viel Entwicklersupport liefert, ist ja nichts Neues. Dem würde ich nicht viel Gewicht geben.

Ich halte nicht viel von Plan B, da dieser viel kostet und mittelfristig eh wieder überflüssig wird (hoffentlich). Da wird nV schon versuchen, den zu vermeiden.

Denke, das wird sich erst dann durchsetzen können, wenn das quasi schon in die Engines und deren APIs miteinfliesst, also von Grund auf schon unterstützt wird. Angesichts der Resultate die DLSS liefert, da sind wir uns ja alle einig, ist das sowieso nur eine Frage der Zeit.

Das müsste nV auch passen eigentlich... so können sie noch eine Zeit lang DLSS als Zückerli anbieten für ihre präferierten Devs/Publisher und sich später dann damit rühmen wieder mal einen Industriestandard gepusht zu haben ;)

#Asa träumt : Muss mich doch mal dort bewerben, die haben jetzt ja Offices ganz in der Nähe :-D

robbitop
2020-05-06, 12:43:51
Ich hatte ja TXAA schon erwähnt: Temporales SSAA ist auch nicht mit einem Fingerschnippsen implementiert, trotzdem hatte das schon vor zig Jahren funktioniert. Ich seh jetzt nicht, wie DLSS da schwieriger zu implementieren wäre, wenn die Engines eh schon alle TAA haben und man da ansetzen kann.

TXAA musste doch auch explizit implementiert werden.
DLSS ist nicht schwer zu implementieren, wenn man sich den GTC talk anschaut. Aber übergestülpt ohne Dev support wurde in naher Vergangenheit so gut wie nichts Bedeutungsvolles mehr. Und so weit ich weiß nichts, was mehr als ein 2D Bild braucht. Ggf mal über hooks wie reshade. Aber generisch geht auch das nicht. Immer mit expliziter Anpassung an das Spiel dann zumindest.
Sharpening und reines PAA fällt mir da ein. Wobei für beides halt auch nur das fertige 2D image genutzt wird.


Denke bis zu DLSS2.0 war auch noch nicht klar, wie generisch es wirklich gehen kann - also ob das Deep Learning da zu einem Resultat kommt, welches auch spiele-unspezifisch gut funktioniert. Denn wenn das nicht gegeben ist, dann braucht man über die viele Arbeit das gleich in den Treiber/Renderpfad zu packen gar nicht nachdenken. Da waren sicher auch Ökonomische Gründe dahinter (erstmal PoC und so...)

DLSS 2.0 ist vor allem in Bezug auf das Neuronale Netzwerk und in Bezug auf das Inferencing mittels Tensor Cores anders. Die Implementierung selbst ist aber auch nicht so gigantisch anders.

Asaraki
2020-05-06, 12:49:25
Ist DLSS fast umsonst zu implementieren wenn die Engine TAA könnte? Ja.
Gilt das auch, wenn das Spiel schon fertig ist? Eher Nein.
In Zukunft wird das stets dabei sein, aber ob das als generischer rückwirkender 'Treiberseitiger Hack' kommen wird? Ich glaube nicht daran

Ich glaube da liegt der Hund, oder?

. Einzelne Spiele werden vielleicht nen Patch bekommen, weil die Devs das auf anderen Games mit der gleichen Engine etc. schon eingebaut haben und das quasi umsonst als Service liefern... aber auch nur wenn das Management "Kundenzufriedenheit" auf dem Excel führt.

DLSS 2.0 ist vor allem in Bezug auf das Neuronale Netzwerk und in Bezug auf das Inferencing mittels Tensor Cores anders. Die Implementierung selbst ist aber auch nicht so gigantisch anders.
Does the game know? Für das Game ist es ja weiterhin auch "Give picture, get better picture back" oder? (nein hab mir den GTC noch nicht angeschaut, grad @work schon neues Zugs am lernen...brain full)
Ich sehe, game intern, ja nur den kleinen Eingriff in die Renderauflösung der dazu kommt, den man bei TAA nicht macht. Aber eben, wie so oft ist "haben ja schon was fast identisches" in der Realität der Software eben "nicht günstig machbar" und der Preis bestimmt immer.

aufkrawall
2020-05-06, 12:49:49
Generisch ohne App-Zutun geht vermutlich schon wegen der temporalen Komponente nicht, denn wie will man über die zig verschiedenen Render-Schritte alle benötigten Informationen im Detail abgreifen? Sollte doch klar sein, dass das eine ziemlich unrealistische Erwartung ist.

robbitop
2020-05-06, 12:53:49
Auch muss das Spiel ja von dem Upsampling wissen. Es berechnet in eingestellter Auflösung. DLSS liefert nach der Verarbeitung/Upsamping des Rohbilds ja dann die höhere Auflösung. Das Spiel muss dann entsprechend PAA und das HUD anders rendern. Und es muss auch die Outputresolution kennen - ansonsten gibt es mit der eingestellten Auflösung aus.
Wie gesagt: ich bin da sehr sehr skeptisch, dass das generisch gehen soll.

Ggf. hooked NV ja auch eine bestimmte Auswahl von Spielen und andere setzen es nativ um. Aber einfach ein generischer Schalter DLSS für alle Spiele, die TAA haben =on -> unwahrscheinlich.

Ist DLSS fast umsonst zu implementieren wenn die Engine TAA könnte? Ja.
Gilt das auch, wenn das Spiel schon fertig ist? Eher Nein.
In Zukunft wird das stets dabei sein, aber ob das als generischer rückwirkender 'Treiberseitiger Hack' kommen wird? Ich glaube nicht daran

Ich glaube da liegt der Hund, oder?


. Einzelne Spiele werden vielleicht nen Patch bekommen, weil die Devs das auf anderen Games mit der gleichen Engine etc. schon eingebaut haben und das quasi umsonst als Service liefern... aber auch nur wenn das Management "Kundenzufriedenheit" auf dem Excel führt.
So in etwa.


Does the game know? Für das Game ist es ja weiterhin auch "Give picture, get better picture back" oder? (nein hab mir den GTC noch nicht angeschaut, grad @work schon neues Zugs am lernen...brain full)
Ich sehe, game intern, ja nur den kleinen Eingriff in die Renderauflösung der dazu kommt, den man bei TAA nicht macht. Aber eben, wie so oft ist "haben ja schon was fast identisches" in der Realität der Software eben "nicht günstig machbar" und der Preis bestimmt immer.
Schau dir den Vortrag an. Ohne das ist es IMO müßig.

Asaraki
2020-05-06, 13:45:55
Schau dir den Vortrag an. Ohne das ist es IMO müßig.

Zu Befehl und Danke für deine Erläuterungen =)

basix
2020-05-06, 14:48:52
Ggf. hooked NV ja auch eine bestimmte Auswahl von Spielen und andere setzen es nativ um. Aber einfach ein generischer Schalter DLSS für alle Spiele, die TAA haben =on -> unwahrscheinlich

Eine mögliche Lösung:
Man definiert eine entsprechende DLSS Schnittstelle via API (DX12U, Vulkan, NVAPI etc.), worüber man die relevanten Informationen vom Spiel erhält und Information ans Spiel zurückgeben kann. Ob man das überhaupt genug generisch abbilden kann, müsste einer der Insider / Experten zu diesem Thema sagen. Reichen gewisse standardisierte Informationen über Bewegungsvektoren, Geometrie, Auflösung etc.? Oder ist das aufgrund der unterschiedlichen Engines nur schwer machbar? Das effektive AI-Network könnte mit der Zeit trotzdem immer weiter verbessert werden, natürlich mit weniger Flexibilität, da man auf die Schnittstellendefinition limitiert ist. Momentan ist die Technik vermutlich aber noch zu stark im Fluss, um hier einen Standard definieren zu können.

Troyan
2020-05-06, 14:50:00
Siehe die Präsentation. Das macht nVidia. NVAPI hat Schnittstellen, an denen man die Parameter übergibt.

Jager
2020-05-07, 04:03:54
Man kann ja schreiben was man will, ich habe Control und Deliver us the Moon hier ;). Und beide Spiele sind mit DLSS 2.0 perfekt! Beide sehen mit den höchsten DLSS-Einstellungen mindestens so gut aus wie nativ! Ich bin wirklich erstaunt wie gut diese Technologie funktioniert. In Deliver.... sieht man mit DLSS 2.0 sogar eher weit entfernte Objekte; wie das angehen kann weiss ich nicht, aber es ist einfach so!

Mich interessiert auch was AMD da entwickeln werden, denn auch ihre next Navi wird sicher nicht schneller als eine RTX 2080Ti sein. Auch AMD werden da irgendetwas entwickeln müssen und hoffen das die Spielefirmen mitziehen...

Das nVidia mit Ampere in den nächsten Level gehen ist ja schon bekannt, und so wird da dann vielleicht auch ein DLSS 3 herauskommen das dann auf fast jedes Spiel anwendbar sein wird. Schön wäre das ;) Gerade die Antialiasingwirkung ist bei DLSS ja wunderbar. Das jetzt bei nativer Auflösung? Das wäre was :) Aber Ampere wird ja sowieso wesentlich schneller und da werden wir noch viel hören und erleben :).

PS: Deliver us the Moon ist mit DLSS einfach schöner als mit der nativen Grafik und rennt trotz vollem RTX superschnell auf meiner RTX 2080 bei 2560 :). Damit meine ich 60 - 100 FPS

Börk
2020-05-07, 12:58:44
@Jager

Sehe ich ähnlich, das Upsampling ist ja schon ganz nett und so - aber das eigentlich geile an DLSS ist ja das gelernte temporale sampling, welches TAA weit überlegen ist. Fände es spannend wenn das eben auch in nativer Auflösung nutzbar wäre. Nicht um Geschwindigkeit zu gewinnen, sondern um bessere Qualität zu haben. Aber vermutlich lässt sich das einfach nur nicht verkaufen...

Troyan
2020-05-07, 13:05:18
Du kannst Dowmsampling betreiben. Funktioniert perfekt.

DutM ist auch ein sehr gutes Paradebeispiel für die Überlegenheit von KI-Upscaling gegenüber TAA.
1080p mit DLSS:
https://s2.imagebanana.com/file/200406/ji2VsHFT.png

1080p mit TAA:
https://s2.imagebanana.com/file/200406/ahVjKExr.png

Das das TAA-Bild ggfs. im Hintergrund leicht schärfer wirkt, liegt an der Überschärfung, wie man am Vordergrund erkennen kann. Da hat es der Entwickler übertrieben...

Asaraki
2020-05-07, 13:14:14
@Jager

Sehe ich ähnlich, das Upsampling ist ja schon ganz nett und so - aber das eigentlich geile an DLSS ist ja das gelernte temporale sampling, welches TAA weit überlegen ist. Fände es spannend wenn das eben auch in nativer Auflösung nutzbar wäre. Nicht um Geschwindigkeit zu gewinnen, sondern um bessere Qualität zu haben. Aber vermutlich lässt sich das einfach nur nicht verkaufen...

Bin jetzt nicht sicher ob ich was durcheinander bringe, aber das gibt's im Prinzip (DLAA), ist jetzt hier einfach gleich kombiniert (was auch Sinn macht, je mehr ich darüber lese wird der getrennte Weg in Zukunft nicht mehr viel Sinn machen).

DLAA hat immer noch einen Speedvorteil gegenüber den konventionellen AA-Methoden, da es weniger Arbeit als relevant identifiziert, diesen Teil finden wir heute ja im DLSS auch wieder. DLSS ist ja aus zwei Gründen schnell, Auflösung (logo) und DL gestützte Kantenerkennung (Minimierung der Arbeit). Auflösung wird mit dem genialen Upscaling wieder kompensiert, aber der AA Vorteil bleibt sowieso.

Aber auch nach GCT und den alten Siggraph Slides bin ich jetzt nicht sicher ob das AA in DLSS wirklich "DLAA" ist, nV benutzt den Begriff nicht mehr seit sie DLSS pushen.

Wenn ich theoretisch DLSS einbaue, aber die interne Renderauflösung und die Outputauflösung gleich lassen würde (sofern die API das erlaubt)... dann hast du ja im Prinzip DLAA. Wobei dann eben, vermutlich, der Qualitsnachteil so gross ist, dass nVidia DLSS in allen Fällen für besser hält? Dont know... spricht ja nichts gegen DLSS von Nativ auf Superresolution und dann per DSR wieder runter :D Dürfte immer noch besser aussehen als Nativ und womöglich sogar schneller sein...

Asaraki
2020-05-07, 13:16:36
Du kannst Dowmsampling betreiben. Funktioniert perfekt.

DutM ist auch ein sehr gutes Paradebeispiel für die Überlegenheit von KI-
...
Das das TAA-Bild ggfs. im Hintergrund leicht schärfer wirkt, liegt an der Überschärfung, wie man am Vordergrund erkennen kann. Da hat es der Entwickler übertrieben...

Danke für die Screens. Genau was ich meinte, über kurz oder lang sieht DLSS auch mit Endauflösung Nativ besser aus, man kann sich also einfach die Arbeit sparen nur noch an AA Modi zu arbeiten :)

Interessant wird dann vielleicht der MaxQ Modus mit SuperResolution und Downsampling, aber da scheint nVidia bisher kein Material rausgeben zu wollen (oder ich fand es nicht).

Troyan
2020-05-07, 13:22:26
Ja, DLSS als "AA" Methode ist meilenweit überlegen. Es gewinnt vorallem dort, wo feine Geometrie dargestellt werden soll. Das schafft kein TAA auf dieser Welt - siehe Wolfenstein. Laut nVidia benötigt die 2080TI 1,5ms von 1080p auf 4k hochzuskalieren. Nutzen/Kosten-Faktor ist einfach unschlagbar.

aufkrawall
2020-05-07, 13:31:42
Es erscheint mir fragwürdig, mit DLSS überhaupt noch eine Renderauflösung >= Ausgabeauflösung zu verwenden, wenn die verbliebenen Artefakte fast ausschließlich auf temporaler Ebene auftreten und es ansonsten selbst mit massiv niedrigerer Auflösung den SSAA-Look hat. Einfach mehr Render-Pixel dürften das Problem wohl nicht stark lindern. Es würde dann mehr Sinn machen, mehr Renderzeit gezielt in die Beseitigung dieser Artefakte zu investieren. Ist dann die Frage, ob man das den Tensor Core noch aufdrücken, oder ob man das andere Bereiche der GPU erledigen lassen kann. Bzw. muss man ja erstmal überhaupt einen Weg finden.

robbitop
2020-05-07, 14:36:25
@Jager

Sehe ich ähnlich, das Upsampling ist ja schon ganz nett und so - aber das eigentlich geile an DLSS ist ja das gelernte temporale sampling, welches TAA weit überlegen ist. Fände es spannend wenn das eben auch in nativer Auflösung nutzbar wäre. Nicht um Geschwindigkeit zu gewinnen, sondern um bessere Qualität zu haben. Aber vermutlich lässt sich das einfach nur nicht verkaufen...
Es sollte ja auch mal DLAA geben. Davon wurde seit dem Turing Launch aber nix mehr gesagt. Ja kann man auch mit Downsampling machen. Aber der Filterkernel ist schonmal absolut für den Garten. Wenn das auch gleich mit bedacht ist, geht das sicher noch wesentlich besser.

Gast
2020-05-07, 17:09:41
In Deliver.... sieht man mit DLSS 2.0 sogar eher weit entfernte Objekte; wie das angehen kann weiss ich nicht, aber es ist einfach so!


Weil es quasi 8x8 Supersampling ist, zwar nicht spatial aber temporal.

Und wenn irgendeines der 64 Samples mal ein Objekt trifft, dann "weiß" DLSS dass es da ist.

BlacKi
2020-05-07, 18:33:59
hat jemand mal bedacht, welche auswirkungen das auf amd haben wird? selbst wenn sie auf den zug aufspringen(und das wort klauen nicht zu nutzen), dann werden sie zumindest zu spät zu party erscheinen. vl dauert es allerdings noch 2-3 jahre bis die dlss, dlaa spiele einen nennenswerte anteil betragen und es passt perfekt zum erscheinen der passenden karten von amd.

was mir aber sorgen macht ist der nicht ganz offene standard den nv gerade durchdrückt. der könnte das wieder gefährden.

troyans bilder zeigen einen unglaublich krassen vorteil.

dlss als sargnagel für amds gaming sparte, und danach der gesammten gaming sparte? wie seht ihr das?

dargo
2020-05-07, 18:39:50
dlss als sargnagel für amds gaming sparte, und danach der gesammten gaming sparte? wie seht ihr das?
:lol: :lol: :lol:

Dampf
2020-05-07, 18:56:42
hat jemand mal bedacht, welche auswirkungen das auf amd haben wird? selbst wenn sie auf den zug aufspringen(und das wort klauen nicht zu nutzen), dann werden sie zumindest zu spät zu party erscheinen. vl dauert es allerdings noch 2-3 jahre bis die dlss, dlaa spiele einen nennenswerte anteil betragen und es passt perfekt zum erscheinen der passenden karten von amd.

was mir aber sorgen macht ist der nicht ganz offene standard den nv gerade durchdrückt. der könnte das wieder gefährden.

troyans bilder zeigen einen unglaublich krassen vorteil.

dlss als sargnagel für amds gaming sparte, und danach der gesammten gaming sparte? wie seht ihr das?

Was? Also das find ich ja amüsant. :biggrin: Ein Sargnagel ist DLSS nicht, aber halt ein Vorteil für Nvidia Karten. Nicht mehr nicht weniger. Deswegen werden Titel auf AMD Grafikkarten trotzdem noch gut laufen. AMD muss halt mit dem Preis runtergehen um DLSS zu kontern.

Troyan
2020-05-07, 19:24:36
DLSS und Raytracing werden in Hand und Hand gehen. Damit hat sich das für AMD im Grunde erledigt. Die UE hat und Version 4.5 wird bald einen Branch mit DLSS erhalten. Weitere Engines wie Unity werden bestimmt folgen.

Das ist der iPhone Moment im GPU-Geschäft.

BlacKi
2020-05-07, 19:26:47
das fragezeichen ist euch aufgefallen?

aber dennoch, du weißt das hier der faktor 2-3 im raum steht? das kann amd nicht mit billigeren preisen abfedern.

sind die gewinne nur mit aktivem raytracing und die gewinne ohne raytracing deutlich kleiner? oder gibts dlss nur mit raytracing?

Troyan
2020-05-07, 19:36:47
Nein, der Gewinn hängt einzig von der Grundgeschwindigkeit ab. Durch die fixen Kosten von DLSS gewinnt man mehr in Control (4K 60FPS ohne Raytracing) als in Wolfenstein YB (4k >100FPS ohne Raytracing).

Rooter
2020-05-07, 21:01:38
Die Grundgeschwindigkeit ist aber mit RT viel geringer als ohne. Und mit der geringeren Auflösung braucht's einfach weniger teure Strahlen.

MfG
Rooter

Döner-Ente
2020-05-08, 08:40:44
Den Gedanken, dass DLSS 2.0, wenn es immer häufiger in Spielen eingesetzt wird, AMD in Schwierigkeiten bringen könnte, hätte ich auch schon.
Wenn ich bei Hersteller A für ~80 Fps eine 700-800-€-Karte brauche und bei Hersteller B reicht dank der geheimen Voodoo-Sauce namens DLSS eine 400-500-€-Karte...wie werde ich mich wohl entscheiden?

Grendizer
2020-05-08, 09:23:42
Den Gedanken, dass DLSS 2.0, wenn es immer häufiger in Spielen eingesetzt wird, AMD in Schwierigkeiten bringen könnte, hätte ich auch schon.
Wenn ich bei Hersteller A für ~80 Fps eine 700-800-€-Karte brauche und bei Hersteller B reicht dank der geheimen Voodoo-Sauce namens DLSS eine 400-500-€-Karte...wie werde ich mich wohl entscheiden?


Natürlich für die 800 Euro Karte, da man auf Standbildern Qualitätsunterschiede im Side by Side Vergleich sehen kann. :wink:

BigKid
2020-05-08, 09:34:26
Natürlich für die 800 Euro Karte, da man auf Standbildern Qualitätsunterschiede im Side by Side Vergleich sehen kann.
Jemand hat die Frage nach DLSS und MAX-Q aufgeworfen.
Das ist auch der Teil der mich interessiert. Ich glaube mit DLSS wird es AMD im Bereich der Mobilen-Lösungen noch schwerer haben.
DLSS kann gerade bei TDP/Verbrauchslimitierten Situation ordentlich was bringen... Ich glaube das habt ihr zu wenig auf dem Schirm...
-> mehr Leistung bei gegebenem Verbrauch -> könnte mobiles Gamining in (noch) kleineren Systemen ermöglichen
-> weniger Verbrauch bei gleicher Leistung -> leiser, längere Laufzeit
Wenn man das jetzt noch mit dem Sprung eines neuen Nodes (Fertigung) zusammen nimmt, dann könnte für Laptop-Freunde da ein wirklich netter Sprung kommen Ende 2020/Anfang 2021
Und für jetzt bedeutet das, dass es sich doch lohnen könnte auf ne RTX2060 (MAX-Q) statt ner GTX1660 zu setzen...

Den Gedanken, dass DLSS 2.0, wenn es immer häufiger in Spielen eingesetzt wird, AMD in Schwierigkeiten bringen könnte, hätte ich auch schon.
Wenn ich bei Hersteller A für ~80 Fps eine 700-800-€-Karte brauche und bei Hersteller B reicht dank der geheimen Voodoo-Sauce namens DLSS eine 400-500-€-Karte...wie werde ich mich wohl entscheiden?
Die spannende Frage hierbei ist imho auch wie NV es handhaben will, dass DLSS die Grenzen zwischen Midrange und High-End verschmiert wenn es erstmal breit unterstützt wird... Ich hoffe nicht dass sie den Trend fortschreiben und dann noch mehr Low end als High-End vermarkten... Aber glaubst du ernsthaft NV verkauft dir eine Karte die Hersteller B bei 700 Euro schlagen kann für 400 Euro ??? Grade NVidia ?
Das wiederum wird imho nur dann nicht passieren, wenn AMD ihnen auf den Fersen bleibt... bzw. wieder näher rann kommt... Oder INtel... Auf jeden Fall braucht es Druck durch Konkurrenz...

Oder wie es aussieht wenn DLSS3.0 kommt. Können das die älteren Karten ? Ist es Abwärtskompatibel ? Wird DLSS2.0 dann zusätzlich weiter unterstützt ? Oder heisst es dann wie schon weiter oben "geunkt" - brauchst halt ne neue Karte für DLSS...

BlacKi
2020-05-08, 10:00:09
Natürlich für die 800 Euro Karte, da man auf Standbildern Qualitätsunterschiede im Side by Side Vergleich sehen kann.
hast du die benchmarks bei CB gesehen? man muss eben betrachten ab wann man den kompromiss bereit ist einzugehen. sicher wird es leute geben die sich ne 3080ti oder big navi kaufen werden. aber wenn man mit dlss 1000€ sparen kann, ab irgendeinem punkt ist man einfach gewillt den kompromiss einzugehen.

vl ordnet man später auch nicht nach fps sondern qualität. denn wenn eine 3060 dank dlss performance 4k120fps ohne raytracing halten kann und man garnicht schneller braucht, dann sortiert man eben optisch die performance ein statt nach fps.

Grendizer
2020-05-08, 10:05:51
hast du die benchmarks bei CB gesehen? man muss eben betrachten ab wann man den kompromiss bereit ist einzugehen. sicher wird es leute geben die sich ne 3080ti oder big navi kaufen werden. aber wenn man mit dlss 1000€ sparen kann, ab irgendeinem punkt ist man einfach gewillt den kompromiss einzugehen.

vl ordnet man später auch nicht nach fps sondern qualität. denn wenn eine 3060 dank dlss performance 4k120fps ohne raytracing halten kann und man garnicht schneller braucht, dann sortiert man eben optisch die performance ein statt nach fps.


Meine Aussage war ironisch gemeint, das nächte Mal mach ich eine Smiley dran

Timbaloo
2020-05-08, 10:21:56
Natürlich für die 800 Euro Karte, da man auf Standbildern Qualitätsunterschiede im Side by Side Vergleich sehen kann.
:ulol::ulol::ulol:

Grendizer
2020-05-08, 10:25:46
:ulol::ulol::ulol:

Ich habe mal den Smiley dran gemacht, augenscheinlich erkennt Ironie niemand mehr, wenn man es nicht entsprechend markiert.

sven2.0
2020-05-08, 10:37:08
Ich hab mal aus Neugier Deliver us the moon ausprobiert mit 4K (alles auf Max) und DLSS Qualitiy auf ner 2080Ti. Schon beeindruckend wie fluffig das läuft und wie gut das aussieht.

BlacKi
2020-05-08, 10:46:23
Ich habe mal den Smiley dran gemacht, augenscheinlich erkennt Ironie niemand mehr, wenn man es nicht entsprechend markiert.
ach, und skynets kommentare sind auch nur pure ironie:confused: jetzt erscheinen seine posts für mich in einem ganz anderen licht!
http://www.joeydevilla.com/wordpress/wp-content/uploads/2012/04/mind-blown.gif

Grendizer
2020-05-08, 10:51:39
Wollte ja nur ausdrücken, das die Performancevorteile, den im Standbild evtl. sichtbaren Qualitätsunterschied im Bewegtbild bei weitem überwiegen. :biggrin:

Timbaloo
2020-05-08, 10:58:09
Ich habe mal den Smiley dran gemacht, augenscheinlich erkennt Ironie niemand mehr, wenn man es nicht entsprechend markiert.
Also ich lachte über die Ironie :)

Asaraki
2020-05-08, 10:59:03
Ich habe mal den Smiley dran gemacht, augenscheinlich erkennt Ironie niemand mehr, wenn man es nicht entsprechend markiert.
Also mir persönlich war das sonnenklar :-) Fand ich auch ziemlich witzig :)

Ich hab mal aus Neugier Deliver us the moon ausprobiert mit 4K (alles auf Max) und DLSS Qualitiy auf ner 2080Ti. Schon beeindruckend wie fluffig das läuft und wie gut das aussieht.

Mach ich heute Abend (aber 'nur' 2080S). Kann man das mit Pad spielen? Hab 4K nur im Wohnzimmer am TV.

sven2.0
2020-05-08, 11:07:10
Mach ich heute Abend (aber 'nur' 2080S). Kann man das mit Pad spielen? Hab 4K nur im Wohnzimmer am TV.

Glaube das ist sogar besser, mit M+T ist es ein ziemlicher Krampf bisher. Aber erwarte kein gutes Spiel ;)

Dampf
2020-05-08, 14:58:00
Könnte man eigentlich DLSS und VRS Tier 2 zusammen nutzen? In Wolfenstein ging das ja noch nicht.

robbitop
2020-05-08, 16:03:23
Wäre das nicht fast ein bisschen doppelt gemoppelt? VRS reduziert (zwar adaptiv) ja auch lokal die Auflösung. Zumindest für das Shading (was ja heute den Großteil der Pixelberechnung ausmacht).

Timbaloo
2020-05-08, 16:30:50
Eventuell könnte man je nach "confidence" des DLSS-Modells die Auflösung/Genauigkeit in gewissen Bildbereichen reduzieren/erhöhen. Sprich anstatt von mit einer konstanten Auflösung (z.B. 720p) auf die Zielauflösung (z.B. 1440p) hochzurechnen, könnte man die 1280*720=921600 Pixel sinnvoll dort hin verteilen von DLSS "erwartungsgemäß" nicht so gut funktioniert. Sprich Anzahl "gerenderte Pixel" = konstante, aber die Dichte eben variabel.

Neosix
2020-05-08, 17:02:02
Aber man könnte tatsächlich ja "target fps" einführen. Hat man "zuviele" FPS gewonnen, schalte in Quality mode. Sonst geht halt auf Balance oder weiter auf Performance runter. Ist vielleicht für Leute die gerne überall 144FPS haben nicht so wichtig. Aber ich gebe mich mit stabilen 60 bei guter BQ schon zufrieden. Quasi wie bei Adaptive V-Sync. Vielleicht ja was für DLSS v3

Gast
2020-05-08, 17:29:13
Wollte ja nur ausdrücken, das die Performancevorteile, den im Standbild evtl. sichtbaren Qualitätsunterschied im Bewegtbild bei weitem überwiegen. :biggrin:

Real ist es eher umgekehrt, im Standbild ist DLSS immer quasi Perfekt.

In Bewegung kann es theoretisch immer noch die einen oder anderen Artefakte geben, die aber real geringer als mit TAA ausfallen und durch die Bewegung natürlich auch schlechter sichtbar sind als bei Standbildern.

BTW: Ich habe gerade wieder mal Metro Exodus gestartet, welches ja das "alte" DLSS verwendet.
Was mich da im nachhinein am meisten überrascht hat ist nicht die Qualität, die ist gefühlt in Metro Exodus großteils gleich zu nativer Auflösung, mal ist die eine Variante besser, mal die andere, aber wie wenig Performance man mit dem alten DLSS gegenüber DLSS 2.0 gewinnt.
DLSS 2.0 ist nicht nur ein riesiger Qualitätssprung, sondern auch ein großer Performancesprung.

Dampf
2020-05-08, 17:29:54
Wäre das nicht fast ein bisschen doppelt gemoppelt? VRS reduziert (zwar adaptiv) ja auch lokal die Auflösung. Zumindest für das Shading (was ja heute den Großteil der Pixelberechnung ausmacht).

Ja, aber so kann man halt noch mehr GPU-Leistung rauskitzeln. Wenn du z.B. auf 835p renderst (DLSS Balanced in 1440p), könnte man auf diese 835p ja VRS anwenden. Da die Auflösung nur in den Bereichen reduziert wird, die man nicht so bemerkt, kann man wieder FPS gewinnen ohne dass die Qualität leidet, so muss DLSS in einigen Augenblicken nur 734p hochskalieren, in den anderen 630p in wiederum anderen 810p usw usw. Das spart wieder erheblich GPU-Leistung. Eine feste input resolution braucht DLSS 2.0 ja nicht, oder? Dann sollte das eigentlich machbar sein.

Aber ich denke Nvidia wird sich da schon was einfallen lassen, schließlich ist VRS ein wichtiger Bestandteil von DX12 Ultimate, die werden schon darauf achten, dass sich DLSS nicht mit VRS beißt.

Aber überlegt euch mal die Performance Gewinne... VRS, wenns gut implementiert wird, kann 30% oder gar mehr Leistung freischaufeln (auf Lichteffekte angwendet) und dann noch DLSS dazu holy moly. Jetzt noch alles Overkill aber für die nächste Spielegeneration, die ja bestimmt aufwendiger wird, kann man jedes % Performance mitnehmen!

Grendizer
2020-05-08, 17:33:21
Wie umfänglich ist eigentlich die Unterstützung von Spielen ? Nur aktuelle Blockbuster oder so ziemlich alles. Was ist mit Early Access und Independent Games ?

Troyan
2020-05-08, 17:36:39
So ziemlich alles. Ist Bestandteil eines Unreal Engine Branches und kann somit von fast allen UE4 Spielen unterstützt werden.

aufkrawall
2020-05-08, 17:39:22
"So ziemlich alles" in der Theorie. 2.0 gibt es bisher nur in einer Hand voll Titel und es dürfte weiterhin einen signifikanten Anteil an Neuerscheinungen geben, die es nicht haben werden.

Neosix
2020-05-08, 18:12:59
Wollte ich auch schon sagen, bei "ziemlich alles" trifft genau das Gegenteil zu. Sucht man nach der DLSS Liste der Spiele, kommen da nur "veraltete" Sachen höhstens was von Jahresanfang. Nur sind seit dem irgend wie keine Titel dazugekommen. Auch in den News wird nur von DLSSv2 berichtet, aber dann halt bei Titeln die schon v1 hatten. News über neue Titeln? Fehlanzeige.
Also da angeblich v2 ja so einfach zu implementieren ist, höre ich genau 0 von neun Titel. Wo sind die News ala "diese 5 neue Spiele unterstützen ab heute Nvidia DLSS2 Technik"? Nix fehlanzeige, nada.

Wie wärs mal mit Unity Unterstützung? Vielleicht kriege ich bei Tarkov dann vernümftige FPS hin :(

Dampf
2020-05-08, 18:14:44
Wollte ich auch schon sagen, bei "ziemlich alles" trifft genau das Gegenteil zu. Sucht man nach der DLSS Liste der Spiele, kommen da nur "veraltete" Sachen höhstens was von Jahresanfang. Nur sind seit dem irgend wie keine Titel dazugekommen. Auch in den News wird nur von DLSSv2 berichtet, aber dann halt bei Titeln die schon v1 hatten. News über neue Titeln? Fehlanzeige.
Also da angeblich v2 ja so einfach zu implementieren ist, höre ich genau 0 von neun Titel. Wo sind die News ala "diese 5 neue Spiele unterstützen ab heute Nvidia DLSS2 Technik"? Nix fehlanzeige, nada.

Welche neuen Spiele sind denn die letzten Wochen für den PC erschienen? Da hast du deine Antwort :smile:

Slipknot79
2020-05-08, 18:41:26
"Stellt uns den Mond zu" kostet gerade 10EUR bei MMOGA.

sven2.0
2020-05-08, 19:30:24
Oder fürn Eur im Gamepass, dann kann man auch gleich Mechwarrior 5 testen ;)

Neosix
2020-05-08, 19:47:28
OT: Mechwarrior 5 im MS Store ist aber ohne Modsupport, und glaubt mir MW5 ohne Modsupport ist unspielbar. Doppelt wenn ihr im coop spielen wollt.

Distroia
2020-05-08, 19:49:30
DLSS und Raytracing werden in Hand und Hand gehen. Damit hat sich das für AMD im Grunde erledigt. Die UE hat und Version 4.5 wird bald einen Branch mit DLSS erhalten. Weitere Engines wie Unity werden bestimmt folgen.

Das ist der iPhone Moment im GPU-Geschäft.

Genau, die Grafikengines werden in Zukunft DLSS und Raytracing ausschließlich auf NVidia-Hardware unterstüzen. Die nächste Konsolengeneration mit AMD-Hardware wird zwar beides unterstützen, aber den Programmieren wird es egal sein und sie werden sich weigern, beides zu implementieren. Einfach so, weil sie es können. Dann gibt es eben beides nicht für die Konsolen. Genau so wird es kommen.

Neosix
2020-05-08, 19:52:04
Das ist doch Blödsinn. Raytracing ist keine "Erfindung" von Nvdia sondern RTX ist nur deren Beschleunigung des DX RT Standards von MS. Sobald AMD auf dem PC ebenfalls Raytracing über diese Schnittstelle anbietet wird RT genau so auf AMD laufen.

ps. ups sorry Scheuklappe und so

Distroia
2020-05-08, 19:55:15
Ich dachte, ich hätte den Sarkasmus deutlich genug gemacht.

BlacKi
2020-05-08, 19:55:23
Das ist doch Blödsinn. Raytracing ist keine "Erfindung" von Nvdia sondern RTX ist nur deren Beschleunigung des DX RT Standards von MS. Sobald AMD auf dem PC ebenfalls Raytracing über diese Schnittstelle anbietet wird RT genau so auf AMD laufen.
dlss ist nicht raytracing.

aber direct ml soll wohl dlss am nächsten kommen.

Dampf
2020-05-08, 20:00:23
dlss ist nicht raytracing.

aber direct ml soll wohl dlss am nächsten kommen.

Hehehe... ich kann schon gar nicht mehr zählen, wie viele DirectML und DLSS verwechseln. DirectML ist kein AMD Equivalent zu DLSS, es ist nur eine Schnittstelle für maschinelles Lernen in Games. Es kann genutzt werden, um eine Rekonstruktion-KI wie DLSS zu integrieren aber auch für so viel anderes AI Zeugs. Dafür braucht es jedoch ordentlich Dampf (also mich!). Die AI-Leistung wird bei Nvidia von den Tensor Cores zur Verfügung gestellt, wies bei AMD aussieht weiß man noch nicht so richtig.

Gast
2020-05-08, 23:14:29
Wie umfänglich ist eigentlich die Unterstützung von Spielen ? Nur aktuelle Blockbuster oder so ziemlich alles. Was ist mit Early Access und Independent Games ?

Beispielsweise Deliver us The Moon hat sowohl RTX als auch DLSS implementiert.

Auch Bright Memory, was sich sogar noch im Early Access befindet hat bereits DLSS.

robbitop
2020-05-09, 08:51:39
Ich bin mir auch ziemlich sicher, dass es von AMD mittelfristig AI Upsampling geben wird. Sony und MS werden das auf den Konsolen auch wollen. Das Potenzial ist einfach zu groß.

Troyan
2020-05-09, 10:20:56
Genau, die Grafikengines werden in Zukunft DLSS und Raytracing ausschließlich auf NVidia-Hardware unterstüzen. Die nächste Konsolengeneration mit AMD-Hardware wird zwar beides unterstützen, aber den Programmieren wird es egal sein und sie werden sich weigern, beides zu implementieren. Einfach so, weil sie es können. Dann gibt es eben beides nicht für die Konsolen. Genau so wird es kommen.

Raytracing ist viel zu lahm ohne Upscaling. AI Upscaling dagegen macht eine 300€ RTX2060 schon heute nutzbar für Raytracing und läuft auf einem ähnlichen Niveau wie eine 2080TI ohne AI Upscaling.

Genauso wie jeder andere Handy-Hersteller (Nokia) Telefone mit Touchscreens herstellen konnte, hat Apple nunmal die Regeln des Marktes komplett geändert.

Karümel
2020-05-09, 10:36:00
Ich bin mir auch ziemlich sicher, dass es von AMD mittelfristig AI Upsampling geben wird. Sony und MS werden das auf den Konsolen auch wollen. Das Potenzial ist einfach zu groß.
Geht das überhaupt über "Software-update"?
Die Konsolen sind von der Hardware doch die nächsten Jahre fix.

Troyan
2020-05-09, 10:39:24
Die meisten Gewinne kommen zurzeit von besserer Software. Deep Learning ist so neu, dass jedes Jahr durch Anpassungen der Tools, Suits und sonstiges massive Leistungssteigerungen möglich sind. nVidia hat laut eigener Aussage die Kosten für das Upscaling von DLSS von Version 1 auf 2 halbiert.

DLSS2.0 ist eine reine Softwareverbesserung und die Ergebnisse sind schon ziemlich gut.

robbitop
2020-05-09, 10:43:45
@Karümel
Inferencing kann jede moderne GPU. Da braucht man nichts nachzurüsten. Sind halt Integer Operationen.Kostet halt Compute Leistung. Dafür hat NV die Tensor Cores (die können Matritzen und Vektoren im Integerformat rechnen - zusätzlich zu den FPUs).
Für Inferencing braucht es auch keine hihe Genauigkeit. 8 bit reicht fast immer - oft auch 4 bit.

RDNA2 hat zusätzlich zu den FPUs auch INT ALUs mit deutlich erhöhtem Durchsatz vei INT8 und INT4. (allerdings sind das Vektor ALUs - Matritzen kosten halt mehrere Takte)
NVs Tensor Cores sind dahingegend schneller (die gabs übrigens noch vor Turing und Volta schon in googles TPU und in mobile socs - nix neues und auch keine Rocket Science).

Die Frage ist am Ende wie viel Inferencing Leistung man für den Anwendungszweck wirklich braucht. Im Ernstfall ist AI Upsampling dann halt ein wenig langsamer.
Das gibge prinzipiell aber auf jeder modernen GPU. Auch auf Pascal oder Maxwell oder GCN. Kostet dann halt Computeleistung und wäre nicht ganz so schnell.

Die meisten Gewinne kommen zurzeit von besserer Software. Deep Learning ist so neu, dass jedes Jahr durch Anpassungen der Tools, Suits und sonstiges massive Leistungssteigerungen möglich sind. nVidia hat laut eigener Aussage die Kosten für das Upscaling von DLSS von Version 1 auf 2 halbiert.

DLSS2.0 ist eine reine Softwareverbesserung und die Ergebnisse sind schon ziemlich gut.

Wobei ein nicht unwesentlicher Teil daher kommt, dass man das Inferencing seit dlss 2.0 auf den Tensor Cores macht. Vorher lief das über die FPUs mit.

Troyan
2020-05-09, 10:48:45
Bis auf Control lief DLSS schon immer über die TensorCores.

robbitop
2020-05-09, 10:54:21
Das hat NV im GTC Talk IIRC aber anders dargestellt. Das wäre auch nicht konsistent.

Troyan
2020-05-09, 11:00:58
Doch, das wäre es. Control hat eine Shader-Variante erhalten, die ein ähnliches Ergebnis liefern sollte. Die vorigen Versionen haben per AI und Tensorcores rekonstruiert. Dazu gibt es auch im Beyond3d.com Ausschnitte aus nVidias Tools.

Egal ob die Star Wars Demo, Final Fantasy oder Battlefield 5 - DLSS wurde immer über die TC ausgeführt.

Distroia
2020-05-09, 13:55:40
Raytracing ist viel zu lahm ohne Upscaling. AI Upscaling dagegen macht eine 300€ RTX2060 schon heute nutzbar für Raytracing und läuft auf einem ähnlichen Niveau wie eine 2080TI ohne AI Upscaling.

Genauso wie jeder andere Handy-Hersteller (Nokia) Telefone mit Touchscreens herstellen konnte, hat Apple nunmal die Regeln des Marktes komplett geändert.

Was hat das mit meinem Kommentar zu tun? Es ging doch darum, dass du behauptet hast, AMD würde in Zukunft kein Raytracing und Deep Learning Upscaling können.

BlacKi
2020-05-09, 15:08:18
also würde dlss auch auf pascal oder anderen karten ohne tensor cores ebenfalls gewinne bringen?

Dampf
2020-05-09, 15:32:36
also würde dlss auch auf pascal oder anderen karten ohne tensor cores ebenfalls gewinne bringen?

Die Shader-Variante DLSS 1.9 schon. Wobei ich mir nicht sicher bin, ob die nicht doch die Tensor Cores zumindest als Beschleunigung nutzt. Ich kann mich daran erinnern, dass ich Tensor Aktivität in Nsight mit DLSS 1.9 in Control gemessen hab.

DrFreaK666
2020-05-09, 15:55:57
Mal eine Noob-Frage: wäre es irgendwie möglich einen Reshade-Shader zu schreiben, der das Bild ähnlich DLSS verbessert?

Asaraki
2020-05-09, 16:01:57
also würde dlss auch auf pascal oder anderen karten ohne tensor cores ebenfalls gewinne bringen?

Ja, eigentlich sobald der Gewinn durch DLSS grösser ist als das zusätzliche Bottleneck, das du halt ohne dedizierte Cores dafür hast. Wo diese Grenze liegt kann ich aber nicht abschätzen, aber "würde" kann man mit Ja beantworten.

Mal eine Noob-Frage: wäre es irgendwie möglich einen Reshade-Shader zu schreiben, der das Bild ähnlich DLSS verbessert?

Nein, DLSS geht nicht. DLAA ginge, man könnte theoretisch auch in Post noch das Bild abgreifen und einen reinen Detail Enhancement Step machen gestützt auf DL, aber der Aufwand... ob sich das jemals lohnen würde? Behaupte mal bis das brauchbar wäre, hat jede GPU von Haus aus was Besseres.

Troyan
2020-05-09, 16:49:46
Was hat das mit meinem Kommentar zu tun? Es ging doch darum, dass du behauptet hast, AMD würde in Zukunft kein Raytracing und Deep Learning Upscaling können.

Nein, ich habe gesagt, dass AMD es schwer haben wird, weil sie eben kein AI Upscaling haben werden. Irgendein Upscaling ist ja nicht relevant. Und ohne TensorCores ist der Leistungsverlust viel größer und führt das ganze fast ad absurdum. Von nVidia die Kosten des Upscaling in ms:
https://www.hardwareluxx.de/images/cdn01/5F6A5B3D8D794482AC75DD9B9192710B/img/8BB280B9FEE6436FBE321FE83CA3814E/NVIDIA-GTC20-DLSS2-03_8BB280B9FEE6436FBE321FE83CA3814E.jpg
https://www.hardwareluxx.de/index.php/news/hardware/grafikkarten/52797-gtc20-nvidia-erlaeutert-dlss-2-0-im-detail.html

Die 2060S hat 60 TLFOPs FPS16 und 120TOPs INT8. Mit der Leistung benötigt die Karte 2,6ms um von 1080p auf 4K hochzuskalieren. Die XBSX hat nur 24 TFLOPs FP16 und 48TOPs INT8. 2,5x weniger Leistung ergeben theoretisch 6,5ms... Klar sind 15ms immer noch besser als 33ms, aber Turing wird ja nicht der Konkurrent sein.

Derbinger
2020-05-09, 16:58:14
Mich interessiert, wie DLSS 2 in Bewegung aussieht. Den Screenshots nach scheint es das Bild extrem viel ruhiger zu machen, da all die filigranen Details anständig angezeigt werden. Videos sind immer zu matschig um das genau erkennen zu können.

BlacKi
2020-05-09, 17:16:30
mich interessieren auch die auswirkungen wenn man details reduziert. LoD und co. hätte ich ne turing karte würde ich soooviel testen^^

https://youtu.be/eS1vQ8JtbdM?t=460

Distroia
2020-05-09, 17:32:44
Nein, ich habe gesagt, dass AMD es schwer haben wird, weil sie eben kein AI Upscaling haben werden.

Nein, du hast das geschrieben:

DLSS und Raytracing werden in Hand und Hand gehen. Damit hat sich das für AMD im Grunde erledigt. Die UE hat und Version 4.5 wird bald einen Branch mit DLSS erhalten. Weitere Engines wie Unity werden bestimmt folgen.

Das ist der iPhone Moment im GPU-Geschäft.


Irgendein Upscaling ist ja nicht relevant.

Deswegen sprach ich ja auch von "Deep Learning Upscaling". Man kann sich jetzt um die Bezeichnungen streiten, da muss man warten, welche sich durchsetzen, aber zumindest sollte klar gewesen sein, was ich gemeint habe.


Und ohne TensorCores ist der Leistungsverlust viel größer und führt das ganze fast ad absurdum. Von nVidia die Kosten des Upscaling in ms:
https://www.hardwareluxx.de/images/cdn01/5F6A5B3D8D794482AC75DD9B9192710B/img/8BB280B9FEE6436FBE321FE83CA3814E/NVIDIA-GTC20-DLSS2-03_8BB280B9FEE6436FBE321FE83CA3814E.jpg
https://www.hardwareluxx.de/index.php/news/hardware/grafikkarten/52797-gtc20-nvidia-erlaeutert-dlss-2-0-im-detail.html

Die 2060S hat 60 TLFOPs FPS16 und 120TOPs INT8. Mit der Leistung benötigt die Karte 2,6ms um von 1080p auf 4K hochzuskalieren. Die XBSX hat nur 24 TFLOPs FP16 und 48TOPs INT8. 2,5x weniger Leistung ergeben theoretisch 6,5ms... Klar sind 15ms immer noch besser als 33ms, aber Turing wird ja nicht der Konkurrent sein.

Und du weißt genau, dass man wirklich diese Int4- oder Int8-Leistung braucht? Vielleicht hat AMD eine effizentere Implementierung. Oder vielleicht könnte man mit weniger Aufwand vergleichbare Ergebnisse erzielen, weil die Unterschiede nur marginal wären. Ich bezweifle, dass du genug in der Materie steckst, um das beurteilen zu können. Bei RTX kosten die Tensor Cores über 20% Fläche. Klar wollen die voll ausgenutzt werden, wenn sie schon mal da sind, das heißt aber nicht, dass es wirklich nötig war, soviel Chipfläche dafür zu investieren.

AI-Upscaling scheint kein Hexenwerk zu sein. Samsung hat sogar einen Fernseher, der AI-Upscaling auf 8k unterstützt:

https://www.theverge.com/ad/18691640/samsung-8k-tvs-ai-upscaling-picture-quality

Und du bist dir so sicher, dass AMD nicht etwas vergleichbares implementieren kann, bei deutlich höhere Hardware-Leistung deutlich niedrigerer Auflösung?


Übrigens, wenn du schon behauptest, DLSS wäre nicht in Verbindung mit Raytracing möglich, solltest du vielleicht eher die Zeiten für das Upscaling auf 1080p betrachten. Raytracing und Upscaling auf 4k auf den Konsolen dürfte schwierig werden. In den Fällen wäre der Int8-Durchsatz kaum noch relevant, weil man nur noch ein viertel davon bräuchte.

Ich würde also sagen, lass uns einfach mal abwarten.

robbitop
2020-05-09, 18:27:39
Da RDNA2 zusätzliche INT ALUs (aber eben nicht so viele) die auch noch deutlich erhôhten INT8 und INT4 Durchsatz haben (und das für Inferencing schon gute Voraussetzungen sind), sollte das auch mit RDNA2 machbar sein. Keiner hier kennt die tatsächliche Last des Inferencings von dlss 2.0. Kann gut sein, dass das Inferencing nur einen Bruchteil der TCs bedarf.

IIRC gab es auf der XSX HW bereits eine AI Upsampling Demo..

Das wird IMO mit extrem hoher Wahrscheinlichkeit schon in dieser Konsolengeneratiin - gepusht durch Sony und MS kommen. Das Potenzial ist einfach zu groß.
Das wird dann sicher lich via AMD auch auf den PC überschwappen.


Sollte der Bedarf nach Inferencing Performance auch bei AMD steigen (wobon ich mal ausgehe), wird man auch Matritzen ALUs verbauen. Seit RDNA gibt es eine ~5Q Kadenz mit geupdateter uArch. Wenns notwendig ist/deultich was beingt, wird das dann schon kommen.
RT Beschleunigung ist ja auch bereits in RDNA2 enthalten. Ggf reichen für vieles an Inferencing in Gamingbereich auch schon die beschleunigten INT ALUs.

Matritzen ALUs sind alles andere als schwarze Magie. Gab es lange vor Turing.
Der große Aufwand wird das neuronale Netzwerk und der Algorithmus.

RT und AI Upscaling sind toll und disruptiv. Werden mittelfristig aber beide IHVs (wenn nicht sogar auch Intel) haben.

Dampf
2020-05-09, 21:53:29
Ich hoffe wirklich sehr, die "INT ALUs" auch auf der PS5 und den PC GPUs vorhanden sind. So wie es Microsoft beschreibt, haben sie diese Hardware nachträglich in die Xbox Series X eingebaut und ihr wording lässt vermuten, dass es sich nicht um ein RDNA2 Feature handelt. Das ganze ist echt seltsam, denn so wie es bei DF steht, nutzt die XSX für die INT-Operationen die Shader Cores. MS wiederum behauptet aber, dass die Auto HDR AI keine Belastung für die Shader und den Speicher darstellt. Echt verwirrend.

Aber AI ist super wichtig für die nächste Generation an Spielen. AMD sollte definitiv was ähnliches in die RDNA2 Architektur einbauen. Ich gehe davon aus, dass neuronale Netze in Spielen demnächst sehr an Bedeutung gewinnen, da ist es natürlich super wenn man genügend AI Power zur Verfügung stellen kann, ohne die Shader ALUs allzu sehr zu belasten.

Neosix
2020-05-09, 21:56:36
Hat nicht schon Sony bei der PS4 mit Rekonstruktion experimentiert, checkerboard rendering und so. Und dort temporal Infos rekonstruiert? (wenn ich da nichts durch einander bringe). Warum sollte sich bei der PS5 das nicht weiter verfolgen?

Dampf
2020-05-09, 21:59:15
Hat nicht schon Sony bei der PS4 mit Rekonstruktion experimentiert, checkerboard rendering und so. Und dort temporal Infos rekonstruiert? (wenn ich da nichts durch einander bringe). Warum sollte sich bei der PS5 das nicht weiter verfolgen?

Checkerboarding wird doch schon lange auf den jetzigen Konsolen eingesetzt. Das ist ganz okay aber es ist halt wirklich kein Vergleich zu AI-Rekonstruktion wo das Bild teilweise besser aussieht als nativ. Man merkt an gewissen Stellen deutlich, dass Checkerboarding kein natives Bild ist!

basix
2020-05-09, 22:26:13
Ich hoffe wirklich sehr, die "INT ALUs" auch auf der PS5 und den PC GPUs vorhanden sind. So wie es Microsoft beschreibt, haben sie diese Hardware nachträglich in die Xbox Series X eingebaut und ihr wording lässt vermuten, dass es sich nicht um ein RDNA2 Feature handelt.

INT4 / INT8 ist ein offizielles Features von RDNA. Siehe RDNA1 Whitepaper (S.13, Figure 9): https://www.amd.com/system/files/documents/rdna-whitepaper.pdf
Das läuft unter Mixed Precision / Rapid Packed Math über die normalen Shader ALUs.

Bei RDNA2 am PC wird das mit grosser Wahrscheinlichkeit dabei sein (Navi 10 ist der einzige RDNA Chip, welcher das nicht hat) und ebenso bei der PS5.

Das HDR AI hat MS evtl. dediziert in den Chip gegossen, halte ich aber für wenig wahrscheinlich.

BlacKi
2020-05-09, 22:27:39
Checkerboarding wird doch schon lange auf den jetzigen Konsolen eingesetzt. Das ist ganz okay aber es ist halt wirklich kein Vergleich zu AI-Rekonstruktion wo das Bild teilweise besser aussieht als nativ. Man merkt an gewissen Stellen deutlich, dass Checkerboarding kein natives Bild ist!
auf 4k soll das noch ok sein, aber auf meiner slim in FF war das grausam.

robbitop
2020-05-10, 09:11:19
Ich hoffe wirklich sehr, die "INT ALUs" auch auf der PS5 und den PC GPUs vorhanden sind. So wie es Microsoft beschreibt, haben sie diese Hardware nachträglich in die Xbox Series X eingebaut und ihr wording lässt vermuten, dass es sich nicht um ein RDNA2 Feature handelt. Das ganze ist echt seltsam, denn so wie es bei DF steht, nutzt die XSX für die INT-Operationen die Shader Cores. MS wiederum behauptet aber, dass die Auto HDR AI keine Belastung für die Shader und den Speicher darstellt. Echt verwirrend.

Aber AI ist super wichtig für die nächste Generation an Spielen. AMD sollte definitiv was ähnliches in die RDNA2 Architektur einbauen. Ich gehe davon aus, dass neuronale Netze in Spielen demnächst sehr an Bedeutung gewinnen, da ist es natürlich super wenn man genügend AI Power zur Verfügung stellen kann, ohne die Shader ALUs allzu sehr zu belasten.

Schon RDNA1 hat ein paar INT ALUs - jedoch iirc ohne erhöhten int4/8 Durchsatz.

basix
2020-05-10, 12:12:56
Schon RDNA1 hat ein paar INT ALUs - jedoch iirc ohne erhöhten int4/8 Durchsatz.

Siehe meinen Post #125 (https://www.forum-3dcenter.org/vbulletin/showpost.php?p=12304125&postcount=125). Mit Rapid Packed Math kommt man genau auf die 97 TOPS INT4, welche Microsoft veranschlagt. Das "Custom" ist meiner Meinung nach einzig mit der Tatsache begründet, dass AMD dieses Feature bei RDNA als "optional" einstuft. Es ist aber inhärent durch das Feature-Set rund um RDNA gegeben. "Custom" oder "special hardware support" Einstufung ist nicht per se falsch, aber Microsoft musste hier nichts anderes tun als das Kreuzchen bei INT4/INT8 Support zu setzen, als man den Chip bei AMD bestellt hat.

Und wenn AMD mit RDNA2 den Nividia Weg gehen solte mit dedizierten INT-Einheiten: Das wäre mit hoher Wahrscheinlichkeit ebenfalls ein Teil der Architektur und nicht Microsofts Effort.

robbitop
2020-05-10, 12:18:44
Wobei es ja pro CU bei RDNA ja nochmal eine kleine Portion INT ALUs extra gab (Verhältnis 1:32 IIRC ALU zu FPU). Bei weitem aber nicht so viele wie bei Volta, Turing. Da war es ja 1:1.

basix
2020-05-10, 12:44:09
Wobei es ja pro CU bei RDNA ja nochmal eine kleine Portion INT ALUs extra gab (Verhältnis 1:32 IIRC ALU zu FPU). Bei weitem aber nicht so viele wie bei Volta, Turing. Da war es ja 1:1.

Ja das ist richtig. Wie gesagt, AMD könnte auch den Turing-Weg gehen. Wenn dann auch die dedizierten INT-Einheiten RPM bis hinunter zu INT4 unterstützen, wäre das sehr nice. Die FP-Einheiten könnten RPM bis INT4 immer noch unterstützen. Das wäre sogar eine ziemlich schlaue Architektur, da man damit mit minimalem Aufwand die ML/AI Leistung bei Inferencing nochmals verdoppeln könnte und bei allgemeinen Rechenoperationen in Games die INT-Einheiten ebenfalls wie Turing mitbelasten könnte. Für eine GPU-Gaming Architektur wohl nahe am Optimalfall, solange man nicht übermässig von FP16 und INT4/INT8 Matrizenberechnungen profitieren kann.

robbitop
2020-05-10, 16:41:17
Da AMD die Grundarchtekturen stärker zu trennen scheint (CDNA was mehr auf GCN stützt und RDNA), könnte es auch gut sein, dass Matritzen ALUs in CDNA ihren Einzug finden könnten (wo man ggf. wesentlich stärker mit Inferencing Last zu tun hat als im Gamingbereich, wo Vektor ALUs ggf ausreichend sind bzw ggf. nicht zum Flaschenhals werden). Die Frage ist auch, ob es da unbedingt 1:1 braucht oder ob 1:2 oder 1:4 nicht reichen würden und somit weniger Transistoren kosten würden. Es ist IMO so spannend wie schon lange nicht mehr.

|MatMan|
2020-05-10, 20:19:38
Ich denke, ihr denkt hier zu viel über die Hardware nach. Das neuronale Netz ist die eigentliche Innovation bei DLSS, vor allem das generische bei DLSS 2.
AMD wird sicherlich etwas ähnliches anbieten, evtl. müssen sie sich das Know-How einkaufen bzw. jemanden damit beauftragen solch ein Netz zu designen.
Das heißt aber, wenn NVIDIA und AMD (und Intel?) jeweils eigene Netze für DLSS haben, dann sind die Ergebnisse auch unterschiedlich. Am besten wäre es wohl, wenn Microsoft ein trainiertes Netz in DirectX anbieten würde. Die sollten auch genug AI Know-How dafür haben. NVIDIA rückt ihr Netz garantiert nicht raus...

DrFreaK666
2020-05-10, 20:35:07
Ich glaube es sollte kein Problem darstellen ein Netz zu trainieren. Screenshots in 2160p, die anderen in 720p.
So hat es ein Freund erklärt und er kennt sich damit aus.
Vielleicht hat er es sehr vereinfacht erklärt, damit ich es verstehe ^^

robbitop
2020-05-10, 20:42:01
Es ist garantiert nicht trivial. Sonst gäbe es das von allen schon seit Jahren.

Neosix
2020-05-10, 22:33:36
Naja seit Jahren hört man, hier toller KI Beschleuniger hier, schnelle KI Trainingseinheiten da. War das nicht eher nur ne Frage der Zeit, dass es einfach zwangsläufig "günstig" geworden nach dieser Lösung zu forschen? Ich verstehe auch das festhalten an "nativ nativ" von einigen nicht. Ist doch eh alles faked am Ende, Hauptsache es sieht gut aus. Wie der Weg zum Ziel war ist mir am Ende schnuppe.

BlacKi
2020-05-10, 22:40:40
Ich glaube es sollte kein Problem darstellen ein Netz zu trainieren. Screenshots in 2160p, die anderen in 720p.
So hat es ein Freund erklärt und er kennt sich damit aus.
Vielleicht hat er es sehr vereinfacht erklärt, damit ich es verstehe ^^
ich stelle mir die frage ob multiplayer titel nicht deutlich schwieriger zu trainieren sind. vor allem open world.

|MatMan|
2020-05-10, 22:54:45
Ich glaube es sollte kein Problem darstellen ein Netz zu trainieren. Screenshots in 2160p, die anderen in 720p.
So hat es ein Freund erklärt und er kennt sich damit aus.
Vielleicht hat er es sehr vereinfacht erklärt, damit ich es verstehe ^^
Na klar kein Problem, trainier doch mal ein Netz, welches so gut wie DLSS (oder besser) ist. AMD oder wer anders kauft es bestimmt ;-)

Vom Ansatz her könnte man erstmal so rangehen, aber welche Scrennshots nimmst du? Welche Szenen? Welche Spiele? Wie macht man Data Augmentation? Wie ist das Design des Netzes? Es gibt x Faktoren warum das schief laufen kann.
Die Rechenleistung fürs Training ist inzwischen wirklich günstig, das ist kein Problem.

basix
2020-05-10, 23:03:04
Da AMD die Grundarchtekturen stärker zu trennen scheint (CDNA was mehr auf GCN stützt und RDNA), könnte es auch gut sein, dass Matritzen ALUs in CDNA ihren Einzug finden könnten (wo man ggf. wesentlich stärker mit Inferencing Last zu tun hat als im Gamingbereich, wo Vektor ALUs ggf ausreichend sind bzw ggf. nicht zum Flaschenhals werden). Die Frage ist auch, ob es da unbedingt 1:1 braucht oder ob 1:2 oder 1:4 nicht reichen würden und somit weniger Transistoren kosten würden. Es ist IMO so spannend wie schon lange nicht mehr.

Genau, Tensor Cores werden vermutlich CDNA vorbehalten sein. Aber AI-Beschleunigung über RPM ist halt relativ billig und bei Games wird meistens wohl nicht die AI-Leistung limitierend sein. DLSS 2.0 ist zwar toll, aber die Tensor Cores werden nur während eines Bruchteils des Frames wirklich ausgelastet. Da würde RPM mehr Sinn machen, da es GPGPU fähig ist und somit ein deutlich breiters Anwendungsgebiet hat.

Ob 1:1 oder 1:4 hängt vermutlich vom Game ab und 1:1 ist vermutlich nicht nötig. Laut Turing Architekturbeschreibung wäre 1:2 wohl ausreichend: https://devblogs.nvidia.com/nvidia-turing-architecture-in-depth/
Aber das ist ein Henne-Ei Problem. Sobald man mehr INT-Leistung verügbar hat, wird man sie auch nutzen. Bei 1:1 könnte man zudem concurrent noch etwas AI-Berechnungen durchführen, was heute zulasten der FP-Leistung geht.

aufkrawall
2020-05-10, 23:11:17
ich stelle mir die frage ob multiplayer titel nicht deutlich schwieriger zu trainieren sind. vor allem open world.
Nochmal: Der Algorithmus von 2.0 arbeitet generisch mit 3D-Grafik, die immer die gleichen Probleme in nativer Auflösung vs. Ground Truth SSAA hat.

Troyan
2020-05-11, 12:38:54
Genau, Tensor Cores werden vermutlich CDNA vorbehalten sein. Aber AI-Beschleunigung über RPM ist halt relativ billig und bei Games wird meistens wohl nicht die AI-Leistung limitierend sein. DLSS 2.0 ist zwar toll, aber die Tensor Cores werden nur während eines Bruchteils des Frames wirklich ausgelastet. Da würde RPM mehr Sinn machen, da es GPGPU fähig ist und somit ein deutlich breiters Anwendungsgebiet hat.

Ob 1:1 oder 1:4 hängt vermutlich vom Game ab und 1:1 ist vermutlich nicht nötig. Laut Turing Architekturbeschreibung wäre 1:2 wohl ausreichend: https://devblogs.nvidia.com/nvidia-turing-architecture-in-depth/
Aber das ist ein Henne-Ei Problem. Sobald man mehr INT-Leistung verügbar hat, wird man sie auch nutzen. Bei 1:1 könnte man zudem concurrent noch etwas AI-Berechnungen durchführen, was heute zulasten der FP-Leistung geht.

Du solltest dich nochmal in das Thema einlesen. Die TensorCores werden für das Upscaling (also für DLSS) verwendet. Das dies nur ein Bruchteil ist, liegt an der immensen Rechenleistung, die durch die TC szur Verfügung steht.

Das hat nichts mit Integerleistung an sich zu tun. Die ist bei Volta+ entkoppelt und liefert nochmal die selbe Leistung in TOPs.

nVidia's Xavier erreicht 20 TOPs über TensorCores bzw. 30 TOPs mit den DLA-Einheiten. Eine XBSX liegt nur bei 48TOPs INT8 Leistung. Das ist für ein 200W SoC unglaublich schlecht. Deswegen geht jede Firma auch auf dedizierte Einheiten für Inference.

robbitop
2020-05-11, 13:03:56
Die Frage ist, wie viel Rechenleistung dafür wirklich benötigt wird. Ich tippe wie basix auch darauf, dass man für DLSS 2.0 nur einen Bruchteil auslastet.
Auch Vektor ALUs können über mehrere Takte Matritzen berechnen.

Dampf
2020-05-11, 14:36:44
Die Frage ist, wie viel Rechenleistung dafür wirklich benötigt wird. Ich tippe wie basix auch darauf, dass man für DLSS 2.0 nur einen Bruchteil auslastet.
Auch Vektor ALUs können über mehrere Takte Matritzen berechnen.

Kann man glaub ich mit NSight Graphics austesten. Hab ich selbst mal gemacht und festgestellt, dass an einigen Punkten während des Prozesses durchaus fast die volle Leistung aufgerufen wird (90%), zumindest auf meiner 2060 mit ihren rund 100 INT4 TOPS. Das ist unter der Voraussetzung, dass Tensor Pipe Throughput wirklich heißt, die Cores werden so und so viel ausgelastet. Die 90% können auch bestimmt was anderes bedeuten.

robbitop
2020-05-11, 14:43:54
Interessant! Da die Ratio der TCs zu den FPUs bei allen RTX Karten gleich pro SM ist, sollte das im GPU Limit auch für TU104 und 102 gelten. :)
Waren die 90% nur ein peak? Wie sieht es denn grob sustained aus?

Dampf
2020-05-11, 16:53:17
Interessant! Da die Ratio der TCs zu den FPUs bei allen RTX Karten gleich pro SM ist, sollte das im GPU Limit auch für TU104 und 102 gelten. :)
Waren die 90% nur ein peak? Wie sieht es denn grob sustained aus?

Ja, war peak und relativ selten im Prozess. Durchschnitt war eher so um die 30-60% würd ich sagen.

Aber witzig zu sehen, wie die TC das neuronale Netzwerk von DLSS innerhalb so kurzer Zeit durchpowern, die Leistung ist echt krass.

Wenn Games in Zukunft mehr ML nutzen, könnten die deutlicher häufiger im Frame zum Einsatz kommen. Jetzt werden die ja nur am ganz am Ende für ein winziges Stück aktiviert.

robbitop
2020-05-11, 19:33:15
Hm ggf braucht man doch ALUs die Matritzen in einem Takt rechnen können. :)

basix
2020-05-12, 08:19:40
Du solltest dich nochmal in das Thema einlesen. Die TensorCores werden für das Upscaling (also für DLSS) verwendet. Das dies nur ein Bruchteil ist, liegt an der immensen Rechenleistung, die durch die TC szur Verfügung steht.

Das hat nichts mit Integerleistung an sich zu tun. Die ist bei Volta+ entkoppelt und liefert nochmal die selbe Leistung in TOPs.

nVidia's Xavier erreicht 20 TOPs über TensorCores bzw. 30 TOPs mit den DLA-Einheiten. Eine XBSX liegt nur bei 48TOPs INT8 Leistung. Das ist für ein 200W SoC unglaublich schlecht. Deswegen geht jede Firma auch auf dedizierte Einheiten für Inference.

Den Nutzen und die hohe Leistung der Tensor Cores stelle ich gar nicht in Frage. Wenn man sie hat, sind die natürlich etwas Wert. Mir geht es darum, dass Spiele von den Tensor Cores nur zu einem relativ geringen Anteil profitieren und deswegen Tensor Cores ein wenig Perlen vor die Säue sind. Wenn man gerade das DLSS-Netzwerk laufen lässt ist die Auslastung gut, beim Rest des Frames aber eben Null. Dann ist die durchschnittliche Auslastung eben sehr gering und somit relativ viel Chipfläche für den erreichten Vorteil geopfert. GPGPU-Einheiten können von Spielen eben auch anderweitig besser verwendet / ausgelastet werden.

x-force
2020-05-12, 08:27:35
Dann ist die durchschnittliche Auslastung eben sehr gering und somit relativ viel Chipfläche für den erreichten Vorteil geopfert. GPGPU-Einheiten können von Spielen eben auch anderweitig besser verwendet / ausgelastet werden.

high fps, da nimmt der anteil der rechenzeit zu

die auslastung ist für den praktischen nutzen aber auch erstmal egal.
für die mehrleistung die man mit dlss erzielt, müsste man die gpu deutlich mehr verbreitern als die tensor cores an platz kosten.

robbitop
2020-05-12, 09:06:32
Laut Gerüchten sollen die TCs in Ampere (auch bei den Gamingmodellen) pro SM verdoppelt werden. Ganz ohne Not macht NV das sicherlich nicht (sofern das stimmen sollte).

Asaraki
2020-05-12, 09:17:36
Laut Gerüchten sollen die TCs in Ampere (auch bei den Gamingmodellen) pro SM verdoppelt werden. Ganz ohne Not macht NV das sicherlich nicht (sofern das stimmen sollte).

Bin grad am rumspinnen : Glaubst es gibt eine Chance, dass wir in zwei Jahren wieder eine alte nV GPU drin haben zwecks extra-Compute Leistung so wie früher bei PhysX? ^^

Ben Carter
2020-05-12, 09:23:06
Ist es möglich, dass während die TCs arbeiten, die GPU an anderen Stellen bereits mit dem nächsten Frame beginnt? Also quasi wie eine Pipeline. Dann würden das DLSS nur die Frameausgabe verzögern, aber nicht wirklich Performance kosten.

Troyan
2020-05-12, 09:31:05
Nicht bei Turing. Dort können die TensorCores nur alleine arbeiten.

robbitop
2020-05-12, 09:48:52
Bin grad am rumspinnen : Glaubst es gibt eine Chance, dass wir in zwei Jahren wieder eine alte nV GPU drin haben zwecks extra-Compute Leistung so wie früher bei PhysX? ^^
Nein das glaube ich nicht. Das Problem ist einfach Bandbreite und Latenz. Berechnungen, die für das Bild entscheidend sind, sind einfach zu verwoben und abhängig voneinander. Der Bandbreitenbedarf ist enorm und es muss super schnell gehen (Latenz). Entsprechend müssen die Einheiten auch räumlich beieinander sein.

Hinzu kommt der Energiebedarf für die Übertragung von Daten. Der Anteil nimmt mittlerweile einen Großteil der Leistungsaufnahme einer GPU in Anspruch. Je weiter weg die Daten liegen (räumlich), desto mehr Energie kostet jedes Bit. Das ist auch mitunter ein Grund, warum die Caches innerhalb der SMs/CUs immer größer werden. Man muss Energie sparen, wenn man weiterhin Leistung skalieren will.

Selbst wenn man das mit Chiplets auf dem gleichen Träger machen wöllte, würde die Leistungsaufnahme schon signifikant steigen. Ich könnte mir vorstellen, dass das über 3D Stacking irgendwann mal praktikabel wäre. Dann ist die Entfernung kleiner. Allerdings ist Kühlung immer ein Problem. Wenn mehrere Ebenen eine hohe thermische Leistungsdichte haben, ist es problematisch das abzuführen. Deswegen sieht man in aktuellen Versuchen dass nur 1x layer eine hohe thermische Leistungsdichte hat und die anderen eher weniger.

Ist es möglich, dass während die TCs arbeiten, die GPU an anderen Stellen bereits mit dem nächsten Frame beginnt? Also quasi wie eine Pipeline. Dann würden das DLSS nur die Frameausgabe verzögern, aber nicht wirklich Performance kosten.
Soweit ich weiß sind die Tensor Cores (also die INT ALUs mit single cycle Matrix) unabhängig von den FPUs angebunden. GPUs sind ja heutzutage frei programmierbar und die Recheneinheiten arbeiten an mehreren Threads gleichzeitig. Die Hardware ist entsprechend flexibel.
Allerdings lässt die Anwendung bzw dessen Code nicht immer alles zu (Interdependenz). Bspw wird DLSS Upsampling ja noch vor dem Post Processing gemacht. Entsprechend geht das nicht nachträglich. Das Post Processing und das HUD kommt danach.

In verschiedenen Phasen der Entstehung eines Frames sind verschiedene Einheiten mal mehr und mal weniger ausgelastet. Die Controlllogik der GPU und auch der Shadercompiler des Treibers sind so ausgefuchst, dass die Auslastung und das Verstecken von Wartezeiten schon sehr gut passiert.
Ich kann mir gut vorstellen, dass der Rest der GPU nicht Däumchen dreht, während DLSS gemacht wird, sondern ggf. schon am nächsten Frame arbeitet. (und den widerum pausiert, wenn DLSS fertig ist um Postprocessing zu machen).

basix
2020-05-12, 10:11:31
Nicht bei Turing. Dort können die TensorCores nur alleine arbeiten.

Für die ganze GPU oder pro SM / GPC? Ich nehme mal letzteres an. Falls ersteres, wird wohl Ampere das letztere bringen :D

Troyan
2020-05-12, 10:23:05
Ich schätze für die komplette GPU. Jedenfalls entnehme ist aus der Kommunikation von nVidia und auch von der Berechnung der "RTX OPS" keine anderen Möglichkeiten.

Ben Carter
2020-05-12, 10:54:56
Danke für die Erläuterungen. :up:

Dampf
2020-05-12, 13:51:53
Ich hab mal was Feines für euch:

https://imgur.com/Qhr8bWn (die Forum Einbettung von Videos und Bildern funktioniert in letzer Zeit gar nicht )

Das ist die Rendering Pipeline von Control mit DLSS. Der rote Pfad ist die Tensor-Core Auslastung, man sieht am Ende des Frames schlägt diese aus! Was aber noch auffällt, sobald die Tensor Cores Vollgas geben, gehen die normalen Shader-ALUs auf Sparflamme. Da die TC an der Speicherbandbreite und am Power-Budget zehren ist auch klar warum!

Das heißt aber nicht, dass Shader ALUs und Tensor Cores nicht concurrent arbeiten können, es hängt von der Auslastung der TCs ab. Beachtet vor und nach der großen Auslastung der Tensor Cores ein Plateau, da dümpelt die Auslastung um die 10-15% rum, hier scheinen sie also irgendwas vorzubereiten bzw fertigzustellen. Das beeindruckt die Shader ALUs aber gar nicht, da arbeiten sie munter weiter.

Distroia
2020-05-12, 15:00:34
Interessant. Was sind denn die Settings und die Framerate? Zeitskala wäre auch nicht schlecht.

Dampf
2020-05-12, 15:01:40
Interessant. Was sind denn die Settings und die Framerate?

Keine Ahnung, hab den Screenshot Ende März gemacht, als DLSS 2.0 für Control rauskam.

Distroia
2020-05-12, 15:14:12
Achso. Ich vermute mal sehr hohe Settings. Die Tensor-Cores sind ja nur 7% oder so der Zeit ausgelastet, also für den Fall ganz schön überdimensioniert.

Wäre schön, wenn du so was nochmal erstellen könntest und die Einstellungen mit angeben würdest.

robbitop
2020-05-12, 15:18:27
Die Tensor Cores teilen sich IIRC Ressourcen mit den INT ALUs oder aber erweitern diese um die Matrizenfähigkeit. Ist die Zeile SM ALU ggf. das was auf den INTs läuft? Erscheint mir dann aber ein wenig viel im Verhältnis zu den FMA ALUs.
Ich tippe mal darauf, dass du entweder INT Matritzen rechnen kannst oder INT Vektoren.

Achso. Ich vermute mal sehr hohe Settings. Die Tensor-Cores sind ja nur 7% oder so der Zeit ausgelastet, also für den Fall ganz schön überdimensioniert.

Wäre schön, wenn du so was nochmal erstellen könntest und die Einstellungen mit angeben würdest.
Von der Renderpipeline eines Bildes ergibt der Graph Sinn. Erst wird der rohe Framebuffer berechnet (viel Rechenzeit) dann DLSS upsampling und dann Postprocessing und HUD.
Offenbar arbeitet der SM jedoch nicht bereits an der Berechnung des nächsten Bildes während dieser Zeit sondern dreht Däumchen.
Wenn man jetzt weniger Leistung für DLSS zur Verfügung stellen würde, würde zwar die Auslastung höher gehen, aber da (zumindest Stand jetzt) DLSS den Rest der GPU lahmzulegen scheint, würde die Gesamtframetime nach oben gehen. Die FPS sinken also. Entsprechend will man damit möglichst schnell fertig werden.
Wenn man das entkoppeln könnte (und das ginge nur, wenn der Rest der GPU bereits den nächsten Frame rendern dürfte), dann würde auch viel weniger INT Leistung reichen. Die Gesamtdauer für das DLSS dürfte dann nur nicht die Gesamtdauer des Rests übersteigen. Also parallelisiert.

Ich tippe darauf, dass man genau das ändern wird. Und vor der Perspektive könnten bei RDNA irgendwann mal (wenn man sowas macht) auch ein Bruchteil der INT Leistung reichen.

Dampf
2020-05-12, 17:04:13
Ich tippe darauf, dass man genau das ändern wird. Und vor der Perspektive könnten bei RDNA irgendwann mal (wenn man sowas macht) auch ein Bruchteil der INT Leistung reichen.

Wie könnte man das umsetzen? Dann müsste man Tensor Cores haben, die komplett unabhängig von der Grafikkarte arbeiten, also eigene Stromzufuhr, eigener Speicher usw haben. Da kämen wir dann schon in den Bereich einer dedizierten AI-Karte.

RDNA2 auf der XSX sollt die INT-Operationen über die Shader ALUs liefern, dieses könnte man dann zwar komplett coherent ausführen, dafür werden dann aber die Shader Cores mit der Ausführung der Operation sehr belastet. Im Endeffekt kommt's dann auf das selbe raus wie bei Turing. Da zählt dann eigentlich nur die Rohperformance der jeweiligen Hardware, also 100 irgendwas INT4 TOPS bei einer 2060 und 97 INT4 TOPs bei einer XSX.

Eine andere Möglichkeit wäre, das DLNN so zu optimieren, dass es die Tensor-Cores kaum auslastet. Halte ich aber bei solch einem komplexen Deep Learning Neural Network wie DLSS für unrealistisch. Für einfaches machine learning sollte das aber machbar sein

robbitop
2020-05-12, 17:09:50
Wie könnte man das umsetzen? Dann müsste man Tensor Cores haben, die komplett unabhängig von der Grafikkarte arbeiten, also eigene Stromzufuhr, eigener Speicher usw haben. Da kämen wir dann schon in den Bereich einer dedizierten AI-Karte.
Die GPU ist heutzutage ein große Anhäufung frei programmierbarer Recheneinheiten. Da muss (und kann aufgrund von Bandbreiten- und Latenzanforderungen) nichts getrennt werden. Die GPU berechnet was du willst, wann du willst. Ob jetzt Matritzen oder Vektoren. (Tensor Cores können halt Matrizen in einem Takt berechnen - Vektor ALUs können auch Matrizen berechnen, brauchen aber mehrere Takte - und die Frage war, ob man das überhaupt für diesen Anwendungszweck braucht).
Der Treiber muss lediglich bereits die Drawcalls für den nächsten Frame liefern und die SMs fangen an, das zu berechnen.
Moderne SMs halten etliche Threads "in flight" und können bei Bedarf hin und her schalten. Ein wenig wie SMT. Darauf sind sie angewiesen, wenn ein Thread stillsteht, weil Daten geladen werden müssen. In Zwischenzeit wird halt ein anderer Thread berechnet.


RDNA2 auf der XSX sollt die INT-Operationen über die Shader ALUs liefern, dieses könnte man dann zwar komplett coherent ausführen, dafür werden dann aber die Shader Cores mit der Ausführung der Operation sehr belastet. Im Endeffekt kommt's dann auf das selbe raus wie bei Turing. Da zählt dann eigentlich nur die Rohperformance der jeweiligen Hardware, also 100 irgendwas INT4 TOPS bei einer 2060 und 97 INT4 TOPs bei einer XSX.

Eine andere Möglichkeit wäre, das DLNN so zu optimieren, dass es die Tensor-Cores kaum auslastet. Halte ich aber bei solch einem komplexen Deep Learning Neural Network wie DLSS für unrealistisch. Für einfaches machine learning sollte das aber machbar sein
Bereits RDNA1 hat zusätzliche INT ALUs pro CU. Und zwar im Verhältnis von 1:32 zu den FP32 FPUs. Ggf. hat RDNA2 ja auch mehr davon. Oder aber eine zukünftige Generation.
Wenn man das AI Upsampling von frame n gleichzeitig zum Rendering von frame n+1 machen kann (und frame n+1 pausiert wird, sobald das upsampling fertig ist und für frame n dann entsprechend das post processing gemacht wird), kann das Upsampling theoretisch deutlich länger dauern und wird hinter der Latenz der Gesamtrechenzeit eines Frames "versteckt". Entsprechend weniger Recheneinheiten bräuchte das. Würde aber natürlich ein wenig (~2/3 eines Frames) zusätzliche Latenz bedeuten.

Distroia
2020-05-12, 18:08:18
Offenbar arbeitet der SM jedoch nicht bereits an der Berechnung des nächsten Bildes während dieser Zeit sondern dreht Däumchen.
Wenn man jetzt weniger Leistung für DLSS zur Verfügung stellen würde, würde zwar die Auslastung höher gehen, aber da (zumindest Stand jetzt) DLSS den Rest der GPU lahmzulegen scheint, würde die Gesamtframetime nach oben gehen. Die FPS sinken also. Entsprechend will man damit möglichst schnell fertig werden.

Das ist schon klar. Es geht darum, dass man über 20% Chipfläche verwendet für die Tensor Cores, diese aber nur 7% der Zeit beschäftigt sind. Weniger Tensor Cores würden zwar bedeuten, dass das Upscaling länger dauert, aber auch, dass man mehr Chipfläche für anderes zur Verfügung gehabt hätte, was den Rest der Frametime hätte verkürzen können. Irgendwo liegt ein Sweet-Spot für die Größe der Tensor Cores und den würde ich gerne herausfinden. Natürlich ist der sehr Abhängig von den Settings, weshalb ich Dampf nach diesen gefragt habe.

Und natürlich ist das interessant im Hinblick auf die Fragestellung, wie viel Int8-Leistung man überhaupt braucht bzw. wieviel sinnvoll ist. Auch wenn das nur ein erstes Indiz wäre. Wir können ja noch nicht sagen, wie das ganze bei AMD funktionieren wird.

robbitop
2020-05-12, 18:50:39
Sofern man es parallelisieren kann, würde offenbar auch ein Bruchteil der Leistung reichen - entsprechend kann man wie du schon sagst in den Rest der GPU investieren.
Allerdings ist DLSS so "gewinnbringend" und reine ALUs (auch die TCs) so günstig, dass das sicherlich bereits ein sehr guter Deal ist.

x-force
2020-05-12, 20:39:45
Das ist schon klar. Es geht darum, dass man über 20% Chipfläche verwendet für die Tensor Cores, diese aber nur 7% der Zeit beschäftigt sind. Weniger Tensor Cores würden zwar bedeuten, dass das Upscaling länger dauert, aber auch, dass man mehr Chipfläche für anderes zur Verfügung gehabt hätte, was den Rest der Frametime hätte verkürzen können.

hab ich schon auf der letzten seite angesprochen.
rechenzeit ist irrelevant, das ergebnis zählt

pixeljetstream
2020-05-12, 21:19:59
Der Treiber muss lediglich bereits die Drawcalls für den nächsten Frame liefern und die SMs fangen an, das zu berechnen

Das ist eher Entwicklerentscheidung bei den modernen APIs, der Treiber setzt das dann um. Aber derartige Überlappung muss von den Entwicklern programmiert werden.

zu dem trace vorher: SM pipes on Turing GPUs (aus https://developer.download.nvidia.com/video/GDC-19/NSIGHT_GPU_TRACE_Bavoil.pdf)

FMA: fp32 {FADD,FMUL,FMAD, …} ops + int {IMUL, IMAD} ops
ALU: integer & logic ops
FP16: FP16 ops executed in pairs
SFU: transcendental ops (rsqrt, cos/sin, etc.)


"extra ai-beschleuniger karten" etc. sind wie robbitop sagt komplett sinnfrei. man braucht unbedingt die geringe latenz zum rest, sonst kann man das vergessen (und dann wäre multi-gpu ja auch der Renner).

Distroia
2020-05-12, 21:26:42
Sofern man es parallelisieren kann, würde offenbar auch ein Bruchteil der Leistung reichen - entsprechend kann man wie du schon sagst in den Rest der GPU investieren.
Allerdings ist DLSS so "gewinnbringend" und reine ALUs (auch die TCs) so günstig, dass das sicherlich bereits ein sehr guter Deal ist.

Ich bin erstmal davon ausgegangen, dass es nicht parallelisiert. damit meine ich nicht parallelisierbar, sondern die konkrete Implementierung. Sicher kann man es irgendwie, wenn man die Tensor Cores größer macht, aber im Moment sehe ich nur, dass es NVidia anscheinend nicht macht. Oder meinst du, NVidia könnte es mit der jetzigen Hardware schon parallel laufen lassen?

Bei hat ja auch keine keine dedizierten INT8-Einheiten, also wird es bei denen noch weniger parallel laufen können. Die werden sich schon beide was dabei gedacht haben.

hab ich schon auf der letzten seite angesprochen.
rechenzeit ist irrelevant, das ergebnis zählt

Ach so ist das. Dann können wir ja das Technologie-Forum schließen und die Hardware-Entwickler können sich auch eine neue Beschäftigung suchen.

x-force
2020-05-12, 21:36:34
Ach so ist das.

so ist es. :rolleyes:

lass die tensor cores nur 1ms pro bild aktiv sein!
solange sie in der zeit eine aufwertung des bildes erreichen, für die sonst 10ms rechenzeit nötig wäre, oder bei doppelt so breiter gpu nur noch 5ms, stellt sich die frage einfach nicht.

Distroia
2020-05-12, 22:06:03
so ist es. :rolleyes:

lass die tensor cores nur 1ms pro bild aktiv sein!
solange sie in der zeit eine aufwertung des bildes erreichen, für die sonst 10ms rechenzeit nötig wäre, oder bei doppelt so breiter gpu nur noch 5ms, stellt sich die frage einfach nicht.

Schön, dass es dich nicht interessiert. Dann brauchen wir ja nicht mit dir darüber zu diskutieren.

x-force
2020-05-12, 22:15:17
die frage ist damit beantwortet

pixeljetstream
2020-05-13, 00:15:49
Schön, dass es dich nicht interessiert. Dann brauchen wir ja nicht mit dir darüber zu diskutieren.
Seine Antwort ist aber zutreffend. Solange der upsampling Schritt selbst damit so stark beschleunigt wird, dass die Ersparnis beim kleineren rendern auch ankommt, ist das soll erfüllt. Es spielt dann keine Rolle dass es nur ein Bruchteil des Frames war, oder besser gesagt genau das ist hier das Ziel.

Distroia
2020-05-13, 02:23:16
Seine Antwort ist aber zutreffend. Solange der upsampling Schritt selbst damit so stark beschleunigt wird, dass die Ersparnis beim kleineren rendern auch ankommt, ist das soll erfüllt. Es spielt dann keine Rolle dass es nur ein Bruchteil des Frames war, oder besser gesagt genau das ist hier das Ziel.

Seine Antwort auf welche Frage denn? Meine Frage war nicht, ob DLSS sinnvoll ist, sondern wieviel Investition in Form von Chipfläche sinnvoll ist. Das ist besonders im Hinblick auf RDNA2 interessant, weil dieser deutlich weniger Int8-Leistung zur Verfügung hat und man sich da natürlich Fragen kann, wie sehr sich das auf dessen Leistung mit dessen Version von DLSS auswirken wird.

Die Frage finde ich besonders im Hinblick auf die nächste Konsolengeneration interessant. Es wurde ja sogar weiter oben im Thread schon behauptet, dass RDNA2 in den Konsolen schlicht zu wenig Int8-Leistung dafür hat und das kann man eben anzweifeln, wenn man sieht, wie wenig Zeit nur die Tensor Cores von Nvidia mit DLSS beschäftigt sind.

Troyan
2020-05-13, 08:33:55
Der Upscaling-Schritt muss so schnell wie möglich erfolgen, weil man ansonsten zuviele Frames verschenkt. Die 2080TI benötigt von 1080p -> 4K +-1,5ms. Das sind zusätzliche 18% bei 120FPS (8,3ms) und 9% bei 60FPS (16,6ms).

Die Xbox SX hat nur 0,22% der Rechenleistung bei INT8, benötigt als ca. 4,5x länger. Dort erhöht sich die Dauer des Upscalings also auf 6,75ms. Bedeutet bei 120FPS bzw. 60FPS zusätzliche 81% bzw. 40,5% Arbeit. Macht aus 120FPS dann 66,6 FPS und bei 60FPS immer noch 43FPS.

Um auf ähnliche Leistungswerte zu kommen, muss der Chip ca. doppelt so schnell in der nativen Auflösung rendern - ergo er muss doppelt soviele Ressourcen haben. Das zeigt doch schon, dass nur über spezialisierte Recheneinheiten überhaupt so ein Verfahren sinnvoll ist.

pixeljetstream
2020-05-13, 08:51:34
wenn man sieht, wie wenig Zeit nur die Tensor Cores von Nvidia mit DLSS beschäftigt sind.
Das spricht doch für den Einsatz spezialisierter HW. Wenn man Video encoded und die HW engines dafür nutzt erwartet man doch auch dass die Zeit so gering wie möglich ausfällt. Oder die HW rasterizer, die sollen doch auch so wenig wie möglich zum bottleneck werden.

Daher finde ich (und x-force halt auch) es unpassend, wenn man die Argumentation vom Einsatz von spezial hw umdreht, also kurzer Einsatz, deswegen unwichtiger. Das ist ja das was du dich fragst.

Das heißt nicht dass man nicht auf andere Art und Weise Upscaling erreichen kann, aber es wird dann eben ein anderes Verfahren sein was mit weniger Rechenleistung auskommen muss.

robbitop
2020-05-13, 10:11:21
Das ist eher Entwicklerentscheidung bei den modernen APIs, der Treiber setzt das dann um. Aber derartige Überlappung muss von den Entwicklern programmiert werden.

zu dem trace vorher: SM pipes on Turing GPUs (aus https://developer.download.nvidia.com/video/GDC-19/NSIGHT_GPU_TRACE_Bavoil.pdf)

FMA: fp32 {FADD,FMUL,FMAD, …} ops + int {IMUL, IMAD} ops
ALU: integer & logic ops
FP16: FP16 ops executed in pairs
SFU: transcendental ops (rsqrt, cos/sin, etc.)


Hilfreich - danke! :) Dass das Spiel das selbst anstoßen muss, macht wirklich Sinn. Da hätte ich auch selbst draufkommen können. :)
Was mich (positiv) überrascht, wie viel INT Workload bei Control schon parallel zum FP Workload läuft. Heißt, dass die zusätzlichen INT Ressourcen im SM dann auch richtig was beitragen.

Ich bin erstmal davon ausgegangen, dass es nicht parallelisiert. damit meine ich nicht parallelisierbar, sondern die konkrete Implementierung. Sicher kann man es irgendwie, wenn man die Tensor Cores größer macht, aber im Moment sehe ich nur, dass es NVidia anscheinend nicht macht. Oder meinst du, NVidia könnte es mit der jetzigen Hardware schon parallel laufen lassen?
Siehe Pixeljetstream. Der Entwickler muss das Anstoßen des nächsten Frames bei der Implementierung von DLSS erlauben. Dann sollte es gehen. Das ist keine Hardwarelimitierung. Die 3D Rendering Pipeline des sieht es halt seriell vor: Rendering des Frames in Inputresolution (ohne PP) -> DLSS -> Post Processing + HUD. Logisch, dass dann während des DLSS die GPU steht, wenn das Spiel nicht schon den nächsten Frame anstößt.


Bei hat ja auch keine keine dedizierten INT8-Einheiten, also wird es bei denen noch weniger parallel laufen können. Die werden sich schon beide was dabei gedacht haben.

Bei? Du meinst AMD? Die haben Integer ALUs zusätzlich zu den FPUs im Verhältnis 1:32. Deren Durchsatz erhöht sich bei kleinerer Genauigkeit. (rapid packed math).

Der Upscaling-Schritt muss so schnell wie möglich erfolgen, weil man ansonsten zuviele Frames verschenkt. Die 2080TI benötigt von 1080p -> 4K +-1,5ms. Das sind zusätzliche 18% bei 120FPS (8,3ms) und 9% bei 60FPS (16,6ms).

Die Xbox SX hat nur 0,22% der Rechenleistung bei INT8, benötigt als ca. 4,5x länger. Dort erhöht sich die Dauer des Upscalings also auf 6,75ms. Bedeutet bei 120FPS bzw. 60FPS zusätzliche 81% bzw. 40,5% Arbeit. Macht aus 120FPS dann 66,6 FPS und bei 60FPS immer noch 43FPS.

Um auf ähnliche Leistungswerte zu kommen, muss der Chip ca. doppelt so schnell in der nativen Auflösung rendern - ergo er muss doppelt soviele Ressourcen haben. Das zeigt doch schon, dass nur über spezialisierte Recheneinheiten überhaupt so ein Verfahren sinnvoll ist.

So ist es. Es sei denn, man stößt während des Upsamplings dann schon die Berechnung des nächsten Frames an. Dann kann man sich für's upsampling massiv mehr Zeit lassen, weil dann diese Dauer "versteckt" wird (Verschachtelung). Nachteil: kostet bis zu ~2/3 eines Frames an zusätzlicher Eingabelatenz.
Und muss natürlich so durch den Entwickler implementiert sein. Auf einer Konsole mit fester HW Basis auf der man alles herausholen will: kein Drama. :)

Troyan
2020-05-13, 10:35:44
So ist es. Es sei denn, man stößt während des Upsamplings dann schon die Berechnung des nächsten Frames an. Dann kann man sich für's upsampling massiv mehr Zeit lassen, weil dann diese Dauer "versteckt" wird (Verschachtelung). Nachteil: kostet bis zu ~2/3 eines Frames an zusätzlicher Eingabelatenz.
Und muss natürlich so durch den Entwickler implementiert sein. Auf einer Konsole mit fester HW Basis auf der man alles herausholen will: kein Drama. :)

Und wie soll das funktionieren, wenn die komplette GPU mit dem Upscaling ausgelastet ist?

robbitop
2020-05-13, 10:41:50
Und wie soll das funktionieren, wenn die komplette GPU mit dem Upscaling ausgelastet ist?
Muss ja nicht zwangsweise so sein. Kann man auch über die zusätzlichen INT ALUs im CU machen lassen. Dadurch hätten sie locker 1x Größenordnung mehr Zeit dafür.
ggf. hat RDNA 2 auch mehr INT Ressources als RDNA1. Aktuell weiß man ja so gut wie nichts über die CUs in RDNA2.

BlacKi
2020-05-13, 10:41:53
Seine Antwort auf welche Frage denn? Meine Frage war nicht, ob DLSS sinnvoll ist, sondern wieviel Investition in Form von Chipfläche sinnvoll ist.
ich finde die diskussion ebenfalls verwirrend. aber deine frage ist ziemlich schnell beantwortet.

wieviel chipfläche kosten die tensor cores? 20%? dann muss man sich nur fragen, ob man die 20% mehr an leistung wieder reinholt durch dlss.

und die frage brauche ich dir nicht zu beantworten. ob die cores nun ausgelastet sind oder nicht, spielt keine rolle.

die frage ob man nun einen externen tensor beschleuniger entwickeln könnte stellt sich auch nicht, denn die tensor cores polieren nicht einfach nur ein 1080p bild auf ein 4k bild hoch(zb. wie beim fernseher), sie benötigen informationen der gameengine, nicht das fertige bild.

aber eine frage stellt sich mir in dem zusammenhang. in dem zeitfenster in dem die tensor cores arbeiten, also bei einer 2060s 2,6ms in 4k. welcher stromverbrauch liegt da an? ist der weniger oder ist der größer? spart die karte am ende sogar strom durch dlss?

was ist mit tensor cores OC? welcher takt liegt an, sind die cores sehr konservativ getaktet? wieviel kann man per tensorcore OC noch rausholen? bietet ampere vl tensor core OC?

DrFreaK666
2020-05-13, 10:53:07
...die frage ob man nun einen externen tensor beschleuniger entwickeln könnte stellt sich auch nicht, denn die tensor cores polieren nicht einfach nur ein 1080p bild auf ein 4k bild hoch(zb. wie beim fernseher), sie benötigen informationen der gameengine, nicht das fertige bild...

Ist das wirklich so? Ich dachte bisher dass das "Bild" hochgerechnet wird und anschließend das HUD draufgeklatscht

robbitop
2020-05-13, 10:57:43
Ja das ist so. Zum Beispiel motion vectors.

Es wäre wirklich hilfreich, wenn man sich wenigstens den GTC talk als Grundlage anschaut. Es ist einfach sinnfrei zu diskutieren, wenn die Grundlage fehlt.
Das Video ist wirklich gut und erklärt ganz wunderbar, wie DLSS implementiert wird und den jeweiligen in- und output (an und vom DLSS).

pixeljetstream
2020-05-13, 11:13:37
https://developer.nvidia.com/gtc/2020/video/s22698 der GTC Talk dazu

Troyan
2020-05-13, 11:21:10
Muss ja nicht zwangsweise so sein. Kann man auch über die zusätzlichen INT ALUs im CU machen lassen. Dadurch hätten sie locker 1x Größenordnung mehr Zeit dafür.
ggf. hat RDNA 2 auch mehr INT Ressources als RDNA1. Aktuell weiß man ja so gut wie nichts über die CUs in RDNA2.

Es gibt keine zusätzlichen INT-Einheiten bei RDNA2. Es läuft alles über die FP32-Recheneinheiten.

robbitop
2020-05-13, 11:25:21
Es gibt keine zusätzlichen INT-Einheiten bei RDNA2. Es läuft alles über die FP32-Recheneinheiten.
Bei RDNA1 hat jeder CU 2x zusätzliche ALUs. Die wird RDNA2 ja wenigstens auch haben.
Außerdem ist die Aussage noch recht gewagt, da die CUs von RDNA2 noch nicht vorgestellt worden sind. Mit Gewissheit lässt sich das erst nach der Vorstellung der uArch sagen.

unl34shed
2020-05-13, 11:33:11
Die Xbox SX hat nur 0,22% der Rechenleistung bei INT8, benötigt als ca. 4,5x länger. Dort erhöht sich die Dauer des Upscalings also auf 6,75ms. Bedeutet bei 120FPS bzw. 60FPS zusätzliche 81% bzw. 40,5% Arbeit. Macht aus 120FPS dann 66,6 FPS und bei 60FPS immer noch 43FPS.

1. Du meinst sicherlich 22% nicht 0,22% oder?
2. Wüsste ich gerne woher die Zahl kommt.
Ich kann dazu nichts finden, außer das RDNA1 theoretisch 4xINT8 oder 8xINT4 berechnen kann, wenn implementiert. Wüsste nicht warum das in der XBSX mit RDNA2 gestrichen worden sein sollte.

Laut Microsoft eine bewusste Entscheidung. Insgesamt stünden 49 TOPS für 8 Bit-Integer-Operationen und 97 TOPS für 4-Bit-Integer-Operationen zur Verfügung. Neu mit AMDs RDNA 2-Architektur sind zudem Mesh Shader und diverse weitere Kleinigkeiten.
Quelle: https://www.pcgameshardware.de/Xbox-Series-X-Konsolen-268616/Specials/Hardware-im-Detail-1345741/

Das spricht doch für den Einsatz spezialisierter HW. Wenn man Video encoded und die HW engines dafür nutzt erwartet man doch auch dass die Zeit so gering wie möglich ausfällt. Oder die HW rasterizer, die sollen doch auch so wenig wie möglich zum bottleneck werden.

Milchmädchenrechnung incomming:

Weiter vorne stand, dass die Tensor Cores 20% Fläche bei 7% Auslastung pro Frame kosten.
Wenn ich die 20% der Fläche für 20% mehr Shader nutze (sollte sogar mehr möglich sein), bekomme ich das ganze Frame 20% schneller berechnet und die 7% "AI" dauern 3,2 mal so lange (4 fache Beschleunigung durch Tensor Cores):
93% * 0,8 + 7% * 3,2 = 96,8% der Zeit mit Tensor Cores

Ja wie gesagt Milchmädchenrechnung denn man hat nie 100% Auslastung und 100% Shader Scalierung. Aber wenn die Spezial Hardware nur so gering genutzt wird, ist der Mehraufwand/Kosten schon in Frage zu stellen. Desweiteren hätten die Shader eine Auswirkung auf alle Spiele und nicht nur eine Hand voll.

Timbaloo
2020-05-13, 11:43:48
Woher kommen diese 20% Chipfläche schon wieder?

BlacKi
2020-05-13, 11:51:01
wer sagt das die auslastung so bleibt? vl wollte man die tensor cores stärker auslasten aber bekommt es nur noch nicht richtig hin? vl steigt die auslastung in den nächsten jahren?

robbitop
2020-05-13, 11:59:08
Woher kommen diese 20% Chipfläche schon wieder?

Kann ich auch nicht ganz nachvollziehen. Kamen die 20% nicht mal aus der Differenz der SM Größe zwischen einem RTX Turing und einem GTX Turing? Ein GTX Turing hat die Tensor Cores nicht (jedoch die 32 INTs) und auch fehlen die RT Cores. Ich tippe darauf, dass ein gutes Stück weniger als die 20% sind.

wer sagt das die auslastung so bleibt? vl wollte man die tensor cores stärker auslasten aber bekommt es nur noch nicht richtig hin? vl steigt die auslastung in den nächsten jahren?
Davon ist IMO auszugehen. Ggf. läuft auch das Denoising vom Raytracing in 3D Spielen später mal über die TCs. Auch gibt es sicherlich noch andere Anwendungen von z.B. AI (im Sinne von Inferencing) in 3D Spielen. Auch kann es gut sein, dass Nachfolgeversionen von DLSS mehr Rechenleistung für bessere Ergebnisse brauchen.

robbitop
2020-05-13, 12:08:35
Aus meiner Sicht ist das ein sinnvoller Grundsatz, der für alle Diskussionen gilt (bevor man fragt erstmal selbstständig zu recherchieren). Nicht persönlich nehmen, denn es war nicht negativ gemeint. ;)

Tobalt
2020-05-13, 12:09:42
Die Auslastung der Tensor Cores wird definitiv steigen. Ich bin in der Hinsicht froh, dass nv da mal das Eis gebrochen habe und dedizierte Low-Prec-Einheiten verbaut.

Wenn man sich die Entwicklung von AI im Computergrafikbereich in den letezten ~10 Jahren ansieht, kann man nicht daran zweifeln, dass künftig ein immer größerer Teil des Ergebnisses aus neuronalen Netzen kommt und der Anteil der "hart" berechneten High-Prec Inputs immer weiter abnimmt.

Man muss auch mal klar sagen, dass der Output auch aus einem NN deterministisch ist. Also ein Algorithmus der 5% high-prec Daten kalkuliert und dann 95% der Rechenleistung auf Low-prec Einheiten durchführt wird am Ende trotzdem in jedem Frame und jedem Anwender das gleiche Ergebnis liefern.

Der Weg dahin ist in den nächsten 5 Jahren aber wohl ironischerweise eher nicht über dedizierte Low-Prec-Einheiten, solange die pure Rasterisierung noch enormes Gewicht hat. Sondern über RPM einheiten. Später dann werden wohl zu den RPM Einheiten noch extra low-prec Einheiten kommen, die dann irgendwann den Großteil einnehmen.

An dieser Stelle macht eine Unterscheidung zwsichen Consumergrafik und HPC natürlich auch echt Sinn, weil ich für wissenschaftliche Berechnungen mit den Low-Prec Einheiten mitunter nichts anfangen kann.

DrFreaK666
2020-05-13, 12:10:10
Habe ich jetzt auch so erkannt. Mein Sohn nervt weil er die Aufgaben nicht erledigen will.
Sorry wenn ich etwas pampig war

robbitop
2020-05-13, 12:16:58
@Tobalt
Ich war definitiv auch kritisch, als NV das in Hardware vor 2 Jahren gebracht hat. In den letzten 1-2 Jahren wurde aber immer klarer, dass es in Bezug auf Neuronale Netzwerke einen Durchbruch in Bezug auf Ergebnisse in den Anwendungen gab (Fotografie, Imageprocessing, Upscaling, deep fakes von Stimmen und Gesichtern, Noise Cancelation, autonomes Fahren etcpp). Entsprechend macht HW für das Inferencing [zur Beschleunigung] wirklich Sinn.
Aufgrund der Verlangsamung und Verteuerung von Shrinks konnte man in den letzten Jahren die Performance weniger steigern als es im Jahrzehnt zuvor der Fall war.
Sofern Spezialhardware neue Ansätze bietet, hier effizienter zu sein (DLSS scheint ja [natürlich auch mit gewissen Nachteilen] ordentlich Rechenleistung freizuschaufeln) oder aber sogar einen Sprung in der Bildqualität zu erzielen (Raytracing) - das scheint mittelfristig der richtige Schritt zu sein.
Wichtig (und wahrscheinlich) ist [zumindest mir persönlich], dass Intel und AMD auch in diese Richtung gehen, damit der Wettbewerb erhalten bleibt (der für uns Endkunden wirklich wichtig ist).

basix
2020-05-13, 13:30:14
ich finde die diskussion ebenfalls verwirrend. aber deine frage ist ziemlich schnell beantwortet.

wieviel chipfläche kosten die tensor cores? 20%? dann muss man sich nur fragen, ob man die 20% mehr an leistung wieder reinholt durch dlss.

und die frage brauche ich dir nicht zu beantworten. ob die cores nun ausgelastet sind oder nicht, spielt keine rolle.

Das ist eine einfache Rechnung und beantwortet den Nutzen oder die Effektivität. Aber es beantwortet nicht die Effizienz. Und letzteres ist Distroias Frage (und auch meine). Man kann immer maximale HW an ein Problem schmeissen und sagen: Problem gelöst. Aber ist es der effizienteste Weg? Ist es nötig oder gibt es geschicktere Alternativen?

Das sind zwei komplett verschiedene Fragestellungen. Den Nutzen und die Effektivität kann man in Testberichten nachlesen. Die Effizienz aber nicht. Und darüber versuchen einige hier zu diskutieren. Control DLSS 1.9 funktionierte ohne Tensor Cores und war schon relativ gut. Könnte man nun DLSS 2.0 ebenfalls via GPGPU laufen lassen und hätte die selbe Qualität und Performance? Wie gross ist der Unterschied?

Biespiel (mit beispielhaften Zahlen):
Sind die [+20%] Fläche für Tensor Cores für diesen Output notwendig oder reichen [+5%] mit Rapid Packed Math aus, um einen identischen Output zu erreichen (selbe Bildqualität, selbe FPS). Das wären in diesem Beispiel [-15%] Flächenvorteil von RPM für selben Output. Somit wäre RPM effizienter. Es kann auch eine Mischrechnung beinhalten: DLSS dauert mit RPM evtl. etwas länger als mit Tensor Cores, aber die Berechnungszeit beim restlichen Frame ist kürzer da dort RPM mithelfen kann.

Das sind die interessanten Fragen. Dass man mit Tensor Cores im Peak die höchste Performance erreichen kann, steht wohl ausser Frage.

pixeljetstream
2020-05-13, 14:40:04
Zu dem Flächenspiel, wenn man x fläche nun in x Units investiert, lohnt sich das nur wenn die Units auch echt das bottleneck sind. Was nicht trivial abzuschätzen ist wie sich das auswirkt. Man kann vielleicht ein paar SMs/CUs mehr verbauen um "generisch" zu sein, aber wie gut passen die dann vom balancing in den rest. Es ist ja nicht so, dass man jede Art von unit mit ner beliebigen Häufigkeit versehen kann. Dazu noch, wie wirkt sich das auf den Cache aus etc.

Das Problem lokal per spezial hw zu "lösen" hat schon Vorteile, weil man sich dann auf anderes konzentrieren kann, während man sonst ständig sich andere Seiteneffekte reinzieht (scheduling/Verwaltung der Zwischenergebnisse...)

Ich will nicht behaupten, dass das balancing perfekt ist, man sieht ja gut dass mit jeder Generationen gewisse Verhältnisse angepasst werden, die Anforderungen ändern sich... Aber als armchair designer vs profis mit mehr Daten und Jahren Erfahrung die viele Anwendungen/Spiele etc. abdecken hat man es schwer, oder halt deutlich leichter, wenn man all das nicht beachten muss ;)

TheAntitheist
2020-05-13, 15:08:40
ist es nicht auch viel besser für den Delay wenn das upscaling so extrem schnell geht? es geht ja nicht immer nur um fps. wir kaufen uns monitore mit 2-3ms delay, teure mäuse etc und dann hapert es an der gpu? das wäre ja quatsch. Ich denke Nvidia verfolgt da, zumindest zurzeit, den absolut richtigen Ansatz.

Dazu kommen dann noch Spiele die einen schlechten input lag haben, von den neuesten Vertretern fällt mir da Borderlands 3 als extremes Negativbeispiel ein, mit Vsync merk ich den delay so stark, dass es für mich nicht mehr vernünftig spielbar ist.

robbitop
2020-05-13, 15:22:25
Was mir auch stark auffällt, dass seit Generationen die Anzahl der Ausführungseinheiten nicht mehr großartig ansteigt (im Vergleich zu den Jahren davor). Overhead, Skalierbarkeit etc. ist da gegebenenfalls auch ein Faktor. Entsprechend versucht man schon seit Maxwell eher den Durchsatz pro ALU (durch Takterhöhung und Erhöhung der Auslastung [mehr Datenlokalität, bessere Granularität, mehr Kontrolllogik]) stark zu pushen.
Das kostete schon seit Pascal ziemlich viele Transistoren, mit denen man das Design hätte einfach breiter machen können - was aber offenbar Limitierungen unterliegt.

Das scheint auch stark vom Anwendungsfall abzuhängen. HPC Content scheint da häufig anders gelagert zu sein als der typische Spielecode.

pixeljetstream
2020-05-13, 16:14:33
Bei HPC ist das Problem so groß, dass es sich sogar über Cluster verteilen lässt. Also lange Phasen mit homogener Arbeit. Da kann man gut mit dem Hammer draufhauen. Real-time graphics ist halt super heterogen. Auch mal viele kleinere tasks...

robbitop
2020-05-13, 16:19:27
Das dachte ich mir schon. Gut das nochmal von einem Profi zu lesen. :)

Hilfreich für die Auslastung ist sicherlich eine möglichst hohe Auflösung - aber die kostet natürlich auch wieder Rechenleistung.

Vor dem Hintergrund (Auslastung HPC usecases und Problemgröße) ist es schon irgendwie nachvollziehbar, dass AMD die uArchs splittet (CDNA/RDNA). GCN erzielt weniger Auslastung (vor allem bei kleinen/heterogenen Problemen), kostet aber wesentlich weniger Transistoren pro Ausführungseinheit. Dazu kam, dass aus o.g. Gründen (Problemgröße und Homogenität) die Auslastung bei HPC usecases dort wenig problematisch war. Entsprechend ist das eine gute Basis für eine HPC Architektur, die man einfach verbreitern kann und trotzdem gute Skalierung erhält. Natürlich wird diese sicherlich auch immer weiter modernisiert (kann mir gut vorstellen, dass auch dort Matritzen Einheiten verbaut werden mittelfristig). Entsprechend nennt man das ganze CDNA (das erste Produkt soll ja 128 CUs haben).

Distroia
2020-05-13, 18:39:04
Das spricht doch für den Einsatz spezialisierter HW. Wenn man Video encoded und die HW engines dafür nutzt erwartet man doch auch dass die Zeit so gering wie möglich ausfällt. Oder die HW rasterizer, die sollen doch auch so wenig wie möglich zum bottleneck werden.

Daher finde ich (und x-force halt auch) es unpassend, wenn man die Argumentation vom Einsatz von spezial hw umdreht, also kurzer Einsatz, deswegen unwichtiger. Das ist ja das was du dich fragst.

Das heißt nicht dass man nicht auf andere Art und Weise Upscaling erreichen kann, aber es wird dann eben ein anderes Verfahren sein was mit weniger Rechenleistung auskommen muss.


Bitte was? Ich habe nirgendwo was gegen spezialisierte Hardware geschrieben. Es ging darum, ob die Int8-Leistung von RDNA2 für DLSS reicht. Das kann man eben im Moment am besten abschätzen, wenn man die Zeit der Auslastung der Tensor Cores betrachtet. Je geringer die Zeit, die die Tensor Cores brauchen, desto höher ist die Chance, dass DLSS bei der nächsten Konsolengeneration funktioniert bzw. sinnvoll eingesetzt werden kann.

Jetzt kann man sich natürlich auch fragen, was passieren würde, wenn man, sagen wir mal, nur halb so viele Tensor Cores hätte. Dann würde man 7% der restlichen Renderingzeit verlieren, weil das Upscaling länger dauert, hätte aber auch schätzungsweise 10% mehr Chipfläche für andere Sachen zur Verfügung (nur ein Beispiel, bezogen auf den Graphen von Dampf und auch nur bezogen darauf, dass die Tensor Cores nicht parallel laufen). Das ist aber nicht das, worum es mir eigentlich ging. Es ging vor allem darum zu zeigen, dass DLSS auch ohne brutale Int8-Leistung sinnvoll sein kann.

Ihr interpretiert hier einiges rein, was ich nie geschrieben habe.


Milchmädchenrechnung incomming:

Weiter vorne stand, dass die Tensor Cores 20% Fläche bei 7% Auslastung pro Frame kosten.
Wenn ich die 20% der Fläche für 20% mehr Shader nutze (sollte sogar mehr möglich sein), bekomme ich das ganze Frame 20% schneller berechnet und die 7% "AI" dauern 3,2 mal so lange (4 fache Beschleunigung durch Tensor Cores):
93% * 0,8 + 7% * 3,2 = 96,8% der Zeit mit Tensor Cores

Ja wie gesagt Milchmädchenrechnung denn man hat nie 100% Auslastung und 100% Shader Scalierung. Aber wenn die Spezial Hardware nur so gering genutzt wird, ist der Mehraufwand/Kosten schon in Frage zu stellen. Desweiteren hätten die Shader eine Auswirkung auf alle Spiele und nicht nur eine Hand voll.

Danke, wollte gestern Abend noch so eine ähnliche Milchmädchenrechnung bringen, war aber dann zu müde. War so ähnlich wie das, was ich oben geschrieben habe.

Kann ich auch nicht ganz nachvollziehen. Kamen die 20% nicht mal aus der Differenz der SM Größe zwischen einem RTX Turing und einem GTX Turing? Ein GTX Turing hat die Tensor Cores nicht (jedoch die 32 INTs) und auch fehlen die RT Cores. Ich tippe darauf, dass ein gutes Stück weniger als die 20% sind.

Edit: Hab gerade nochmal nachgeschaut und du scheinst Recht zu haben.

https://www.techpowerup.com/254452/nvidia-rtx-logic-increases-tpc-area-by-22-compared-to-non-rtx-turing

+22% insgesamt, davon 1,25mm²/1,95mm² durch die Tensor Cores. So kommt man auf 14%.

Gast
2020-05-13, 19:50:23
https://www.techpowerup.com/254452/nvidia-rtx-logic-increases-tpc-area-by-22-compared-to-non-rtx-turing

+22% insgesamt, davon 1,25mm²/1,95mm² durch die Tensor Cores. So kommt man auf 14%.

Area pro TPC ist nicht Area pro DIE.

Da ist es nicht mal die Hälfte, auf den ganzen DIE gerechnet kostet die ganze RTX-Logik + Tensor-Cores gerade mal ca. 10%

https://www.reddit.com/r/hardware/comments/baajes/rtx_adds_195mm2_per_tpc_tensors_125_rt_07/

Gast
2020-05-13, 19:53:24
Ich hab mal was Feines für euch:

https://imgur.com/Qhr8bWn (die Forum Einbettung von Videos und Bildern funktioniert in letzer Zeit gar nicht )

Das ist die Rendering Pipeline von Control mit DLSS. Der rote Pfad ist die Tensor-Core Auslastung, man sieht am Ende des Frames schlägt diese aus! Was aber noch auffällt, sobald die Tensor Cores Vollgas geben, gehen die normalen Shader-ALUs auf Sparflamme. Da die TC an der Speicherbandbreite und am Power-Budget zehren ist auch klar warum!

Interessant ist auch, dass laut dem Graph, SM Issue absinkt sobald die Tensor Cores aktiv werden, und die FP/INT-Cores nicht mehr viel machen.

Offenbar läuft das Scheduling für die Tensor-Cores, also nicht über den normalen Warp Scheduler, sondern über irgendwas anderes.

robbitop
2020-05-14, 10:14:00
Interessant ist auch, dass laut dem Graph, SM Issue absinkt sobald die Tensor Cores aktiv werden, und die FP/INT-Cores nicht mehr viel machen.

Offenbar läuft das Scheduling für die Tensor-Cores, also nicht über den normalen Warp Scheduler, sondern über irgendwas anderes.
Das kann gut sein - aber es kann unabhängig davon auch daran liegen, dass die Implementierung von DLSS laut GTC Talk so aussieht:

Spiel rendert die Szene in Inputauflösung ohne PP/HUD -> DLSS Upscaling -> PP/HUD.
Sofern das Spiel keinen neuen Frame anstößt, ist in der Zeit von DLSS eben nichts anderes zu tun als DLSS selbst.

Wobei die FPUs ja hier auch unterstützen könnten... Insofern guter Punkt. IIRC hatte Troyan ja auch hier geschrieben, dass die TCs nur allein arbeiten können.

Troyan
2020-05-14, 10:16:52
Es sind und waren nie 20%. Vergleicht man Volta mit Pascal (GP100) wächst die Fläche annährend mit dem Recheneinheiten. Die TensorCores gehen im Grundrauschen fast unter.

robbitop
2020-05-14, 10:35:11
Naja wenn man auf SM Ebene TU116 und TU106 vergleicht, kommt man da schon hin. Aber es sind auch die RT Cores als Differenz. Das waren ~20%. Nicht im Vergleich zu Pascal.

Ein Großteil des Wachstums ggü Pascal pro SM kommt aber vom moderneren SM. Die INT32 Units und auch der größere Cache, mehr Controlllogik, neureres Featureset.

Gast
2020-05-14, 19:55:32
Das kann gut sein - aber es kann unabhängig davon auch daran liegen, dass die Implementierung von DLSS laut GTC Talk so aussieht:

Ja schon, aber irgendwas muss ja trotzdem die Tensorcores mit Befehlen und Daten füttern.

Und laut Graph ist es eben nicht der Warp Scheduler, also entweder der Graph ist fehlerhaft, oder die Tensor-Cores arbeiten vollkommen unabhängig vom Warp-Scheduler und damit von den FP32/INT32 Einheiten.

Troyan
2020-05-14, 20:14:34
A100 (basierend auf 824mm^2 Die) hat selbst mit 15% weniger Recheneinheiten eine 13x höhere Rechenleistung als die Xbox Series X mit 360mm^2. Nur so als Antwort auf die Frage, ob man denn unbedingt dedizierte Recheneinheiten benötigen würde für Inference.

Nimmt man die GPU der Xbox auf 270mm^2 an, dann liegt das Verhältnis von Leistung/Fläche bei ca. 4x pro Ampere.

Gast
2020-05-14, 23:32:34
A100 (basierend auf 824mm^2 Die) hat selbst mit 15% weniger Recheneinheiten eine 13x höhere Rechenleistung als die Xbox Series X mit 360mm^2. Nur so als Antwort auf die Frage, ob man denn unbedingt dedizierte Recheneinheiten benötigen würde für Inference.

Nimmt man die GPU der Xbox auf 270mm^2 an, dann liegt das Verhältnis von Leistung/Fläche bei ca. 4x pro Ampere.

Was sollen denn immer diese komischen Vergleiche von dir?
HPC Karte für Tausende Dollar, die zum anlernen der Netze verwendet wird vs Consumer Konsole für ein Paar hundert Dollar die trainierte Netze ausführen muss.


Was zählt bei NVidia eigentlich alles als TensorOP? Das sind immer so schöne große Zahlen, aber welche Operationen da genau drunter fallen findet man nie. Eine TensorOP Zahl von AMD auf der anderen Seite auch nicht.

robbitop
2020-05-15, 11:38:16
Ja schon, aber irgendwas muss ja trotzdem die Tensorcores mit Befehlen und Daten füttern.

Und laut Graph ist es eben nicht der Warp Scheduler, also entweder der Graph ist fehlerhaft, oder die Tensor-Cores arbeiten vollkommen unabhängig vom Warp-Scheduler und damit von den FP32/INT32 Einheiten.
Das scheint eher eine Limitierung der Implementierung zu sein. Ich zitiere mal aus dem Nachbarthread

Ja, sieht man hier zum Beispiel

https://www.techpowerup.com/forums/attachments/qr86ctlnbfwcrcfc-jpg.119117/

Der Screenshot zeigt dort, dass die TCs parallel zu den anderen Units laufen.


A100 (basierend auf 824mm^2 Die) hat selbst mit 15% weniger Recheneinheiten eine 13x höhere Rechenleistung als die Xbox Series X mit 360mm^2. Nur so als Antwort auf die Frage, ob man denn unbedingt dedizierte Recheneinheiten benötigen würde für Inference.

Nimmt man die GPU der Xbox auf 270mm^2 an, dann liegt das Verhältnis von Leistung/Fläche bei ca. 4x pro Ampere.
Äpfel/Birnen oder? Die Inferencing Leistung ist gigantisch. Die hat aber aktuell kaum Bezug zu 3D Grafik in Spielen (mag sich mittel/langfristig ändern). Für diese ist der FP32 Durchsatz und aber auch andere Dinge wir Texelfillrate, ROP Durchsatz etc entscheidend.

HPC/3D Grafik haben schon stark unterschiedliche Schwerpunkte, so dass natürlich auch stark unterschiedliche Optimierungsansätze bei der Auslegung der HW gewählt werden. Sieht man gut daran, dass beide IHVs unterschiedliche uArchs für HPC und 3D haben. Irgendeine rohe Zahl zu vergleichen sagt dann wirklich gar nichts aus. Insbesondere TOPs tun das nicht. Das sind Spezialeinheiten, wo man pro Transistor einfach irre viel mehr bekommt. Selbst mobile SoCs haben da schon relativ viele TOPs im Vergleich zur FP32 Rohleistung einer klassischen PC GPU. Kann man auch gut bei den spezifischen AI Chips sehen, die es ja auch noch gibt - googles TPU und IIRC gibt es noch 3+ andere reine TPU Chips.
A100 ist sicherlich mit CDNA zu vergleichen. GA102 dann mit big Navi.

BlacKi
2020-05-15, 12:46:25
hier mit timestamp für dlss 2.0 vs 1.x verhalten in bewegung
https://youtu.be/YWIKzRhYZm4?t=191


DLSS2.0 ist eine reine Softwareverbesserung und die Ergebnisse sind schon ziemlich gut.
hier sagen sie, das erst mit 2.0 die tensor cores genutzt werden. die performance und bildqualität ohne die ai cores, so wie wohl auf der ps5 und amds kommendem big navi (RIP^^),wird das level an beschleunigung und qualität nicht erreichen können.
https://youtu.be/YWIKzRhYZm4?t=16
den 2.0 standard wird man nur mit extra cores erreichen können.

und dann kam ampere mit den verbesserten tensor cores und dlss3.0. und bringen:
Es erscheint mir fragwürdig, mit DLSS überhaupt noch eine Renderauflösung >= Ausgabeauflösung zu verwenden

Gast
2020-05-15, 15:18:58
Das scheint eher eine Limitierung der Implementierung zu sein. Ich zitiere mal aus dem Nachbarthread



Der Screenshot zeigt dort, dass die TCs parallel zu den anderen Units laufen.



Genau das meine ich ja. Laut dem Graph benötigen die Tensor-Cores eben gar keine Ressourcen im Scheduler, was im Umkehrschluss bedeuten müsste, dass dieser weiterhin für FP32/INT32 vollständig zur Verfügung steht, wenn die Software diese auch verwenden wollte.

Eigentlich bin ich bisher immer davon ausgegangen, aus den Blockschaltbildern, dass die Tensor-Cores vom selben Scheduler wie INT32/FP32 angesteuert werden, was natürlich immer noch eine parallele Nutzung erlauben würde, aber eben auch zu einem Limit an Scheduling-Ressourcen führen könnte.

So wie es aussieht wird aber der Scheduler überhaupt nicht benutzt, steht also weiterhin für INT32/FP32 vollständig zur Verfügung, und würde daher die parallele Nutzung von Tensor und INt32/FP32 in keinster Weise limitieren.


Äpfel/Birnen oder? Die Inferencing Leistung ist gigantisch. Die hat aber aktuell kaum Bezug zu 3D Grafik in Spielen (mag sich mittel/langfristig ändern). Für diese ist der FP32 Durchsatz und aber auch andere Dinge wir Texelfillrate, ROP Durchsatz etc entscheidend.

HPC/3D Grafik haben schon stark unterschiedliche Schwerpunkte, so dass natürlich auch stark unterschiedliche Optimierungsansätze bei der Auslegung der HW gewählt werden. Sieht man gut daran, dass beide IHVs unterschiedliche uArchs für HPC und 3D haben. Irgendeine rohe Zahl zu vergleichen sagt dann wirklich gar nichts aus. Insbesondere TOPs tun das nicht. Das sind Spezialeinheiten, wo man pro Transistor einfach irre viel mehr bekommt. Selbst mobile SoCs haben da schon relativ viele TOPs im Vergleich zur FP32 Rohleistung einer klassischen PC GPU. Kann man auch gut bei den spezifischen AI Chips sehen, die es ja auch noch gibt - googles TPU und IIRC gibt es noch 3+ andere reine TPU Chips.
A100 ist sicherlich mit CDNA zu vergleichen. GA102 dann mit big Navi.[/QUOTE]

Mr. Lolman
2020-05-16, 09:37:32
hier mit timestamp für dlss 2.0 vs 1.x verhalten in bewegung
https://youtu.be/YWIKzRhYZm4?t=191


hier sagen sie, das erst mit 2.0 die tensor cores genutzt werden. die performance und bildqualität ohne die ai cores, so wie wohl auf der ps5 und amds kommendem big navi (RIP^^),wird das level an beschleunigung und qualität nicht erreichen können.
https://youtu.be/YWIKzRhYZm4?t=16
den 2.0 standard wird man nur mit extra cores erreichen können.

und dann kam ampere mit den verbesserten tensor cores und dlss3.0. und bringen:

Naja. Es ist zwar deutlich schärfer, dafür gibts Ringing und Ditheringartefakte. Sooo gut scheint mir DLSS 2.0 auch nicht zu sein, an manchen Kanten ist 1.9 gar besser.

Dampf
2020-05-16, 10:46:25
Naja. Es ist zwar deutlich schärfer, dafür gibts Ringing und Ditheringartefakte. Sooo gut scheint mir DLSS 2.0 auch nicht zu sein, an manchen Kanten ist 1.9 gar besser.

Das liegt aber eher an Control als an DLSS. Sieh dir Wolfenstein an, dort gibts diese Artefakte und das Ringing nicht.

Neosix
2020-05-16, 10:56:55
Außerdem muss man ja immer festhalten, dass es immer nur eine Moment Aufnahme ist. Und Nvidia die "Leistung" von DLSS stätig weiter optimiert.

robbitop
2020-05-16, 12:13:48
Das Ringing liegt am Nachschärfen in Controll welches man nicht einstellen kann. Nicht an DLSS. Auch diese Kinderkrankheiten wird man beseitigen.

aufkrawall
2020-05-16, 12:18:16
Ein Video, anhand dessen man die temporale Qualität beurteilen könnte, wäre schon nett. Man kann mit obs-studio nvenc mit I444 aufnehmen. Dummerweise kann man das wohl nicht mit HW-Decoding abspielen und bei den benötigten Bitraten für Richtung Transparenz, wär das gewiss ein Problem. :freak:

Dampf
2020-05-18, 11:40:58
Hehe. Jetzt da Nvidia ihre neuen Ampere GPUs mit den verbesserten Tensor Kernen einsetzt, sollte das DLSS Training noch schneller gehen!

TheAntitheist
2020-05-18, 13:17:01
Hehe. Jetzt da Nvidia ihre neuen Ampere GPUs mit den verbesserten Tensor Kernen einsetzt, sollte das DLSS Training noch schneller gehen!
das wurde hier schon 10x gesagt aber für dich nochmal, seit DLSS2.0 gibts das nicht mehr.

TheAntitheist
2020-05-18, 13:18:21
Das Ringing liegt am Nachschärfen in Controll welches man nicht einstellen kann. Nicht an DLSS. Auch diese Kinderkrankheiten wird man beseitigen.
das war eine Entscheidung des Entwicklers, den Regler NICHT ins Spiel zu integrieren. Hat nix mit DLSS zu tun.

BigKid
2020-05-18, 13:29:06
das wurde hier schon 10x gesagt aber für dich nochmal, seit DLSS2.0 gibts das nicht mehr.
Das stimmt so nu auch wieder nicht... Das Trainieren pro Spiel entfällt... Aber auch wenn NVidia das neue allgemeingültige Netz für DLSS2.0 optimieren will werden sie nachtrainieren/neutrainieren müssen... So falsch ist die Aussage also nicht... Und je schneller das geht desto leichter fällt die Entscheidung vlt. doch nochmal drann zu drehen... Diese Netze MUSST du trainieren - sie kommen NIE trainiert auf die Welt und wenn du am Design des Netzes schraubst musst du neu trainieren...

Dampf
2020-05-18, 13:50:56
Das stimmt so nu auch wieder nicht... Das Trainieren pro Spiel entfällt... Aber auch wenn NVidia das neue allgemeingültige Netz für DLSS2.0 optimieren will werden sie nachtrainieren/neutrainieren müssen... So falsch ist die Aussage also nicht... Und je schneller das geht desto leichter fällt die Entscheidung vlt. doch nochmal drann zu drehen... Diese Netze MUSST du trainieren - sie kommen NIE trainiert auf die Welt und wenn du am Design des Netzes schraubst musst du neu trainieren...

So ist es.

TheAntitheist
2020-05-20, 22:20:44
Das stimmt so nu auch wieder nicht... Das Trainieren pro Spiel entfällt... Aber auch wenn NVidia das neue allgemeingültige Netz für DLSS2.0 optimieren will werden sie nachtrainieren/neutrainieren müssen... So falsch ist die Aussage also nicht... Und je schneller das geht desto leichter fällt die Entscheidung vlt. doch nochmal drann zu drehen... Diese Netze MUSST du trainieren - sie kommen NIE trainiert auf die Welt und wenn du am Design des Netzes schraubst musst du neu trainieren...
DLSS training impliziert aber das er DLSS-like per game training meint, sonst sagt man ja nur neuronales netz training oder sonstwas... naja das stimmt schon.

Geldmann3
2020-05-22, 01:49:26
So wie ich DLSS 2.0 verstanden habe, ist das neuronale Netz hier nicht mehr zum Upscaling zuständig. Es generiert keine zusätzlichen Samples, wie beispielsweise AI-Gigapixel oder andere AI-Bildupscaler.

Das verstehen momentan viele falsch.

Die zusätzlichen Samples werden bereits temporal dem nativen Bild entnommen, das neuronale Netz bereitet diese Samples nur noch möglichst Artefaktfrei auf.

Es ist mehr temporales Supersampling als AI-Upscaling.

Akkarin
2020-05-22, 11:24:57
Dumme frage: gibt es DLSS2.0 bereits außerhalb von Control ? Es wäre schön nachzuvollziehen zu können wie viel des Effekts von DLSS und wie viel von dem aggresiven sharpening kommt.

BlacKi
2020-05-22, 11:30:52
Dumme frage: gibt es DLSS2.0 bereits außerhalb von Control ? Es wäre schön nachzuvollziehen zu können wie viel des Effekts von DLSS und wie viel von dem aggresiven sharpening kommt.
Wolfenstein Youngblood und Deliver Us The Moon, die bisher neuesten Spiele mit DLSS, zeigen den neuen 2.0-Ansatz bereits in Aktion. In Kürze werden auch Mechwarrior 5 und Control mit DLSS 2.0 ausgerüstet.
https://www.pcgameshardware.de/Nvidia-Geforce-Grafikkarte-255598/Specials/DLSS-20-Test-Infos-1346121/
edit: hat sich erledigt

pixeljetstream
2020-05-22, 11:39:59
Wolfenstein Youngblood und Deliver Us The Moon, die bisher neuesten Spiele mit DLSS, zeigen den neuen 2.0-Ansatz bereits in Aktion. In Kürze werden auch Mechwarrior 5 und Control mit DLSS 2.0 ausgerüstet.
https://www.pcgameshardware.de/Nvidia-Geforce-Grafikkarte-255598/Specials/DLSS-20-Test-Infos-1346121/

lese ich das richtig heraus, das geforce now dlss unterstützt und dort bereits 20 spiele mit dlss2.0 laufen, oder laufen werden?
https://www.nat-games.de/2020/05/03/nvidia-geforce-now-ueber-20-neue-spiele-und-dlss-2-0-support/
Lese ich als zwei getrennte Dinge, nur unglücklich formuliert dort

BlacKi
2020-05-22, 11:56:30
ich stelle trotzdem mal die frage in den raum. warum kann nicht jedes spiel das dlss unterstützt auch 2.0? angeblich muss man es nicht für jedes einzelne spiel neu anlernen?

Raff
2020-05-22, 12:14:13
DLSS 2.0 kann in den folgenden Spielen begutachtet werden:

- Bright Memory
- Control
- Deliver Us The Moon
- Mechwarrior 5
- Minecraft Windows 10 Edition RTX-Beta
- Wolfenstein Youngblood

MfG
Raff

BUG
2020-05-22, 12:19:38
**MineCraft RTX

Edit: Schade des es für MonsterHunter-World noch nicht verfügbar ist. :frown:

Gruß
BUG

BlacKi
2020-05-22, 12:47:51
schade das es nicht für pubg verfügbar ist, obwohl man in der config den eintrag schon auf false finden kann.

robbitop
2020-05-22, 12:56:32
So wie ich DLSS 2.0 verstanden habe, ist das neuronale Netz hier nicht mehr zum Upscaling zuständig. Es generiert keine zusätzlichen Samples, wie beispielsweise AI-Gigapixel oder andere AI-Bildupscaler.

Das verstehen momentan viele falsch.

Die zusätzlichen Samples werden bereits temporal dem nativen Bild entnommen, das neuronale Netz bereitet diese Samples nur noch möglichst Artefaktfrei auf.

Es ist mehr temporales Supersampling als AI-Upscaling.
Informationen aus temporalen Informationen zu holen ist wesentlich cleverer (und komplexer) als einach nur an einem 2D Bild upzuscalen.
TSSAA funktioniert aufgrund seiner Heuristik ja nur mittelmäßig gut. Ein NN ist hier wesentlich besser. Und das sieht man auch.

Kleines Beispiel, wie unser Gehirn das macht. Fahre mal an einer semi durchlässigen Hecke entlang oder einem Lattenzaun. Was dahinter liegt ist also nur zum Teil sichtbar. Bewegt man sich jedoch bekommt man unterschiedliche Informationen über das dahinterliegende und das Neuronale Netzwerk des Gehirns baut die Szene zusammen und korrigiert sogar den räumlichen Versatz. Ohne temporale Komponente geht das nicht.

Wenn man sich mal die Beispiele aus dem GTC Talk anschaut - die vielen kleinen Lichter in der Ferne, die nun auf einmal mit DLSS da sind. Die wären mit reinem AI Upsampling nicht da - weil davon auf dem Bild keine Spur ist. Aber mit leicher Bewegung trifft man halt Details die weiter weg sind immer mal wieder und schon kann man es dank temporalen Daten einfließen lassen.

Je mehr Daten zur Verfügung stehen, desto besser ist das Endergebnis potenziell.

Man fügt mit temporalen Daten einfach mal eine Dimension an Daten hinzu.
Zumal DLSS sicherlich auch noch Zugriff auf den Depth Buffer hat. Noch eine Dimension.

Dampf
2020-05-22, 13:11:11
So langsam können mal neue DLSS 2.0 Titel eintrudeln. Red Dead Redemption 2, der Hardware-Fresser, würde sich perfekt dafür anbieten.

Daredevil
2020-05-22, 13:14:12
Nvidia macht das ja durchaus im Eigensinn, dass sie DLSS als Tool nur da bringen ( Soweit ich weiß ), wo man die Leistung auch mit RTX braucht.
Ich weiß nicht, wie sehr der "WoW- Faktor" da wäre, wenn ein Spiel DLSS bekommt, welches kein RTX unterstützt. Aber wünschenswert wäre es natürlich! :)

aufkrawall
2020-05-22, 13:17:05
Für RDR2 würde es schon enorm etwas bringen, so wie das TAA die Vegetation vermatscht. :(

RLZ
2020-05-22, 14:02:58
Wenn man sich mal die Beispiele aus dem GTC Talk anschaut - die vielen kleinen Lichter in der Ferne, die nun auf einmal mit DLSS da sind. Die wären mit reinem AI Upsampling nicht da - weil davon auf dem Bild keine Spur ist. Aber mit leicher Bewegung trifft man halt Details die weiter weg sind immer mal wieder und schon kann man es dank temporalen Daten einfließen lassen.
Als kleiner Ergänzung fürs Verständnis: Das erfordert keine Bewegung der Kamera, weil Nvidia da einen Jitter bei dem Pixelpositionen drüberlegt.

Gehn wir da einen Abstraktionsschritt weiter, haben wir nun Samples mit Timestamps aus denen durch eine Funktion (NN) das endgültige Ergebnis berechnet wird. Der nächste Schritt wird sein, die Samples nicht mehr einfach stupide über das Pixelgrid zu verteilen, sondern sie gezielt an den interessanten Positionen zu generieren. Oculus macht das schon für ihr Foveated Rendering, aber da ist imho auch für klassisches Rendering noch ganz viel Potential drin. VRS kombiniert mit DLSS 2.0 geht schon in die Richtung.

robbitop
2020-05-22, 15:30:55
Als kleiner Ergänzung fürs Verständnis: Das erfordert keine Bewegung der Kamera, weil Nvidia da einen Jitter bei dem Pixelpositionen drüberlegt.
Ja das stimmt. :)

pixeljetstream
2020-05-22, 15:52:03
ich stelle trotzdem mal die frage in den raum. warum kann nicht jedes spiel das dlss unterstützt auch 2.0? angeblich muss man es nicht für jedes einzelne spiel neu anlernen?
Anderer Algorithmus, andere Schnittstellen in den Engines.

aufkrawall
2020-05-22, 16:06:06
Allerdings wär ein DL-Upscaler für GPU-Upscaling generell schön. Die bisherigen bilinear/integer-Möglichkeiten + Sharpen sind ziemlich unterwältigend und mit den TCs sollte schon was gehen.

Geldmann3
2020-05-22, 17:35:34
Allerdings wär ein DL-Upscaler für GPU-Upscaling generell schön. Die bisherigen bilinear/integer-Möglichkeiten + Sharpen sind ziemlich unterwältigend und mit den TCs sollte schon was gehen.

Das ist eben sehr ineffizient. Wenn Du mal versucht ein Bild mit AI-Gigapixel hochzurechnen, welches ebenfalls GPU beschleunigt ist, merkst Du, dass es viele Sekunden dauert, um nur einen Frame hochzurechnen und obwohl es so lange dauert, steigt die wahrgenommene Auflösung im Schnitt nur um 2x. Doch AI scheint sehr gut darin zu sein Aliasing-Artefakte zu entfernen, genau wie JPEG Artefakte. Eventuell sollte man sich eher darauf konzentrieren. Artefakte erkennen wie SMAA es tut und dann mit ML nur diese Bereiche glätten ohne Schärfe einzubüßen.

Auch für verlustbehaftete Videokompression sehe ich großes Potenzial in ML. Da reichen dann 10% der aktuellen Bitrate.

Gehn wir da einen Abstraktionsschritt weiter, haben wir nun Samples mit Timestamps aus denen durch eine Funktion (NN) das endgültige Ergebnis berechnet wird. Der nächste Schritt wird sein, die Samples nicht mehr einfach stupide über das Pixelgrid zu verteilen, sondern sie gezielt an den interessanten Positionen zu generieren. Oculus macht das schon für ihr Foveated Rendering, aber da ist imho auch für klassisches Rendering noch ganz viel Potential drin. VRS kombiniert mit DLSS 2.0 geht schon in die Richtung.
Uhh, das ist eine gute Idee, man könnte die Samples auch so im Bild verteilen, dass hochfrequente Bereiche häufiger abgetastet werden. Wobei das ja schon in Richtung VRS geht.

Slipknot79
2020-05-22, 21:16:43
Anderer Algorithmus, andere Schnittstellen in den Engines.


Kannst du nicht Lederjacke/Plastiktüte zustecken, er soll RDR2 in seinen Servern durch DLSS 2.0 ballern, damit wir das Teil gut spielen können? :redface:

Dampf
2020-05-22, 21:24:18
Kannst du nicht Lederjacke/Plastiktüte zustecken, er soll RDR2 in seinen Servern durch DLSS 2.0 ballern, damit wir das Teil gut spielen können? :redface:

Aber echt, was für ein fürchterlich optimierter Titel. Verlangt für High 1440p60 ne 2070 Super. Dabei gibts visuell wenig Unterschiede zu den Konsolen-optimieren Settings.

Wenns auf Ultra wenigstens wie ein Next Gen Titel aussehen würde, aber nein, nur Leistung kostet das Ding.:mad:

Dampf
2020-06-30, 11:57:55
Death Stranding kriegt wohl DLSS 2.0

https://www.dsogaming.com/news/death-stranding-pc-support-dlss-2-0-tech/

Tolle Neuigkeiten. Es ist immer schön zu hören, wenn auch ohne RTX Titel DLSS bekommen.

Troyan
2020-06-30, 12:14:24
AMIED EVIL hat ebenfalls DLSS2.0 erhalten. Indie-Game mit UE4 Engine.

Karümel
2020-07-04, 08:56:08
Facebook? hat jetzt auch so etwas:confused:
https://research.fb.com/blog/2020/07/introducing-neural-supersampling-for-real-time-rendering/

Rooter
2020-07-04, 09:40:27
:confused: Woher kommen denn die Details? Oder verstehe ich das falsch? Im ersten Bild rechts die Wörter "Tokyo Berlin London" kann man beim besten Willen nicht entziffern in der Low-Res Version! Woher hat die AI die?

MfG
Rooter

BlacKi
2020-07-04, 10:10:39
in bewegten bildern ist das für computer definitiv möglich, ich dachte erst, der source input wäre nur ein bild.

Rooter
2020-07-04, 10:43:46
Ist ja auch ein Video auf der Seite. Da erkennt man es aber auch nicht besser.

MfG
Rooter

BlacKi
2020-07-04, 11:01:43
einzeln betrachtet nicht. aber die AI kann aus den mehreren einzelnen bildern ein verbessertes bild machen. ein beispiel ist zb. die microwelle mit dem gitter. wenn man in bewegung ist, kann man durchsehen, wenn man still steht wirds schwierig.

deep learning kann mehr als wir menschen jemals können werden.

Badesalz
2020-07-04, 11:14:09
:confused: Woher kommen denn die Details? Oder verstehe ich das falsch? Im ersten Bild rechts die Wörter "Tokyo Berlin London" kann man beim besten Willen nicht entziffern in der Low-Res Version! Woher hat die AI die?Das geht. Du musst dir aber mal richtig den Sofavorleger anschauen. DAS ist übelst.

deep learning kann mehr als wir menschen jemals können werden.Das ist klar. Es wird auch von den Vulkaniern entwickelt... Und das allerschönste ist, wenn was schief läuft - eben nicht nur bei solchen Spielchen wie oben - ist keiner schuld. Weil, es war halt die KI.

"Die Software war es" :usweet:

eccle
2020-07-04, 12:11:23
>> Woher kommen denn die Details?

Kommt auf das Verfahren an. Bei einem Variationsansatz gibt es keine vorhandene Wissensbasis. Man nutzt im Allgemeinen die temporale Umgebung (die Bilder vorher und nachher).

Der Ansatz von Facebook ist klassisches DL und verwendet die umgebenden Bilder in einem CNN. Die Details kommen aus der temporalen Umgebung, aber auch aus dem was der Algorithmus im Training gelernt hat.

>> in bewegten bildern ist das für computer definitiv möglich

Das geht auch in unbewegten Bildern. Ich würde dann ein Adversarial Network verwenden. Die Details werden dann „halluziniert“.

>> deep learning kann mehr als wir menschen jemals können werden.

Eine Mikrowelle kann auf eine gewisse Weise mehr als meine liebe Mutter. Ich möchte sie trotzdem nicht durch ein solches Gerät ersetzen.

pixeljetstream
2020-07-04, 12:18:54
Sie verbraucht vor allem deutlich mehr Strom ;)

BlacKi
2020-07-04, 13:21:21
g1p7qROx6xo

ob man die infiltrator demo ebenfalls mit dlss2.0 starten kann?