Anmelden

Archiv verlassen und diese Seite im Standarddesign anzeigen : DirectX12 Ultimate und DirectStorage - NextGen-Gaming auf dem PC


Seiten : 1 [2]

Troyan
2021-06-26, 13:48:52
@Platos

wenn du daten schneller nachladen (streamen) kannst, musst du auch viel weniger daten vorhalten. man kann daten on-the-fly nachladen während man vorher daten für die nächsten ~20s oder wieviel auch immer hätte vorhalten müssen. damit sinkt der ram-bedarf auf den sichtbaren inhalt + 2-3s puffer im gegensatz zu 20s+ puffer.


Nein, das ist falsch. Wir hatten das ganze schon im Konsolenthread. Die GPU greift bit-weise pro Channel auf die Daten im VRAM zu. Du musst also dafür sorgen, dass die Informationen im VRAM liegen bevor die GPU darauf zugreifen will. On Time Laden ist daher genauso nutzlos nur eben nicht ganz so extrem wie mit ohne DS.

DS ermöglicht das deutlich schnellere Lesen von Informationen, um somit z.B. Ladezeiten zu reduzieren. Aber das Rendering passiert erst, sobald die Informationen im VRAM vorliegen.

Platos
2021-06-26, 13:51:47
Genau, aber die GPU ladet es selbst in den VRAM (anscheinend) ohne über den CPU RAM zu gehen.

Und genau das erhöht aus meiner Sicht automatisch den VRAM bedarf, da nun in den VRAM vorgeladen/vorgehalten werden muss. Vorher hat das der CPU RAM gemacht, die Daten wurden in diesem vorgehalten.

arcanum
2021-06-26, 13:55:30
Nein, das ist falsch. Wir hatten das ganze schon im Konsolenthread. Die GPU greift bit-weise pro Channel auf die Daten im VRAM zu. Du musst also dafür sorgen, dass die Informationen im VRAM liegen bevor die GPU darauf zugreifen will. On Time Laden ist daher genauso nutzlos nur eben nicht ganz so extrem wie mit ohne DS.

DS ermöglicht das deutlich schnellere Lesen von Informationen, um somit z.B. Ladezeiten zu reduzieren. Aber das Rendering passiert erst, sobald die Informationen im VRAM vorliegen.

das ist schon klar. mit on-the-fly ist auch das laden in den vram gemeint, da DS einen by-pass um den RAM macht und das langsame anfordern von hdd in den RAM enfällt.

Gast
2021-06-26, 14:07:30
Genau, das habe ich ja geschrieben. Trotzdem wird konventionell die GPU selbst bei nur 2-3s vorgeladenen Daten nicht alle davon benötigen(oder reicht die nvme Geschw. für Texturen? ).
DirectStorage kommt ja mit einem Bundle an anderer Funktionalität, die man eigentlich einsetzen muss. Da ist insgesamt der Zusammenhang nicht mehr so einfach.
Grundsätzlich hast du aber einen wichtigen Punkt in deiner Betrachtung vergessen: Die Auflösung
Im Optimalfall muss man für Texturen nur die Daten für die neu sichtbaren Bereiche nachladen (+ relativ konstanter Faktor in der Realität). Für 4K ist das halt die 4-fache Menge gegenüber 1080p.
Bis das aber relevant wird, sind die SSDs wieder schnell genug.

Also zumindest, wenn die GPU nicht komplett alle Daten dekomprimieren kann. Würde die GPU auch Daten dekomprimkeren können, die in den CPU RAM kommen, dann wäre das was anderes. Das geht aber anscheinend mit Direct Storage nicht (würde wahrscheinlich die PCI-E Anforderungen auch stark ansteigen lassen wegen stark erhöhtem Datentransfer).

Ich kann da überhaupt nicht folgen. Natürlich wird man die Daten für die GPU so bauen, dass die GPU sie dekomprimieren kann. Alles andere wäre dämlich.

Platos
2021-06-26, 14:08:21
Langsam ist es aber nicht aus GPU Sicht. Es ist eher schneller. Aus GPU Sicht kamt vorher alles angeforderte vom RAM, jetzt von einer viel langsameren SSD.

Damit spart man RAM, aber wie gesagt, warum sollte der VRAM dadurch nicht explodieren anstelle des RAMs?

arcanum
2021-06-26, 14:15:36
Langsam ist es aber nicht aus GPU Sicht. Es ist eher schneller. Aus GPU Sicht kamt vorher alles angeforderte vom RAM, jetzt von einer viel langsameren SSD.

Damit spart man RAM, aber wie gesagt, warum sollte der VRAM dadurch nicht explodieren anstelle des RAMs?

der bedarf steigt ja nur, wenn ich die daten plötzlich nur noch von der ssd anfordere und den ram ignoriere. wenn die ssd kontinuierlich 1-2gb/s an daten nachschieben kann, hebt das den effektiv verfügbaren vram.

am pc kommen aber noch "probleme" hinzu, die es bei einer konsole nicht gibt bzw. die man vermeiden kann. in horizon zero dawn werden die daten hinter dem charakter von platte geladen. dafür ist die drehgeschwindigkeit der kamera reduziert. beim pc muss man immer alle daten für 360° vorhalten, da sich der spieler dank maussteuerung blitzschnell umdrehen kann. diese daten muss man also jederzeit im vram vorhalten.

hängt halt immer alles vom spiel, von der implementierung und wie effizient alles genutzt wird ab.

Platos
2021-06-26, 14:31:52
der bedarf steigt ja nur, wenn ich die daten plötzlich nur noch von der ssd anfordere und den ram ignoriere. wenn die ssd kontinuierlich 1-2gb/s an daten nachschieben kann, hebt das den effektiv verfügbaren vram.

Genau, aber genau das tut ja Direct Storage? Es wird direkt in den Grafikspeicher geladen von der SSD und eben nicht mehr SSD-RAM-Grafikspeicher. Ergo muss alles in den Grafikspeicher vorgeladen werden, anstatt in den RAM.

am pc kommen aber noch "probleme" hinzu, die es bei einer konsole nicht gibt bzw. die man vermeiden kann. in horizon zero dawn werden die daten hinter dem charakter von platte geladen. dafür ist die drehgeschwindigkeit der kamera reduziert. beim pc muss man immer alle daten für 360° vorhalten, da der spieler sich blitzschnell umdrehen. diese daten muss man also jederzeit im vram vorhalten.

hängt halt immer alles vom spiel, von der implementierung und wie effizient alles genutzt wird ab.

Stimmt, und dadurch, dass das nun alles in den VRAM geladen wird anstatt in den RAM, würde der Verbrauch ja nochmals ansteigen.

Troyan
2021-06-26, 14:33:11
Langsam ist es aber nicht aus GPU Sicht. Es ist eher schneller. Aus GPU Sicht kamt vorher alles angeforderte vom RAM, jetzt von einer viel langsameren SSD.

Damit spart man RAM, aber wie gesagt, warum sollte der VRAM dadurch nicht explodieren anstelle des RAMs?

Warum sollte der VRAM explodieren? Für die GPU kommen die Daten über die PCIe Schnittstelle. Wann welche Daten transferiert werden, obliegt der Anwendung und dem Treiber. Der GPU ist es doch vollkommen egal, von wo die Daten gelesen werden.

arcanum
2021-06-26, 14:33:34
DS gibt der graka zwar die möglichkeit direkt daten von der SSD anzufordern, aber deswegen fällt ja nicht die möglichkeit weg gleichzeitig daten aus dem RAM zu laden?

Platos
2021-06-26, 14:53:50
Ja, aber diese werden nicht von der GPU dekomprimiert, ergo würde dann eine extreme CPU Last anfallen bei schnellen nvme SSDs.

Das ist ja der Vorteil bei Direct Storage. Die CPU wird nicht belastet.

Achill
2021-06-26, 15:56:40
Ja, aber diese werden nicht von der GPU dekomprimiert, ergo würde dann eine extreme CPU Last anfallen bei schnellen nvme SSDs.

Das ist ja der Vorteil bei Direct Storage. Die CPU wird nicht belastet.

Das Eine ergibt sich nicht aus dem Anderen. M.E. spricht nichts dagegen, die komprimierte Daten auf einer SSD auch genauso komprimiert im RAM liegen zu haben (im Sinne einer Cache), dadurch wird nicht die CPU belastet ...

Platos
2021-06-26, 16:00:11
Guter Einwand, darauf bin ich jetzt nicht gekommen. Das würde aber eine extrem krasse Dekomprimierungageschw. erfordern. Stell dir mal vor 50GB/s RAM lesend vor der dekompression. Die GPU müsste dann je nach Kompressionsverfahren vlt. so um die 100GB/s dekomprimieren.

Theoretisch würde das sowohl RAM als auch Grafikspeicherbedarf reduzieren (Grafikspeicher, wenn man eine schnelle SSD nutzt und RAM weil es komprimiert im Ram vorliegt)

Aber praktisch müsste man dann eine dekomprimierungageschw. von wie gesagt verm. so 100GB/s erreichen (ansonsten wird der RAM ausgebremst). Keine Ahnung, was so eine Datenrate für eine GPU Last erzeugen würde. Ich könnte mir vorstellen, dass sie riesig ist.

Tesseract
2021-06-27, 03:03:35
Aber müsste das nicht den Grafikspeicherbedarf explodieren lassen? Normalerweise ist es ja so, dass die GPU nur Daten anfordert und diese dann "sofort" (also in CPU RAM Geschwindigkeit ) geliefert werden.

da gibt es kein "normalerweise", das hängt davon ab was die engine macht. aus GPU-sicht gibt es zwei arten von speicher: device memory (vram) und host memory (über PCIe). keiner hindert das spiel daran weiter daten im systemram zu halten. DS bietet einfach einen zusätzlichen host memory auf der SSD den man nutzen kann.

TheAntitheist
2021-06-27, 05:06:26
MS hat doch gezeigt das man dadurch viel VRAM sparen kann, gibt ja videos dazu. Weil texturen später geladen werden können und nicht permanent im VRAM bleiben müssen.

Wenn das Laden aus dem RAM und von der SSD immer mit voller Geschwindigkeit funktioniert hätte, wären die Ladezeiten von Spielen ja auch nur ein paar Sekunden. Auch Spiele die 16GB VRAM brauchen würden, solltej ja in 6 Sekunden mit einer anständigen SSD geladen werden können oder in einer Sekunde aus dem RAM, das hat aber nie funktioniert. die CPU hat doch immer limitiert.

Platos
2021-06-27, 05:12:15
da gibt es kein "normalerweise", das hängt davon ab was die engine macht. aus GPU-sicht gibt es zwei arten von speicher: device memory (vram) und host memory (über PCIe). keiner hindert das spiel daran weiter daten im systemram zu halten. DS bietet einfach einen zusätzlichen host memory auf der SSD den man nutzen kann.

Ja schon, aber dann nutzt man das Feature nicht. Aber wenn man es z.B für massig Texturen nutzt, dann müsste doch der VRAM Bedarf ansteigen? Bzw. bei einer eher mittelmässigen nvme SSD eben stärker.

Aber wie sieht es mit Achill's Vorschlag aus? Kann man mit Direct Storage Daten komprimiert ins RAM laden und dann die komprimierten Daten der GPU zuschicken, die sie dann selbst dekomprimiert ?

Oder sind da die Datenrate einfach zu hoch ?

Platos
2021-06-27, 05:16:08
MS hat doch gezeigt das man dadurch viel VRAM sparen kann, gibt ja videos dazu. Weil texturen später geladen werden können und nicht permanent im VRAM bleiben müssen.

Wenn das Laden aus dem RAM und von der SSD immer mit voller Geschwindigkeit funktioniert hätte, wären die Ladezeiten von Spielen ja auch nur ein paar Sekunden. Auch Spiele die 16GB VRAM brauchen würden, solltej ja in 6 Sekunden mit einer anständigen SSD geladen werden können oder in einer Sekunde aus dem RAM, das hat aber nie funktioniert. die CPU hat doch immer limitiert.

Ja aber wie geht das mit dem VRAM sparen? Eigentlich müssten jegliche Daten schon im RAM sein und dann wäre eine SSD nicht schneller. Der RAM Bedarf müsste eher sinken, nicht der VRAM Bedarf? Aber wie auch immer, ich checks nicht ganz. Dafür müsste ich wohl genau(er) wissen, wie DS funktioniert/funktionieren kann.

Ich kann mir irgendwie kaum vorstellen, dass mitten im Game Daten nicht schnell genug ins RAM geschaufelt werden können, weil die CPU nicht hinterherkommt. Dann würde es doch stocken im Spiel. Die Daten werden ja beim Laden ins RAM entpackt und nicht beim lesen davon, oder ? :D

dargo
2021-06-27, 07:50:39
@Dargo: Naja, die PS5 SSD ist ja auch deutlich schneller wie die der XBox. Also der kleinste gemeinsame Nenner dürfte wenn dann maximal XBox SSD Geschw. sein.
Ah... ok, ist an mir vorbei gegangen. Dachte die hätten gleiche Speeds.

Gast
2021-06-27, 10:49:25
Wenn das Laden aus dem RAM und von der SSD immer mit voller Geschwindigkeit funktioniert hätte, wären die Ladezeiten von Spielen ja auch nur ein paar Sekunden. Auch Spiele die 16GB VRAM brauchen würden, solltej ja in 6 Sekunden mit einer anständigen SSD geladen werden können oder in einer Sekunde aus dem RAM, das hat aber nie funktioniert. die CPU hat doch immer limitiert.

Das laden eines Spieles ist mehr als nur Daten von der Festplatte in den VRAM zu kopieren, da müssen ja auch jede Menge Berechnungen initial statt finden. Den Teil wirst du nicht los nur weil die Daten der [zukünftigen] Bodentextur schneller im VRAM landen.

][immy
2021-06-27, 13:47:23
Ja aber wie geht das mit dem VRAM sparen? Eigentlich müssten jegliche Daten schon im RAM sein und dann wäre eine SSD nicht schneller. Der RAM Bedarf müsste eher sinken, nicht der VRAM Bedarf? Aber wie auch immer, ich checks nicht ganz. Dafür müsste ich wohl genau(er) wissen, wie DS funktioniert/funktionieren kann.

Ich kann mir irgendwie kaum vorstellen, dass mitten im Game Daten nicht schnell genug ins RAM geschaufelt werden können, weil die CPU nicht hinterherkommt. Dann würde es doch stocken im Spiel. Die Daten werden ja beim Laden ins RAM entpackt und nicht beim lesen davon, oder ? :D
Also aktuell klappt es so das Daten in großen Paketen, die alles mögliche beinhalten was man so gebrauchen könnte in den Speicher geschoben werden. Die einzelnen Pakete enthalten auch Duplikate und alles was vielleicht Mal im Level in den nächsten paar Abschnitten vor kommt.
Das wird gemacht damit die HDD Brandbreite nicht einbricht da die Daten sonst über die gesamte Platte verstreut liegen könnten was zu hohen suchzeiten führen kann da der Lesekopf hin und her springen muss und die Daten Mal zufällig vorbei kommen (drehende Platten).
Die Kompression kann daher sogar effektiver sein da diese alle Daten im Paket betrachtet.

Bei dem neuen Konzept hart du die Daten quasi einzeln komprimiert auf der SSD und lädst nur das, was du in den nächsten paar Sekunden benötigen könntest. Die Kompression ist dann potentiell weniger effektiv da über einen kleineren Datensatz komprimiert wird, dafür landet im Speicher aber nur das, was benötigt wird.

Ex3cut3r
2021-06-27, 13:54:28
Ich bin gespannt ob 8GB VRAM Karten damit doch länger als gedacht überleben werden. Theoretisch eigentlich ja. Aber am PC traue ich den Braten nicht so wirklich. Die meisten Entwickler können ja nicht mal DX12 Shader Compiler Stocker zum rls. vermeiden. Und die sollen jetzt so ein technisches Meisterwerk wie Direct Storage sauber implementieren? Nie im Leben.
Grade auch zur Anfangszeit, wenn es für alle noch Neuland ist.

Auf jeden Fall eine sehr interessante spannende Tech. Die IMO sogar viel zu spät kommt. Hätte es zur PS4 Zeiten schon geben sollen. Grade die 2 und 3GB VRAM Karten am Anfang des PS4 Zeitalters waren schon oft in FHD vollkommen überfordert. 4GB mit Maxwell waren schon besser, aber immer noch nicht optimal. Erst verdammte 3 Jahre später mit Pascal, welches endlich 6 und 8GB spendiert bekommen hat, könnte man ruhig schlafen. :biggrin:

Wenn wir jetzt noch die kommenden Jahre mehr Multi Core Unterstützung in Spielen sehen wurden. Musste man als PCler gar nicht so oft die neue HW Keule rausholen. Das wurde der Umwelt sicherlich gut zu Gesicht stehen, wenn der PCler sich mal 1-3 Jahre keine neue HW Kaufen müsste. DLSS und FSR tragen dazu auch schon bei.

Gute Entwicklung. Jetzt müsste noch ein Globales Gesetz kommen, dass es den großen Tech Unternehmen verbietet, jedes Jahr, ein neues Smartphone, GPU, CPUs usw. zu präsentieren. Und wir würden damit dem Planeten entlasten. Und kommenden Generationen einen Planeten hinterlassen, der zumindest nicht komplett "gefickt" ist. Wird zwar eh nie passieren, aber man darf träumen. :redface:

TheAntitheist
2021-06-27, 14:17:24
das hätte doch auf der PS4 nix gebracht mit einer HDD, oder kaum was... bei 25MB die pro sekunde geladen wurden, die sowieso keinen Umweg über den RAM zum VRAM machen müssen... glaub du hast Direct Storage dann nicht so verstanden.

Ex3cut3r
2021-06-27, 14:20:10
Ging mir nicht um die PS4, sondern um VRAM am PC zu sparen. Ich glaube du hast meinen Punkt nicht verstanden.

Platos
2021-06-27, 14:41:17
[immy;12719594']Also aktuell klappt es so das Daten in großen Paketen, die alles mögliche beinhalten was man so gebrauchen könnte in den Speicher geschoben werden. Die einzelnen Pakete enthalten auch Duplikate und alles was vielleicht Mal im Level in den nächsten paar Abschnitten vor kommt.
Das wird gemacht damit die HDD Brandbreite nicht einbricht da die Daten sonst über die gesamte Platte verstreut liegen könnten was zu hohen suchzeiten führen kann da der Lesekopf hin und her springen muss und die Daten Mal zufällig vorbei kommen (drehende Platten).
Die Kompression kann daher sogar effektiver sein da diese alle Daten im Paket betrachtet.

Bei dem neuen Konzept hart du die Daten quasi einzeln komprimiert auf der SSD und lädst nur das, was du in den nächsten paar Sekunden benötigen könntest. Die Kompression ist dann potentiell weniger effektiv da über einen kleineren Datensatz komprimiert wird, dafür landet im Speicher aber nur das, was benötigt wird.

Ich dachte, das sei nur für die benötigte Dateigrösse (des Spiels) auf der Festplatte relevant? Wird das wirklich doppelt in den RAM geladen?

=Floi=
2021-06-27, 14:41:20
man könnte jetzt schon durch den ram vram nachladen und tut es nicht.

Platos
2021-06-27, 14:45:42
Gute Entwicklung. Jetzt müsste noch ein Globales Gesetz kommen, dass es den großen Tech Unternehmen verbietet, jedes Jahr, ein neues Smartphone, GPU, CPUs usw. zu präsentieren. Und wir würden damit dem Planeten entlasten. Und kommenden Generationen einen Planeten hinterlassen, der zumindest nicht komplett "gefickt" ist. Wird zwar eh nie passieren, aber man darf träumen. :redface:

Bin kein Fan von staatlicher "Erziehung". Sollen vlt. besser mal die Leute nicht ständig jedes Jahr neue Hardware kaufen?

Ist natürlich einfacher, wenn ein anderer das Problem löst, als ich selbst ^^
Und (Gross-)Eltern müssen mal aufhören, ihren Kindern ständig neue Sachen zu kaufen, obwohl das alte noch sehr gut funktioniert. Ist z.T wirklich schon Pervers. Die Grossmütter sind da die schlimmsten :freak:

dargo
2021-06-27, 19:25:23
Sagt mal... ist es richtig, dass DirectStorage Windows 11 voraussetzt? Sprich kein DS unter Windows 10? Oh weih... in dem Fall wird der Umstieg ewig am PC dauern.

Edit:
Lese gerade hier, dass ein Upgrade kostenlos sein soll.
https://www.forum-3dcenter.org/vbulletin/showpost.php?p=12719256&postcount=9

Das wiederum könnte das ganze etwas beschleunigen, wird dennoch paar Jahre in Anspruch nehmen imho.

][immy
2021-06-28, 13:02:29
Ich dachte, das sei nur für die benötigte Dateigrösse (des Spiels) auf der Festplatte relevant? Wird das wirklich doppelt in den RAM geladen?
Dubletten hast du dadurch das Assets in mehreren Paketen sind, damit man nicht extra ein anderes Paket laden muss, nur um dieses Asset in den Speicher zu bekommen. Im Speicher werden die Dubletten aber hoffentlich aussortiert.
Komprimiert wird aber weil es Bandbreitenschonender ist für die HDD und Paketiert da die Suchzeiten dir sonst alles an Bandbreite nehmen was eine HDD leisten könnte.
Sprich beim "klassischen" Streaming wird weit im voraus geladen (weil HDDs nun mal nicht all zu schnell sind) und durch die Pakete werden Daten teils doppelt geladen. Laut der Analyse von MS die sie damals rausgebracht haben, wird ein sehr großer Teil der Daten die sich im Speicher befinden, weil man sie ja vielleicht mal benötigen würde sie aber nicht schnell genug nachladen könnte, nie genutzt. Das würde dann mit einer Fokussierung auf SSDs entfallen können.
Einen Buffer für die nächsten x-Sekunden wird es aber nach wie vor geben, wie viel genau, könnte man von der Geschwindigkeit der SSD abhängig machen.
Schon eine normale SSD könnte hier eigentlich große Vorteile raus ziehen und deutlich weniger an Puffer-Speicher verschwenden. Aber mit DirectStorage will man wohl weiter gehen und gleich auch die Abhängigkeit von NTFS abschaffen, so das von einem Spiel auch nur Textur-Teile etc gelesen werden können.
Wie geschrieben, das meiste würde sicherlich auch mit einer normalen SSD (auch SATA) Leistbar sein, nur halt in der Endgeschwindigkeit etwas langsamer.


Sagt mal... ist es richtig, dass DirectStorage Windows 11 voraussetzt? Sprich kein DS unter Windows 10? Oh weih... in dem Fall wird der Umstieg ewig am PC dauern.

Edit:
Lese gerade hier, dass ein Upgrade kostenlos sein soll.
https://www.forum-3dcenter.org/vbulletin/showpost.php?p=12719256&postcount=9

Das wiederum könnte das ganze etwas beschleunigen, wird dennoch paar Jahre in Anspruch nehmen imho.
Jep, das wird lange dauern. Aber viele Leute nutzen ihre Hardware sowieso mindestens ein Jahrzehnt inzwischen. Das wird am PC generell sehr lange dauern bis sich das durchsetzt. Zumal es nur wenige Mainboards mit mehr als einem m.2 Slot gibt (besonders im OEM Bereich).
Es braucht hier dringend einen ähnlich schnellen neuen SATA Standard.

registrierter Gast
2021-06-28, 13:44:19
Sagt mal... ist es richtig, dass DirectStorage Windows 11 voraussetzt? Sprich kein DS unter Windows 10? Oh weih... in dem Fall wird der Umstieg ewig am PC dauern.

Macht die Marktdurchdringung denn irgendeinen Unterschied zum Feature? Wird DirectStorage besser, je mehr Leute es nutzen?

][immy
2021-06-28, 14:04:08
Macht die Marktdurchdringung denn irgendeinen Unterschied zum Feature? Wird DirectStorage besser, je mehr Leute es nutzen?
Es geht eher darum, das sich die Spieleentwickler erst darauf Fokussieren die Neuerungen zu nutzen, wenn das Feature Breitflächig verfügbar ist.
Die Daten müssen halt komplett anders ausgeliefert werden als aktuell. Und bevor Entwickler 2 Versionen für den PC pflegen (eine mit klassischen Datenmodell und eine mit neuen) wird man sicherlich nur die alte Variante verwenden.
Merkt man ja aktuell schon auf den Konsolen. Sicherlich müssen sich die Entwickler erst mal an die Tools gewöhnen etc, aber im Normalfall wird dann einfach eine Variante die alle Systeme bedient ausgerollt und nicht extra Varianten für die neuen Systeme. Auch wenn dies möglich wäre, ist es jedoch einfach zusätzlicher Aufwand, zumal die Engine damit auch erst mal umgehen können muss.

Linmoum
2021-06-28, 14:21:04
Es ist ja keine extra Variante oder großartig extra Aufwand, da es DS auf der Xbox bereits gibt. Der PC zieht jetzt mit Windows 11 erst nach.

basix
2021-06-28, 14:32:22
[immy;12720389']Jep, das wird lange dauern. Aber viele Leute nutzen ihre Hardware sowieso mindestens ein Jahrzehnt inzwischen. Das wird am PC generell sehr lange dauern bis sich das durchsetzt. Zumal es nur wenige Mainboards mit mehr als einem m.2 Slot gibt (besonders im OEM Bereich).
Es braucht hier dringend einen ähnlich schnellen neuen SATA Standard.

Ich glaube, DirectStorage sollte auch sehr gut auf SATA SSDs funktionieren. Die etwas längeren Zugriffszeiten und die geringere Bandbreite müsste dann halt via höherer RAM Belegung kompensiert werden. Hardware mässig ein eher geringes Problem. Aber bezüglich Softwareumsetzung von DirectStorage wäre es doch ziemlich komplex.

- Geschwindigkeit SSD ermitteln (Latenz & Bandbreite bei QD ~1...4)
- Verfügbaren RAM/VRAM ermitteln und für DirectStorage reservieren, abhängig vom Resultat der SSD-Charakteristiken. Was macht man, wenn zuwenig RAM verfügbar ist? Hat man dann einfach matschige Texturen?
- Vorausladen von Daten: Welche? Wie viel? Wie passiert das Interleaving mit den unmittelbar benötigten Daten und allfälligen anderweitigen OS Zugriffen?
- Aufgrund dem Hintergrund Streaming/Buffering kann nicht 100% der Bandbreite genutzt werden, sondern evtl. nur 50...70%

Das grundsätzlich selbe Problem hat man mit NVMe SSDs auch. Nimmt man dort aber irgendein Minimum an (z.B. 1.5 GB/s lesend) kommt man eben ohne all die oben genannte Komplexität aus. Man lädt einfach direkt von der SSD in den RAM oder VRAM. Schnellere SSDs nützen dann halt nicht viel aber sie schaden auch nicht. Damit ist die Komplexität des ganzen relativ gering (was auch der Performance zugute kommen sollte).

Alternative: Minimum Spezifikation sind SATA SSDs und dann halt 300 MB/s anstatt 1500 MB/s und deutlich mehr Buffering in den System-RAM oder VRAM.

Da empfinde ich die NVMe only Lösung langfristig als besser an. Dass man mindestens 1x NVMe SSD mit >= 1.8 GB/s lesend im System hat ist in heutigen Zeiten nicht so abwegig bei halbwegs modernen Systemen und bei neuen System vermutlich sogar sehr wahrscheinlich.
Sicher schade für alle ohne NVMe SSD und älteren Systemen. Aber irgendwo kann man mal auch einen Schnitt machen und Altlasten abwerfen. Sonst enstehen wieder unnötige Softwaremonster mit hoher Komplexität und hohem Wartungsaufwand mit sogar Nachteilen in der Zukunft.

aufkrawall
2021-06-28, 14:45:32
Ich halt ein NVMe-Gerät als Voraussetzung für zumutbar, wenn es eh erst ab Turing/RDNA2 geht.

HOT
2021-06-28, 15:12:14
Hab mal ne Verständnisfrage: Die NVs können ja DXR ab Pascal. Sind die nicht DX-Ultimate-fähig, obwohl RT mit den Produkten geht?

basix
2021-06-28, 15:51:31
Ich halt ein NVMe-Gerät als Voraussetzung für zumutbar, wenn es eh erst ab Turing/RDNA2 geht.

Das ist ein gutes Argument. Allzu alt werden die Systeme in den meisten Fällen nicht sein und bei Notebooks ist NVMe schon seit einiger Zeit State-of-the-Art.

Hab mal ne Verständnisfrage: Die NVs können ja DXR ab Pascal. Sind die nicht DX-Ultimate-fähig, obwohl RT mit den Produkten geht?

DirectStorage ist soweit ich weiss nicht in DXU integriert. Problem: Nur Turing und Ampere sowie RDNA2 unterstützen die GPU-basierte Dekomprimierung. Könnte man bei Pascal wohl auch über die Shader lösen, macht Nvidia aber wohl nicht.

][immy
2021-06-28, 15:57:47
Das ist ein gutes Argument. Allzu alt werden die Systeme in den meisten Fällen nicht sein und bei Notebooks ist NVMe schon seit einiger Zeit State-of-the-Art.

Das Problem dürfte allerdings sein, das vermutlich nicht auf NTFS oder ähnliches dabei gesetzt wird. Sprich, wenn du Directstorage nutzt, muss das entweder am Datasystem vorbei passieren, oder die SSD wird kurzerhand komplett anders formatiert und steht damit dem OS nicht mehr zur Verfügung (zumindest eine Partition).

TheAntitheist
2021-06-28, 15:58:26
Ging mir nicht um die PS4, sondern um VRAM am PC zu sparen. Ich glaube du hast meinen Punkt nicht verstanden.
Wie soll denn Vram gespart werden wenn die Texturen nicht schnell genug ausgetauscht werden können? das hab ich doch vorher alles schön erklärt und du merkst dir nicht mal die hälfte...

HOT
2021-06-28, 16:01:17
[...]
DirectStorage ist soweit ich weiss nicht in DXU integriert. Problem: Nur Turing und Ampere sowie RDNA2 unterstützen die GPU-basierte Dekomprimierung. Könnte man bei Pascal wohl auch über die Shader lösen, macht Nvidia aber wohl nicht.
Thx :D

basix
2021-06-28, 16:14:30
Thx :D

Ich merke gerade: Ich habe deine Frage eigentlich gar nicht beantwortet :D

DXU benötigt Mesh Shader, Sampler Feedback und das ganze Zeugs. Das kann Pascal nicht.

HOT
2021-06-28, 16:32:55
Ja aber darum ging es mir. Noch mal thx ;). Wichtig ist nur, dass man mit den alten Karten eigentlich keinen Wechselgrund hat. Nur ab Turing/RDNA2 ist das Win11-Update wirklich sinnvoll.

][immy
2021-06-28, 16:43:57
DirectStorage ist soweit ich weiss nicht in DXU integriert. Problem: Nur Turing und Ampere sowie RDNA2 unterstützen die GPU-basierte Dekomprimierung. Könnte man bei Pascal wohl auch über die Shader lösen, macht Nvidia aber wohl nicht.
Ich glaube nicht das hier extra Hardware verbaut ist sondern es eine reine Software-Lösung (über die Shader) ist. Hardware-Dekomprimierung würde beim PC keinen Sinn ergeben. Dafür sind Kompressionsalgorithmen viel zu kurzlebig und sobald sich eine Kleinigkeit ändert liegt die Hardware brach. Daher kommt eigentlich nur Software in frage ggfs, programmierbare Hardware die hier noch ein paar stärken hat, aber nicht bei der PS5/xbox ein fixed function Einheit. Und Shader-Power + Bandbreite haben die neuen Karten mehr als genug übrig. Theoretisch kannst du auch so zusehen, das jedes Komprimierte Element seinen "perfekten" Algorithmus nutzt (um möglichst viel Platz zu sparen).
Hardware-Dekompression macht am PC eigentlich nur in Spezialfällen sinn.

aufkrawall
2021-06-28, 16:49:07
Ja aber darum ging es mir. Noch mal thx ;). Wichtig ist nur, dass man mit den alten Karten eigentlich keinen Wechselgrund hat. Nur ab Turing/RDNA2 ist das Win11-Update wirklich sinnvoll.
Ggf. noch Scheduler mit Multi-CCX.

basix
2021-06-28, 16:49:16
[immy;12720553']Das Problem dürfte allerdings sein, das vermutlich nicht auf NTFS oder ähnliches dabei gesetzt wird. Sprich, wenn du Directstorage nutzt, muss das entweder am Datasystem vorbei passieren, oder die SSD wird kurzerhand komplett anders formatiert und steht damit dem OS nicht mehr zur Verfügung (zumindest eine Partition).

Hmm ja. Gute Frage.

Was ist mit einem "Schattendateisystem", welches parallel mit NTFS läuft (wie du sagst, am Dateisystem vorbei)? Spiele nicht auf NTFS zu installieren würde einen grossen Umbau von vielen Installern usw. bedeuten. Auch der Explorer-Dateimanager müsste das neue Dateisystem unterstützen (man will vielleicht Daten manuel rumkopieren). Da ist ein paralleles Dateisystem nur für DirectStorage in meinen Augen sinnvoller und weniger invasiv. Und wie angemerkt: NTFS ist auf zig Rechnern drauf, das willst du nicht umbauen wenn nicht unbedingt nötig.

[immy;12720593']Ich glaube nicht das hier extra Hardware verbaut ist sondern es eine reine Software-Lösung (über die Shader) ist. Hardware-Dekomprimierung würde beim PC keinen Sinn ergeben. Dafür sind Kompressionsalgorithmen viel zu kurzlebig und sobald sich eine Kleinigkeit ändert liegt die Hardware brach. Daher kommt eigentlich nur Software in frage ggfs, programmierbare Hardware die hier noch ein paar stärken hat, aber nicht bei der PS5/xbox ein fixed function Einheit. Und Shader-Power + Bandbreite haben die neuen Karten mehr als genug übrig. Theoretisch kannst du auch so zusehen, das jedes Komprimierte Element seinen "perfekten" Algorithmus nutzt (um möglichst viel Platz zu sparen).
Hardware-Dekompression macht am PC eigentlich nur in Spezialfällen sinn.

An extra HW glaube ich zumindest bei Turing auch nicht. Bei Ampere und RDNA2? Könnte sein oder auch nicht. PS5 und XBSX haben auch in HW gegossene Dekomprimierung. ZLIB ist ein freiner Standard (AFAIK). Bei RDNA2 sehe ich ein HW-Lösung zudem noch eher, aber AMD darf evtl. nicht (Konsolen wollen ihre "Secret Sauce" nicht verschenken und Kraken kostet vermutlich Lizenzgebühren ;))

][immy
2021-06-28, 17:10:53
An extra HW glaube ich zumindest bei Turing auch nicht. Bei Ampere und RDNA2? Könnte sein oder auch nicht. PS5 und XBSX haben auch in HW gegossene Dekomprimierung. ZLIB ist ein freiner Standard (AFAIK). Bei RDNA2 sehe ich ein HW-Lösung zudem noch eher, aber AMD darf evtl. nicht (Konsolen wollen ihre "Secret Sauce" nicht verschenken und Kraken kostet vermutlich Lizenzgebühren ;))
Ein Hardware-Dekompressor kann halt nicht alles. Dem kannst du nicht alles anliefern, das irgendwie komprimiert wurde, sondern muss ein bestimmtes Format haben. Was für die Daten gut oder weniger gut sein kann. Du bekommst eigentlich immer ein weniger optimales Ergebnis. Für ein geschlossenes System wie Konsolen, ist das kein Problem. Hier entlastet man ja die CPU/GPU und erhält immense Geschwindigkeiten. Aber am PC gibt es im Zweifelsfalls eigentlich immer genug CPU-Kerne oder Shader-Kerne die gerade nix zu tun haben und das auch mal eben so mit erledigen (im Zweifel ein paar Jahre später). Hier hat man einfach mehr als genug Ressourcen über die Zeit.
Und wenn ein Algorithmus mal nicht mehr State of the Art entspricht, tauscht man ihn kurzerhand einfach aus. Das alte Zeugs läuft dann auch noch weiter in Software und das neue ebenfalls und ist jederzeit Kompatibel.
Daher, am PC macht so etwas nur selten wirklich Sinn. Maximal noch in Laptops, aber die ereilt dann auch flott das gleiche Schicksal, sind die Daten dann doch mal "falsch" komprimiert, muss man eh auf die Software setzen.
Ob sich z.B. die Tensor Kernchen besonders gut für diese Arbeit eigenen (besonders wenn sie grad eh nix zu tun haben) kann ich nicht sagen.

Gibt halt maximal noch neue Textur-Formate in der Hardware, so das diese mit weniger Informationen auskommen bzw. teilkomprimiert sind und so weniger vram einnehmen.


Hmm ja. Gute Frage.

Was ist mit einem "Schattendateisystem", welches parallel mit NTFS läuft (wie du sagst, am Dateisystem vorbei)? Spiele nicht auf NTFS zu installieren würde einen grossen Umbau von vielen Installern usw. bedeuten. Auch der Explorer-Dateimanager müsste das neue Dateisystem unterstützen (man will vielleicht Daten manuel rumkopieren). Da ist ein paralleles Dateisystem nur für DirectStorage in meinen Augen sinnvoller und weniger invasiv. Und wie angemerkt: NTFS ist auf zig Rechnern drauf, das willst du nicht umbauen wenn nicht unbedingt nötig.
Wenn ich mich nicht irre, hatte doch damals z.B. Gothic bereits sein eigenes Dateisystem mitgebracht mit mehr oder minder guten Ergebnissen. Dies brauchten sie damals für das Streaming der Welt. Hat man am Ende halt mehr oder minder eine Große Datei (damals noch mehrere kleine wegen Fat32). Aber du hast halt trotzdem immer den Overhead des natives Dateisystems oben drauf.

Gast
2021-06-28, 20:56:17
[immy;12720613']Wenn ich mich nicht irre, hatte doch damals z.B. Gothic bereits sein eigenes Dateisystem mitgebracht mit mehr oder minder guten Ergebnissen. Dies brauchten sie damals für das Streaming der Welt. Hat man am Ende halt mehr oder minder eine Große Datei (damals noch mehrere kleine wegen Fat32). Aber du hast halt trotzdem immer den Overhead des natives Dateisystems oben drauf.
Blizzard macht das auch so seit Ewigkeiten, früher gab es MPQ, das lief ja auch selbst von CD.
Heutzutage (seit Heroes of the Storm) nutzen sie sogar ein Content-Addressed Storage Dateisystem.

Gast
2021-06-28, 23:37:51
Ich glaube, DirectStorage sollte auch sehr gut auf SATA SSDs funktionieren. Die etwas längeren Zugriffszeiten und die geringere Bandbreite müsste dann halt via höherer RAM Belegung kompensiert werden. Hardware mässig ein eher geringes Problem. Aber bezüglich Softwareumsetzung von DirectStorage wäre es doch ziemlich komplex.



Der Vorteil von DS ist nicht die Bandbreite, sondern dass die Daten direkt von der SSD ohne Umweg über CPU und RAM in den VRAM wandern, also ja, DS wird mit jedem Festspeicher funktionieren, sogar mit HDDs, auch wenn dann der Vorteil überschaubar ist.

Gast
2021-06-28, 23:49:40
[immy;12720553']Das Problem dürfte allerdings sein, das vermutlich nicht auf NTFS oder ähnliches dabei gesetzt wird. Sprich, wenn du Directstorage nutzt, muss das entweder am Datasystem vorbei passieren, oder die SSD wird kurzerhand komplett anders formatiert und steht damit dem OS nicht mehr zur Verfügung (zumindest eine Partition).

Nein, du kannst auch mit NTFS den Inhalt der Platte direkt in den Adressraum einblenden.

Wuge
2021-06-29, 09:20:11
Wenn ich mich recht entsinne läuft der Dekompressionsalgo auf den Shadern und ist INT-Code. Also for free bei Turing und schau ma mal bei Ampere.

Dampf
2021-06-29, 09:40:01
Wenn ich mich recht entsinne läuft der Dekompressionsalgo auf den Shadern und ist INT-Code. Also for free bei Turing und schau ma mal bei Ampere.

Ist das so? Das würde erklären, warum RTX I/O Turing und Ampere only ist

HOT
2021-06-29, 09:56:32
Pascal kann doch auch schnell Int? Hatten wir das nicht die letzten Seiten? GCN wäre da eher in Problemen AFAIK.

Ggf. noch Scheduler mit Multi-CCX.
Aha, ADL hätt ich verstanden, aber ich dachte, Multi-CCX wäre schon längst berücksichtigt?

basix
2021-06-29, 09:59:44
Pascal kann doch auch schnell Int? Hatten wir das nicht die letzten Seiten? GCN wäre da eher in Problemen AFAIK.

Nur INT8 bei Pascal. Allenfalls ist der Dekomprimierungs-Algo INT16 oder INT32.

Wenn ich mich recht entsinne läuft der Dekompressionsalgo auf den Shadern und ist INT-Code. Also for free bei Turing und schau ma mal bei Ampere.
Da bei Turing die INT32 parallel zu den FP32 Einheiten laufen und typischerweise nicht 100% ausgelastet sind (FP32 > INT32) könnte das wirklich for free sein.
Ampere hat aber massiv FP32 Leistung, welche ebenfalls INT32 rechnen können (afaik). Denke nicht, dass das ein Problem ist.

aufkrawall
2021-06-29, 10:14:25
Aha, ADL hätt ich verstanden, aber ich dachte, Multi-CCX wäre schon längst berücksichtigt?
TurricanM3 hat komisch schwankende Performance mit dem 5950X in BFV und bei Golem läuft Planet Zoo mit dem 5900X langsamer als mit dem 5600X.

Tesseract
2021-06-29, 10:21:00
Ich glaube, DirectStorage sollte auch sehr gut auf SATA SSDs funktionieren.
sicher nicht. DS basiert grundlegend auf NVMe das wiederum auf PCIe (DMA von einem PCIe device auf ein anderes) aufbaut.

Was ist mit einem "Schattendateisystem", welches parallel mit NTFS läuft (wie du sagst, am Dateisystem vorbei)?
braucht man nicht. windows muss nur dafür sorgen, dass der payload der dateien nicht fragmentiert, an blöcken aligned, und, so lange das spiel läuft, schreibgeschützt ist. den ganzen NTFS-overhead kann man beim spielstart oder an anderen festgelegten punkten resolven. die GPU bekommt dann den code schon mit den adressen wo auf der NVMe was liegt und greift einfach am dateisystem vorbei darauf zu - so würde es jedenfalls sinn machen.

basix
2021-06-29, 11:24:03
OK, das mit DMA ist ein Argument. Ich habe mich da eher auf Bandbreite und Latenz gestützt, welche nicht um Grössenordnungen daneben liegen.

dildo4u
2021-07-19, 17:53:46
Direct Storage geht mit Win 10, soll aber besser mit Win 11 laufen.


https://wccftech.com/directstorage-developer-preview-out-now-on-pc-supports-windows-10-too/

crux2005
2021-07-21, 19:50:26
Direct Storage geht mit Win 10, soll aber besser mit Win 11 laufen.


https://wccftech.com/directstorage-developer-preview-out-now-on-pc-supports-windows-10-too/

Na wenigstens etwas. Bin auf den Leistungsunterschied gespannt. 1-2s in Ladezeit? ;D

HOT
2021-07-21, 22:06:31
WDDM3.0, oder kommt auch das für 10?

Dampf
2021-07-22, 01:01:25
Interessanter Talk über Sampler Feedback Streaming von Intel: https://www.youtube.com/watch?v=VDDbrfZucpQ&t=942s

TheAntitheist
2021-08-14, 18:23:14
Na wenigstens etwas. Bin auf den Leistungsunterschied gespannt. 1-2s in Ladezeit? ;D
es geht da nicht um Ladezeiten (von Level oder beim starten des Spiels) sondern um das konstante swappen/streamen der Texturen und da wäre es eine Katastrophe, falls es nicht richtig/vollständig supported wird.

Dampf
2021-08-25, 21:50:55
https://videocardz.com/press-release/3dmark-sampler-feedback-feature-test-is-now-available

Hier könnt ihr Sampler Feedback ausprobieren. Allerdings nur Texture Space Shading, der uninteressantere Part von Sampler Feedback.

Radeonfreak
2021-08-25, 21:57:45
Ich hab hier im test 8% Unterschied gehabt zwischen Normal und Sampler Feedback. Gewaltig.

https://abload.de/img/unbenanntlhkcv.png

Dampf
2021-08-25, 22:19:01
Bei mir sinds 11%

11% Performance für lau kann man schon mitnehmen.

gedi
2021-08-25, 22:38:12
WDDM3.0, oder kommt auch das für 10?

Kann für den Moment nicht als der Perforformancebreaker herhalten. Hier wird z.B. TS nicht als 3D-Anwendung erkannt. Vram läuft volles Rohr, die GPU nur mit max. 1G, Verbrauch: 35W :freak:, dem entsprechet auch die DS-Performance. Naja, bleibt erst mal drauf, auch wenn es 1-2sec. braucht, dass der Treiber die Anwendung als Game whatever erkennt ;(
Gibt Schlimmeres

The_Invisible
2021-08-26, 06:28:04
Ich hab hier im test 8% Unterschied gehabt zwischen Normal und Sampler Feedback. Gewaltig.

https://abload.de/img/unbenanntlhkcv.png

Hier ganze 1,7% :D

https://www.forum-3dcenter.org/vbulletin/attachment.php?attachmentid=76550&stc=1&d=1629952061

dargo
2021-08-26, 08:21:58
https://videocardz.com/press-release/3dmark-sampler-feedback-feature-test-is-now-available

Hier könnt ihr Sampler Feedback ausprobieren. Allerdings nur Texture Space Shading, der uninteressantere Part von Sampler Feedback.
Geht mit der Demo nicht.

ChaosTM
2021-08-26, 08:39:41
Hauptsache es lauft vorerst mal auf 10.
11 dürfte wieder das typische Grind-OS werden. Der Zyklus scheint wieder ungbrochen.. ;)

add.: wird wirklich Zeit für eine Rückkehr zu Linus`s OS

Dampf
2021-08-26, 10:31:05
Hängt scheinbar auch mit der Base-Performance des Benchmarks zusammen. Bei meinem Laptop im Akkubetrieb sind es fast 20% mehr Leistung.

Hätten sie den Benchmark mal aufwendiger gemacht ;)

Doch ziemlich beeindruckend, dieses Texture Space Shading. Hatte das nie auf dem Schirm, aber 20% Leistung in aufwendigen Titeln nimmt man doch gerne und das im Gegensatz zu (derzeitigen) VRS Implementationen auch ohne Qualitätseinbußen. Wenn man dann noch gescheites VRS implementiert hat man schon 30-40% mehr Leistung durch DX12U, einfach so. Das ist echt spannend.

][immy
2021-08-26, 11:00:25
Hängt scheinbar auch mit der Base-Performance des Benchmarks zusammen. Bei meinem Laptop im Akkubetrieb sind es fast 20% mehr Leistung.

Hätten sie den Benchmark mal aufwendiger gemacht ;)

Doch ziemlich beeindruckend, dieses Texture Space Shading. Hatte das nie auf dem Schirm, aber 20% Leistung in aufwendigen Titeln nimmt man doch gerne und das im Gegensatz zu (derzeitigen) VRS Implementationen auch ohne Qualitätseinbußen. Wenn man dann noch gescheites VRS implementiert hat man schon 30-40% mehr Leistung durch DX12U, einfach so. Das ist echt spannend.
SF ist eher zur Reduzierung des Memory Footprints und der IO-Bandbreite. Performance-Steigerungen sind da eher ein Seiteneffekt von.

Ja, die Sache mit VRS ist leider aktuell noch etwas unterirdisch. Eigentlich sollte VRS visuell (außer vielleicht auf Screenshots) nicht sichtbar sein. Aber anscheinend wird es in den meisten Spielen (die es unterstützen) aktuell einfach großflächig eingesetzt ohne Rücksicht auf Verluste. Auch wenn das Feature an sich schon etwas älter ist (beim PC seit Turing) scheint es halt von den Entwicklern noch nicht so richtig adaptiert worden zu sein. Macht am PC aber ja eigentlich auch Sinn, denn warum sollte man sich mit Optimierung beschäftigen, wenn eh mehr als genug Leistung zur Verfügung steht. Im Schlimmsten Fall muss der Benutzer halt die Details reduzieren. Dieses Feature macht so gesehen tatsächlich nur auf Konsolen wirklich sinn, wo die Resourcen relativ strickt begrenzt sind.

HOT
2021-08-26, 16:41:09
6,4%, neuerster WDDM3 Store Treiber.

BlacKi
2021-08-26, 18:00:08
Interessanter Talk über Sampler Feedback Streaming von Intel: https://www.youtube.com/watch?v=VDDbrfZucpQ&t=942s


wow, die demo in zahlen ist echt beeindruckend. daran sieht man, das reiner vram ausbau keine zukunft hat. ich glaube, next ampere wird auf das feature bauen und kaum mehr vram bekommen. ich würde auch drauf wetten, das man pcie5.0 supportet.

TheAntitheist
2021-08-29, 23:55:25
wow, die demo in zahlen ist echt beeindruckend. daran sieht man, das reiner vram ausbau keine zukunft hat. ich glaube, next ampere wird auf das feature bauen und kaum mehr vram bekommen. ich würde auch drauf wetten, das man pcie5.0 supportet.
das alles Wissen wir doch schon seit über einem Jahr und ein paar von uns haben es immer wieder erwähnt. Dennoch hat der Vram Ausbau Zukunft, denn es gibt Daten die man nicht immer swapped oder Anwendungsfälle wo man viel im Speicher lassen muss (raytracing reflexionen)
Samper Feedback ist im Prinzip Nanite für Texturen. Aber da die Geo mit Nanite heftig anwachsen wird, könnte sich das am Ende die Waage halten.

Dampf
2022-02-01, 12:47:59
https://compusemble.com/insights/home/how-sampler-feedback-streaming-works-in-tandem-with-fast-storage-to-reduce-memory-requirements

Ein sehr interessanter Beitrag!

Er geht auch darauf ein, dass Windows 11 in Zukunft eine größere Rolle spielen könnte.

Ex3cut3r
2022-02-01, 14:15:35
https://compusemble.com/insights/home/how-sampler-feedback-streaming-works-in-tandem-with-fast-storage-to-reduce-memory-requirements

Ein sehr interessanter Beitrag!

Er geht auch darauf ein, dass Windows 11 in Zukunft eine größere Rolle spielen könnte.

OK, das ist krass. Im Text steht:

The demo starting at the 50 second mark was configured to run in 4K and each object is a 16k x 16k BC7 texture. Ordinarily, this would take up 350MB of GPU memory for each individual object. The demo features 985 such objects, which would take up nearly 300 GB (yes, that's GB, not MB) of GPU memory. However, as can be seen in the video, allocated VRAM usage is just over 3 GB, and dedicated VRAM usage is just over 2 GB! SFS allows for visuals that simply would not otherwise be possible due to memory constraints.

Na das ist mal ne krasse Einsparung. Die Technick kann IMO gar nicht schnell genug implementiert werden. Dann ist es endlich vorbei mit dem VRAM Wahn!

Ich sage ja, die Software muss endlich mal Fortschritte machen!

Sogar Pop In müsste damit eigentlich Geschichte sein, dass ist einer der größten Immersion Killer in aktuellen Spielen. Oder habe ich da einen Denkfehler?

Dampf
2022-02-01, 16:49:55
Ja, Pop-In ist dann Geschichte. Und man wird dann immer hochauflösende Texturen sehen, egal wie nah man ranzoomt!

Für Micro-Detail ist das echt ein Gamechanger

basix
2022-02-01, 17:15:47
Speicher bezüglich Texturen ist damit dann wirklich deutlich weniger nötig. Es gibt aber auch noch viele andere Dinge, die Speicherplatz benötigen

TheAntitheist
2022-02-01, 23:50:45
Gehe eher davon aus, das weniger auf Trim Sheets gesetzt wird und dadurch eine höhere Texturvielfalt entstehen wird, anstatt nur höher aufgelöste Texturen. Vielleicht noch mehr Blend Layer und ergo auch mehr Texturen generell.

Dampf
2022-02-28, 17:47:03
Bald kommt ein neuer 3DMark, fokusiert auf DX12 Ultimate Features.

https://benchmarks.ul.com/news/get-ready-for-3dmark-speed-way

Eigentlich das was ich mir gewünscht hab, aber irgendwie sieht das nicht sonderlich beeindruckend aus.

dildo4u
2022-03-01, 10:31:24
Forspoken soll Direct Storage unterstützen.

https://schedule.gdconf.com/session/breaking-down-the-world-of-athia-the-technologies-of-forspoken-presented-by-amd/886052

Radeonfreak
2022-03-01, 11:14:01
Na hoffentlich weiß das Windows bis dahin was Direct Storage ist.

x-dragon
2022-03-14, 23:10:13
Könnte klappen :)

DirectStorage API: Windows 10* und 11 schließen zur Xbox Series X|S auf

... Nachdem Microsoft die primär an Entwickler und versierte Anwender adressierte DirectStorage Developer Preview bereits im Juli 2021 veröffentlicht hatte, ist die finale Version der File-I/O-API der Xbox Series X|S jetzt auch für den PC erschienen. Offiziell werden Windows 10 und Windows 11 unterstützt, was aber nur die halbe Wahrheit ist. ...
https://www.computerbase.de/2022-03/directstorage-api-microsoft-windows-10-11/

zolAIEH0n1c

Lurtz
2022-03-15, 09:54:06
Muss das nicht noch in Windows selbst eingebaut werden? Dachte da wird dann eine separate Partition benötigt etc.

ChaosTM
2022-03-15, 09:57:14
Es wird dabei nur die CPU umgangen afaik.

Lurtz
2022-03-15, 10:02:00
Dann war das wohl nur Spekulation. Hatte mal gelesen, dass da evtl. auch ein anderes Dateisystem zum Einsatz kommen soll.

Aber das ist wohl gut, dürfte die Adapation wenigstens etwas beschleunigen.

BlacKi
2022-03-15, 10:05:37
Es wird dabei nur die CPU umgangen afaik.soweit ich weiß wird das nur massiv beschleunigt, damit fast keine cpu last erzeugt wird. zumindest bei nv rtx io. https://technical-news.net/images/a5eb67d96b8ba00deaf5cba02bc46b87.png

Dann war das wohl nur Spekulation. Hatte mal gelesen, dass da evtl. auch ein anderes Dateisystem zum Einsatz kommen soll.

Aber das ist wohl gut, dürfte die Adapation wenigstens etwas beschleunigen.

so wie ich das lese muss man zumindest das laufwerk für low lvl zugriff vorbereiten. sieht sehr komplex aus.

ChaosTM
2022-03-15, 10:09:05
THX

GTA5 ladet btw auf der 5er in 27 Sekunden vs den 90 am PC. Immer noch sehr lange für PS Verhältnisse.

BlacKi
2022-03-15, 10:25:48
THX

GTA5 ladet btw auf der 5er in 27 Sekunden vs den 90 am PC. Immer noch sehr lange für PS Verhältnisse.
die maximale bandbreite der ssd sind für ladezeiten nicht relevant. low lvl zugriff könnte natürlich helfen, weil es die cpu entlastet. wenn ich spiele lade bekomme ich oft nur 300mb/s als peak leserate angezeigt. das wird sich direct io ändern.

Lurtz
2022-03-15, 10:36:56
so wie ich das lese muss man zumindest das laufwerk für low lvl zugriff vorbereiten. sieht sehr komplex aus.
Und das kann man Microsoft nicht automatisieren? :confused: Das macht doch niemand wenn das kompliziert ist. Am Ende muss man auch noch ins Bios dafür :ugly:

Dampf
2022-03-15, 12:34:34
Die Intel Demo mit SFS und DirectStorage ist echt krass.

Hier werden 985 Planeten mit 16K Weltraum-Texturen in quasi Überschall Geschwindigkeit gestreamt mit sehr geringer VRAM und CPU Last. Im Benchmark Mode wird meine NVMe voll ausgenutzt!

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

Und es gibt null Ruckler ala Elden Ring. Egal wie schnell gestreamt wird, es ist stets butterweich.

basix
2022-03-15, 22:52:05
Frage zum GPU Decompressor:
Liegen die Daten dann komprimiert im VRAM und werden nur on-chip und in den Caches der GPU dekompromiert vorgehalten? Wenn ja, würde das zusätzlich den VRAM-Bedarf senken und VRAM-Bandbreite sparen.

Reaping_Ant
2022-03-16, 00:18:11
Das wäre natürlich optimal. Ich könnte mir aber vorstellen, dass in dem Fall der Durchsatz der Dekompression begrenzt. Schließlich reden wir da von mehreren hundert GB pro Sekunde im Vergleich zu einigen wenigen GB von der SSD.

Platos
2022-03-16, 00:43:43
die maximale bandbreite der ssd sind für ladezeiten nicht relevant. low lvl zugriff könnte natürlich helfen, weil es die cpu entlastet. wenn ich spiele lade bekomme ich oft nur 300mb/s als peak leserate angezeigt. das wird sich direct io ändern.

Sagt wer? Heute vlt. Ja, aber wenn sowas ins Spiel kommt dann nicht mehr. Dann könnte Bandbreite sehr wohl eine Rolle spielen.

AintCoolName
2022-03-16, 08:19:50
Frage zum GPU Decompressor:
Liegen die Daten dann komprimiert im VRAM und werden nur on-chip und in den Caches der GPU dekompromiert vorgehalten? Wenn ja, würde das zusätzlich den VRAM-Bedarf senken und VRAM-Bandbreite sparen.

Die Daten werden dekomprimiert im VRAM abgelegt. Das Streaming ist aber so schnell das man die Daten sofort wieder wegwerfen kann sobald die Texture nicht mehr sichtbar ist. bzw man läd nur den sichbaren Teil oder MipMap Level der Texture. Das ganze spart dann VRAM. Im Video wir das genauer erklärt.

U3ajo6khF9E

basix
2022-03-16, 09:05:02
OK, danke. Ich habe mir schon gedacht, dass das nicht komprimiert vorliegt.

][immy
2022-03-16, 12:04:19
Die Intel Demo mit SFS und DirectStorage ist echt krass.

Hier werden 985 Planeten mit 16K Weltraum-Texturen in quasi Überschall Geschwindigkeit gestreamt mit sehr geringer VRAM und CPU Last. Im Benchmark Mode wird meine NVMe voll ausgenutzt!

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

Und es gibt null Ruckler ala Elden Ring. Egal wie schnell gestreamt wird, es ist stets butterweich.
Naja, da werden ja nicht wirklich 16k Texturen geladen sondern zum einen nur der Teil der sichtbar ist und zum anderen nur das entsprechend sichtbare mip-level
Das begrenzt den Aufwand beim laden eigentlich schon sehr stark. Mit einem kleinen Puffer im RAM sollte die SSD da nicht so viel dauerhaft zu tun bekommen. Hier kommt es eher darauf an was die tech demo zeigen soll.
Das eigentlich sehr wichtige dabei ist eher der Low Level access auf die Dateien, damit das Dateisystem nicht bremst.

Dovregubben
2022-03-16, 13:56:53
Und es gibt null Ruckler ala Elden Ring. Egal wie schnell gestreamt wird, es ist stets butterweich.
Eldenring hat kein Streaming Problem. Es hat ein Shader Compiling Problem. Wie so oft bei Konsolenports, wenn man sich keine Gedanken bei der ursprünglichen Entwicklung drüber gemacht hat.

Lurtz
2022-03-16, 16:35:44
Streamingprobleme hat es schon auch, manchmal poppen ganze Elemente wie das Gras erst nachträglich ins Bild. Aber das größte Problem ist mal wieder die Shader Compilation, ja.

Gast
2022-03-16, 18:19:19
Frage zum GPU Decompressor:
Liegen die Daten dann komprimiert im VRAM und werden nur on-chip und in den Caches der GPU dekompromiert vorgehalten? Wenn ja, würde das zusätzlich den VRAM-Bedarf senken und VRAM-Bandbreite sparen.

Natürlich nicht, VRAM und Bandbreitenbedarf im VRAM steigt sogar, weil zumindest temporär sowohl die komprimierten als auch die dekomprimierten Daten im VRAM sind, und auch die komprimierten Daten von der GPU gelesen und dekomprimierten zurückgeschrieben werden.

AintCoolName
2022-03-24, 22:26:08
Mh wenn ich das richtig verstehe aus dem Video, dann kann die aktuelle Version der Direct Storag API noch keine GPU Decompression, das muss immer noch die CPU machen

Ab Minute 21:00
MlTohmB4Gh4

Ex3cut3r
2022-03-24, 23:32:44
Ganz genau.

https://youtu.be/46lzPrFBOQM?t=2663

aufkrawall
2022-03-25, 12:29:34
Da kann sich Microsoft nicht mit den Herstellern einigen, oder woran krankt es? Ist ja wie bei Khronos. :freak:
So dürfte es noch zig Jahre dauern, bis man davon auf dem PC mal etwas hat...

AintCoolName
2022-03-25, 13:42:21
Ich hatte mich bei der Ankündigung der Technik schon gewundert wo die decompressions Fähigkeit bei den GPUs auf einmal herkommen soll. Es wurde mit keinem Worte eine GPU Generation erwähnt. Auch jetzt liest man davon nix.

crux2005
2022-03-25, 14:54:11
Jeder will seine eigene Suppe. Typisch. Und wir (die Kunden) müssen sie auslöffeln.

Ganz genau.

https://youtu.be/46lzPrFBOQM?t=2663

Ich erinnere mich das gerade den Teil Nvidia mit RTX Karten übernehmen wollte.

Mh wenn ich das richtig verstehe aus dem Video, dann kann die aktuelle Version der Direct Storag API noch keine GPU Decompression, das muss immer noch die CPU machen

Ab Minute 21:00
https://youtu.be/MlTohmB4Gh4

Hört sich nach, haben wir schon für PS5 gemacht und deswegen kann es ein kleines Team mit AMD Unterstützung auch für PC bringen. Oder sehe ich das falsch?

Rumbah
2022-03-25, 15:19:51
Hmm, das ist ja doch irgendwie enttäuschend. So mega groß sind die Vorteile in der Ladezeit laut den Messungen da nicht, auch nicht zwischen normal und DirectStorage. Liegt aber wahrscheinlich am CPU Decoding.

Mich wundert auch, dass da nicht von Microsoft wenigstens ein Kompressionsformat vorgegeben ist, das die Hersteller dann in Hardware gießen können. Aber vielleicht will man warten, was die Hersteller so hervorbringen?

Insgesamt natürlich eher doof, denn wenn jeder Hersteller sein eigenes Süppchen kocht, dann müsste ein Spiel die Inhalte ja gleich in 3 Formaten vorhalten (oder nur einen Hersteller in Hardware unterstützen und die anderen dann mit CPU Decoding, falls der Hersteller das erlaubt), und damit ist die Platzersparnis ja wieder mehr als hin.

-/\-CruNcher-/\-
2022-03-25, 15:50:21
Mh wenn ich das richtig verstehe aus dem Video, dann kann die aktuelle Version der Direct Storag API noch keine GPU Decompression, das muss immer noch die CPU machen

Ab Minute 21:00
https://youtu.be/MlTohmB4Gh4

Danke die Loading Time Compares sind sehr interessant und wir wissen genau es sind 5 GB komprimierte Scene Daten :)

Was für ein joke im vergleich mit win32 API ist der overhead ja sowas von minimal reduziert worden für Sata SSD das fällt 0 ins gewicht
abgesehen von der Energieeffizienz.

Ex3cut3r
2022-03-25, 16:42:47
Da kann sich Microsoft nicht mit den Herstellern einigen, oder woran krankt es? Ist ja wie bei Khronos. :freak:
So dürfte es noch zig Jahre dauern, bis man davon auf dem PC mal etwas hat...

Ja, das ist mal wieder absolut lächerlich. Heißt am PC mal wieder immenser Overhead und alles mit der VRAM Keule erschlagen. Lächerlich hoch zehn.

dargo
2022-03-25, 16:54:28
Ja, das ist mal wieder absolut lächerlich. Heißt am PC mal wieder immenser Overhead und alles mit der VRAM Keule erschlagen. Lächerlich hoch zehn.
Das war doch nie anders, siehe alte APIs. ;D

Ex3cut3r
2022-03-25, 17:43:00
Traurig genug. Die PS5 und Xbox kommen mit solcher Krüppel HW gut aus, siehe Ratchet und Clank auf der PS5.

Da fragt man sich auch, für was Nvidia mit RTX IO und Turing gewirbt hat. Bis das endlich am PC Kommt, dürfte Turing sowas wie Kepler heute sein. :freak: ;D

Dampf
2022-03-25, 18:36:52
Chillt doch mal. DirectStorage wird eh erst zum Laden benutzt. Wenns richtig eingebunden wird, sind GPU Dekompression und SFS schon am Start.

Es ist auch nicht so als würde DirectStorage den Prozessor stark belasten. Es ist ziemlich effizient.

Gast
2022-03-25, 19:11:26
Ich hatte mich bei der Ankündigung der Technik schon gewundert wo die decompressions Fähigkeit bei den GPUs auf einmal herkommen soll.

DirectX bietet dafür einen Compute Shader an.

Dampf
2022-03-26, 10:48:16
Ich hatte heute einen Traum. Erstmal ein bisschen Vorgeschichte.

Ich hatte erst kürzlich Marvels Guardians of the Galaxy durchgespielt (wirklich tolles Spiel, kann ich auch empfehlen wenn man wie ich überhaupt kein Marvel-Fan ist)

Im ersten Level geht man eine Wette mit einem seiner Begleiter ein: wer am meisten Nester abschießen kann, gewinnt. Ein Raum ist voll von diesen Nestern und der Begleiter und ich schaffen es noch nicht lange nicht, alle von diesen abzuschießen. Danach gingen wir einen Abschnitt weiter und besiegten die Gegner dort.

Dann überlegte ich mir was: ich geh einfach wieder zu dem Raum voller Nester zurück und schieße die restlichen Nester dort ab, dann gewinn ich bestimmt!

Ich ging also zurück. Jetzt das Erstaunliche: Der Begleiter sprach aus dem Off zu seinem Kumpel, wohin ich denn gehen würde. "Hey, wo geht er hin? Er wird doch nicht zurückgehen um die restlichen Nester zu zerschießen, denn das wäre ja dann BETURG!" so oder so ähnlich war der Wortlaut.

Da hatte ich für eine kurze Zeit ein Gefühl der kompletten Immersion, die ich noch in keinem anderen Spiel gehabt hatte, denn mit sowas hab ich überhaupt nicht gerechnet. Der Charakter hat auf meine eigene Entscheidung scheinbar off-script absolut lebensecht reagiert.

Und da dämmerte es mir: Ich fand die Grafik sehr beeindruckend, doch die Begeisterung ging wie immer nicht über ein "wow, das sieht extrem gut aus" hier und da hinaus. Aber diese Immersion die ich vorhin ansprach hat mich so nachhaltig beeindruckt, dass ich nun eine Woche später davon geträumt hab.

Ich war ein Teil von einem Team, das den Guardians sehr ähnlich war. Ich konnte mit den NPCs echte Gespräche führen. Ich konnte Entscheidungen treffen, die alles veränderten inklusive der Meinungen der Charaktere über mich. Die Welt selbst war 100% interaktiv.

Einmal wollte ich die Charaktere sogar aus der Matrix befreien: Ich erzählte ihnen dass das alles nur ein Spiel sei, das auf einer Nvidia GPU gerendert werden würde. Sie sagten nur" Oh nein, jetzt dreht er völlig durch, helft ihm doch mal!" ein anderer Charakter fragte nach einem Beweis. Ich verwies auf die ganzen Produktplatzierungen (;D ), auf denen das Nvidia Logo zu sehen war. "Das ist doch nur ein Möbelhaus" entgegnete mir jemand :D

Kommen wir zum Punkt: Grafik ist schön und gut, sobald die Last Gen weg ist wirds noch beeindruckender.

Aber was ich wirklich wichtig finde ist die Immersion. Und die entsteht durch Interaktivität, Interaktivität und nochmals Interaktivität. Wenn man sich off-script mit Charakteren unterhalten und die Welt nachhaltig verändern kann, dann ist das pure Next Gen Immersion bei dem man vergisst, dass es nur ein Spiel ist. Ich finde das ist viel wichtiger als die Grafik.

Wie könnte man das realisieren? Definitiv mit Machine Learning. GPT3 reagiert schon teils enorm lebensecht auf verschiedene Situationen, schreibt sinnige Texte im Kontext (hat aber noch ein Gedächtnis wie ein Goldfisch) und besitzt sogar sowas wie Empathie. Nur muss der Text halt 100% zum Charakter passen, das wird das schwierige sein. Ob es reicht, ein GPT Modell mit Sätzen zu trainieren, die der Charakter in-script schon gesagt hat? Das werden viel zu wenige Daten sein.

Jedoch könnte ich mir vorstellen, dass solche Modelle mal so effizient und klein werden, dass sie mit einer geringen Datenmenge arbeiten können. Dann wäre es möglich, dass die Modelle mit geringem Speicherverbrauch auf dem eignen PC laufen könnten, was den Vorteil hätte dass die Latenz deutlich geringer und man nicht auf die Cloud angewiesen wäre.

https://www.youtube.com/watch?v=jH-6-ZIgmKY

Jedenfalls hoffe ich wirklich stark, dass man in echten Next Gen Spiele die Interaktivität deutlich nach oben schraubt.

Dampf
2022-05-20, 11:32:04
https://twitter.com/GabrielSassone/status/1527404712970047492

Entwickler experimentiert mit Mesh Shading.

Von 30 auf 18 ms - fast doppelte Performance!

][immy
2022-05-20, 13:37:45
https://twitter.com/GabrielSassone/status/1527404712970047492

Entwickler experimentiert mit Mesh Shading.

Von 30 auf 18 ms - fast doppelte Performance!
Ja, das ist schon interessant. Muss aber halt von Anfang an mit eingeplant werden. Dauert also wohl noch ein paar Jahre bis das wirklich relevant wird. So langsam sieht es ja auch bei der Hardwarebasis deutlich besser aus, aber wirklich nur langsam. Die nicht-Verfügbarkeit neuer Hardware hat diese Features wohl schon einiges an Zeit gekostet sich durchsetzen zu können.

AffenJack
2022-05-20, 14:36:40
[immy;13009421']Ja, das ist schon interessant. Muss aber halt von Anfang an mit eingeplant werden. Dauert also wohl noch ein paar Jahre bis das wirklich relevant wird. So langsam sieht es ja auch bei der Hardwarebasis deutlich besser aus, aber wirklich nur langsam. Die nicht-Verfügbarkeit neuer Hardware hat diese Features wohl schon einiges an Zeit gekostet sich durchsetzen zu können.

Die Hardwarebasis am PC ist am Ende nicht so ein Problem. Ich weiß nicht, ob man da noch solange Rücksicht drauf nehmen würde. Aber solange bei den Konsolen noch Cross-Gen programmiert wird, wird man das nicht groß einsetzen.

Erst mit voll auf die Next-Gen Konsolen optimierten Engines wird man die neuen Techniken mehr nutzen.

AintCoolName
2022-05-20, 16:07:28
Die Frage ist doch ob das überhaupt noch zum Einsatz kommt. Ist Meshshader nicht das was Nanite macht? Und wenn das so gut ohne Hardware geht warum dann noch Meshshader nutzen?

basix
2022-05-20, 16:13:48
Nanite ist was ganz anderes. UE5 nutzt Mesh Shader bei grossen Polygonen, dort ist die HW schneller als der SW Ansatz von Nanite. Nanite dort sehr schnell, wo die GPU-HW nicht darauf ausgelegt ist: Sehr kleine Polygone <= 1 Pixel.

Nightspider
2022-06-08, 16:36:43
Blöde Frage:

Beschleunigt Direct Storage jetzt auch direkt Lade-und Startzeiten von Spielen oder nur indirekt, indem grafikrelevante Dinge schneller und komprimiert geladen werden, während Engine und die Kernelemente des Spiels weiterhin von der CPU in den RAM geladen werden, genauso schnell wie vorher?

Ex3cut3r
2022-06-08, 16:55:36
Der komprimier Teil fehlt noch in der aktuellen DS Version.

basix
2022-06-08, 18:13:21
DirectStorage an sich ist etwas schneller als die alte API, ca. 2x. Auch via CPU.

][immy
2022-06-08, 18:15:57
Blöde Frage:

Beschleunigt Direct Storage jetzt auch direkt Lade-und Startzeiten von Spielen oder nur indirekt, indem grafikrelevante Dinge schneller und komprimiert geladen werden, während Engine und die Kernelemente des Spiels weiterhin von der CPU in den RAM geladen werden, genauso schnell wie vorher?
Directstorage hat erst mal nichts mit der Dekomprimierung zu tun. Die kann weiterhin dort ausgeführt werden, wo man "will". DS ist erst mal nur dafür da, das der Weg von der SSD zum Speicher möglichst kurz und effizient ist.
Die Kompression dürfte beim PC eigentlich so gut wie keine Rolle spielen, sowohl an CPU- als auch GPU-Leistung ist genug vorhanden um kleine Artefakte mal eben zu dekomprimieren. Wichtig ist halt, das die Daten auf der SSD entsprechend zerlegt liegen, damit nur das geladen werden muss, was man auch braucht.
Hilft ja nix wenn du eine 8k Textur (samt Mips) lädst, aber nur einen Bruchteil davon darstellst. Du willst am besten so wenig davon laden wie du grad benötigst (möglichst ohne überflüssige Kanten). Dementsprechend muss dann alles zerlegt sein.
Das hat aber auch wieder alles nichts mit Direct Storage zu tun, sondern eher damit, wie du DS dann am ende auch Effizient einsetzt. Die anderen Features (wie Mesh-Shader) sind dann noch dazu da, so wie wie möglich einzusparen. Das schont die Bandbreite und den Arbeits-/Grafikspeicher wodurch am Ende einfach "mehr" zur Verfügung steht und mehr damit gemacht werden kann.

Die ganzen Vorteile die DirectStorage bietet werden wir aber wohl als letztes am PC sehen. Denn es gibt nicht so viele Leute die Ausreichend Speicherplatz auf einer nvme SSD zur Verfügung haben. Daher wird man auch die nächsten Jahre noch auf HDDs Rücksicht nehmen müssen bzw. maximal normale SSDs voraussetzen. Aber allein das ermöglicht schon einiges. Nach wie vor fehlt mir hier ein SATA Nachfolger mit den Fähigkeiten des m.2 Slots.
Muss ja nicht mit PCIe 5 m.2 mithalten. SATA hatte aber den Vorteil das es sich ziemlich einfach erweitern lässt und nicht alles in der Nähe des Mainboards sitze muss und die meisten Leute haben (wenn überhaupt) nur einen m.2 Slot und darauf sitzt dann gern mal eine kleine SSD (mit Glück ne nvme) mit dem OS und hat nicht mehr so viel Platz. Aber SATA scheint sich auch weiterhin nur auf HDDs zu konzentrieren und macht da seit jetzt schon gut 2 Jahren nix mehr an den Standards.

Gott1337
2022-06-08, 18:44:41
[immy;13025593']Directstorage hat erst mal nichts mit der Dekomprimierung zu tun. Die kann weiterhin dort ausgeführt werden, wo man "will". DS ist erst mal nur dafür da, das der Weg von der SSD zum Speicher möglichst kurz und effizient ist.
Die Kompression dürfte beim PC eigentlich so gut wie keine Rolle spielen, sowohl an CPU- als auch GPU-Leistung ist genug vorhanden um kleine Artefakte mal eben zu dekomprimieren. Wichtig ist halt, das die Daten auf der SSD entsprechend zerlegt liegen, damit nur das geladen werden muss, was man auch braucht.
Hilft ja nix wenn du eine 8k Textur (samt Mips) lädst, aber nur einen Bruchteil davon darstellst. Du willst am besten so wenig davon laden wie du grad benötigst (möglichst ohne überflüssige Kanten). Dementsprechend muss dann alles zerlegt sein.
Das hat aber auch wieder alles nichts mit Direct Storage zu tun, sondern eher damit, wie du DS dann am ende auch Effizient einsetzt. Die anderen Features (wie Mesh-Shader) sind dann noch dazu da, so wie wie möglich einzusparen. Das schont die Bandbreite und den Arbeits-/Grafikspeicher wodurch am Ende einfach "mehr" zur Verfügung steht und mehr damit gemacht werden kann.

Die ganzen Vorteile die DirectStorage bietet werden wir aber wohl als letztes am PC sehen. Denn es gibt nicht so viele Leute die Ausreichend Speicherplatz auf einer nvme SSD zur Verfügung haben. Daher wird man auch die nächsten Jahre noch auf HDDs Rücksicht nehmen müssen bzw. maximal normale SSDs voraussetzen. Aber allein das ermöglicht schon einiges. Nach wie vor fehlt mir hier ein SATA Nachfolger mit den Fähigkeiten des m.2 Slots.
Muss ja nicht mit PCIe 5 m.2 mithalten. SATA hatte aber den Vorteil das es sich ziemlich einfach erweitern lässt und nicht alles in der Nähe des Mainboards sitze muss und die meisten Leute haben (wenn überhaupt) nur einen m.2 Slot und darauf sitzt dann gern mal eine kleine SSD (mit Glück ne nvme) mit dem OS und hat nicht mehr so viel Platz. Aber SATA scheint sich auch weiterhin nur auf HDDs zu konzentrieren und macht da seit jetzt schon gut 2 Jahren nix mehr an den Standards.
äh doch, Direct Storage ist auch dafür da, das die GPU die daten decompressed. Das wurde auch extra von Nvidia bei Ampere als feature angepriesen. Heißt bei Nvidia RTX IO (Können die RDNA2 auch).
https://www.nvidia.com/en-us/geforce/news/rtx-io-gpu-accelerated-storage-technology/

basix
2022-06-08, 18:50:44
Ein cooler SATA Nachfolger wäre ein Kabel mit PCIe 3.0 oder gar 4.0 mit x1 Lane sowie auf NVMe Basis. Das reicht bereits für ~1-2TB/s und hat den Vorteil, dass man die PCIe Infrastruktur mitnimmt, mit allen Features drum herum. Wäre eine Art PCIe x1 Riser-Kabel, welche man auch für SSDs verwenden kann.

PCIe 4.0 Riser Kabel gibt es bis 200-300mm (geschirmt auch bis 400mm). PCIe 3.0 gibt es auch 500mm, was der Länge eines typischen SATA-3 Kabels entspricht. Ich sehe nicht ein, wieso das nicht auch gehen sollte.

SATA kann man dann noch für HDDs und optische Laufwerke behalten. Oder besser bei der neuen Lösung einfach auf PCIe 2.0 zurückschalten (~450MB/s). Dann kann SATA sterben.

hmmm
2022-06-08, 19:52:35
Aber genau das ist doch mit NVME umgesetzt.
Ok, das Kabel haben die weggelassen. ;)

hmmm
2022-06-08, 20:04:19
Als ich mit einem "LinuxKollegen" über Directstorage gesprochen habe sagte er nur: "Ach eine zSwapFile die in den Speicherbereich eines Task gehangen wird, Hatten wir auch schon mal gemacht."

The_Invisible
2022-06-08, 20:19:37
Dafür gibts eh U.2/U.3, gibt sogar 2 x570 Boards dafür :D Sonst halt leider nur Workstation/Server Boards

basix
2022-06-08, 20:57:17
Bei U.2 waren anscheinend die Kabel zu teuer. Wieso eigentlich? U.3 scheint mir noch komplexer zu sein, da es aushandelt ob es nun SATA, SAS oder PCIe ist. Und halt auch PCIe 4.0 x4. Ich hätte mir ein reines PCIe x1 Kabel vorgestellt. Möglichst einfach und simpel. Ich brauch nicht 8 GB/s auf einer 2.5" Platte, wenn ich dafür den m.2 Slot habe. 2 GB/s wären für Daten, Datengrab und ältere Spiele mehr als genug. Nur bei den neuesten Spielen inkl. DirectStorage würde sich ein schnellerer Speed lohnen, dafür gibt es aber m.2. Dann verschiebt man das Game halt zwischen Platten, wenn nötig. Bei Steam 2-3 Klicks, bei Origin und Epic Games Launcher Pain in the Ass.

The_Invisible
2022-06-08, 21:15:35
Wäre halt trotzdem praktischer weil man eine Wärmequelle wegbekommt, meine m.2s werden nicht wenig warm und hängen zwischen grafikkarte und cpu. Im Big-Tower hätte ich genug Platz für >10 2,5" Drives und die würden auch im Luftstrom vorm Lüfter hängen.
Aber ja, pcie/nvme würde für Consumer völlig ausreichen, wobei dann die Consumer CPUs einfach zu wenig PCIe Lanes bieten. :D

Ganon
2022-06-09, 08:57:20
Als ich mit einem "LinuxKollegen" über Directstorage gesprochen habe sagte er nur: "Ach eine zSwapFile die in den Speicherbereich eines Task gehangen wird, Hatten wir auch schon mal gemacht."

Memory Mapping für die CPU ist aber schon seit Jahrzehnten überall möglich. Bei DirectStorage geht's darum das für die GPU zu machen.

Technischer ausgedrückt wird eine Datei auf der SSD als DirectX 12 Buffer zur Verfügung gestellt. Wo diese Daten dann am Ende genau liegen ist natürlich der Implementierung überlassen, im Idealfall bleibt sie aber auf der SSD liegen und die GPU liest direkt davon.

][immy
2022-06-09, 09:46:24
Wäre halt trotzdem praktischer weil man eine Wärmequelle wegbekommt, meine m.2s werden nicht wenig warm und hängen zwischen grafikkarte und cpu. Im Big-Tower hätte ich genug Platz für >10 2,5" Drives und die würden auch im Luftstrom vorm Lüfter hängen.
Aber ja, pcie/nvme würde für Consumer völlig ausreichen, wobei dann die Consumer CPUs einfach zu wenig PCIe Lanes bieten. :D
Man könnte ja die gleichen PCIe Lanes nutzen und teilen. Für den gewöhnlichen Betrieb sollte das vollkommen ausreichen. Hauptsache man kann den Speicher einfach erweitern. Wenn man was von SSD1 auf SSD2 kopiert, dauert es halt ein wenig länger, sollte aber trotzdem noch deutlich flotter sein, als das was aktuell der Fall mit SATA ist.

Die einzig andere, derzeit sinnvolle Möglichkeit ist eine PCIe Karte die m.2 Slots bietet. Aber auch das hat halt so seine Nachteile.

Memory Mapping für die CPU ist aber schon seit Jahrzehnten überall möglich. Bei DirectStorage geht's darum das für die GPU zu machen.

Technischer ausgedrückt wird eine Datei auf der SSD als DirectX 12 Buffer zur Verfügung gestellt. Wo diese Daten dann am Ende genau liegen ist natürlich der Implementierung überlassen, im Idealfall bleibt sie aber auf der SSD liegen und die GPU liest direkt davon.
Ja, im Grunde gibt es die Möglichkeit schon lange, nur eben (wie du ja auch beschreibst) nicht so richtig für die GPU ohne die CPU zu fragen. Zudem waren in der Vergangenheit die Speicher viel zu langsam, als das man ernsthaft darüber nachgedacht hätte, diesen weg zu beschleunigen. Der Flaschenhals war halt die Daten von der HDD zu lesen CPU- und Speicherbelastung spielten da eher eine untergeordnete Rolle. Auch jetzt mit den SSDs ist das nicht so richtig "einfach" dort einen gemeinsamen Nenner zu finden. Viele genutzte SSDs sind halt trotzdem stark Bandbreitelimitiert. Damit lässt sich zwar trotzdem noch einiges verbessern, aber letztlich ist es dann schwierig auf irgendwas zu zählen (gibt da draußen genug SSDs die grad mal gefühlte 20MB/s schaffen auch wenn diese langsam aber sicher aussterben sollten).

Gast
2022-06-09, 12:05:26
[immy;13025593']
Die Kompression dürfte beim PC eigentlich so gut wie keine Rolle spielen, sowohl an CPU- als auch GPU-Leistung ist genug vorhanden um kleine Artefakte mal eben zu dekomprimieren.


Die Kompression bzw. Dekompression spielt sogar eine sehr große Rolle, und ist der Hauptgrund warum sich die Ladezeiten sobald man eine SSD hat kaum mehr verbessern, egal ob es eine S-ATA oder NVME ist, auch wenn letztere mittlerweile 10x schneller sind.

Wenn man eine SSD einsetzt sind Ladezeiten hauptsächlich CPU-Limitiert.

Der zweite Punkt ist dass enorm viel Bandbreite verschwendet wird.

Der aktuelle Weg der Daten ist:
Daten werden von der SSD in den RAM geladen.
CPU lädt die Daten aus dem RAM, dekomprimiert sie und bereitet sie für die Verwendung der GPU auf und schreibt das Ergebnis zurück in den RAM.
Dann erfolgt ein Copy der Daten aus dem RAM in den VRAM, und erst dann liegen sie dort wo sie eigentlich benötigt werden und können von der GPU verwendet werden.

Im RAM gibt es also folgende Vorgänge:
1x schreiben komprimiert
1x lesen komprimiert
1x schreiben dekomprimiert
1x lesen dekomprimiert

Das benötigt alleine jede Menge CPU-Zyklen.


Wichtig ist halt, das die Daten auf der SSD entsprechend zerlegt liegen, damit nur das geladen werden muss, was man auch braucht.


Genau umgekehrt, auch auf einer SSD ist es verhältnismäßig teuer kleine Datenpakete zu lesen, wenn natürlich auch sehr viel besser als auf einer HDD.

Von einer SSD willst du immer möglichst große Pakete lesen und die Aufteilung erst in den schnelleren Speicherstufen vornehmen.

Was für den Endausbau von DirectStorage wichtig ist, ist lediglich, dass die Daten auf der SSD gut in jene Teile die Grafik betreffen und den Rest aufgeteilt sind, damit bei funktionierender Dekompression auf der GPU auch nur das an die GPU geht was sie benötigt bzw. umgekehrt auch die Daten welche die CPU benötigt von dieser gelesen werden kann.

Ganon
2022-06-09, 12:37:03
[immy;13026060']Damit lässt sich zwar trotzdem noch einiges verbessern, aber letztlich ist es dann schwierig auf irgendwas zu zählen (gibt da draußen genug SSDs die grad mal gefühlte 20MB/s schaffen auch wenn diese langsam aber sicher aussterben sollten).

So schwer ist das aber auch nicht zu lösen. Bei schlechten SSDs ist dann einfach die Performance mies und man muss die Grafikdetails runterschrauben, damit die Daten wieder normal in den VRAM passen wie bisher auch.

DirectStorage verlangt ja nicht von dir, dass du dauernd den VRAM überfüllen musst.

Gratzner
2022-06-09, 16:09:54
So schwer ist das aber auch nicht zu lösen. Bei schlechten SSDs ist dann einfach die Performance mies und man muss die Grafikdetails runterschrauben
So viel Bandbreite benötigt das Streaming auch nicht. Um mal Epic Games Entwickler zu zitieren:

However, the whole point of the virtualised texturing system used by Nanite is that it's actually very lightweight in bandwidth [...] "This distinguishes it from traditional engines... [with Nanite] it's very gradual," says Michal Valient. "As you move around, it hovers at like 10MB per frame, because we stream bits of textures, bits of Nanite data... we stream textures or small tiles as you need them.
Aus von https://www.eurogamer.net/digitalfoundry-2021-inside-the-matrix-awakens-previewing-the-future-of-gaming-graphics

Die Implikation, das man da jetzt ultraviel Bandbreite benötigt, kam ja von den Sony-Leuten, weil die natürlich ihre Konsole 'gut darstellen' wollen

Ganon
2022-06-09, 16:19:11
So viel Bandbreite benötigt das Streaming auch nicht. Um mal Epic Games Entwickler zu zitieren

Wie es auch im Artikel als Update steht: 10MB / Frame sind bei 60fps dann aber auch schon 600 MB/s. Bei 120fps sind wir dann schon bei 1,2GB/s... Und Assets werden über die Jahre nicht kleiner und Anforderungen nicht weniger.

Es hängt halt wie so immer vom Ziel ab, was man erreichen will. Was ich ja mit meinem Text aussagen wollte. Wer mehr will, braucht halt auch mehr. Es verhindert aber grundsätzlich die Technologie nicht.

Gott1337
2022-06-10, 01:25:20
und die UE, egal ob 4 oder 5, hat extreme Probleme mit streaming. Desweiteren ist es KEIN gutes Zeichen das dort so wenig gestreamt wird, es heißt einfach nur das viele Daten schon vorher in den VRAM geladen wurden, egal ob sie genutzt wurden oder nicht.

Gast
2022-06-10, 09:14:34
Desweiteren ist es KEIN gutes Zeichen das dort so wenig gestreamt wird, es heißt einfach nur das viele Daten schon vorher in den VRAM geladen wurden, egal ob sie genutzt wurden oder nicht.

Ist es nicht, Streaming ist immer der ineffizientere Weg und nur notwendig wenn nicht genügend RAM/VRAM vorhanden sind.

Ausreichend RAM/VRAM ist immer der bessere Weg und sollte falls vorhanden genutzt werden um das Streaming zu minimieren.

hmmm
2022-06-10, 09:25:58
Eine SATA SSD wird für die eigentliche (nicht die jetzige "Spar") direkt storage Implementierung nie so geeignet sein wie eine NVMe SSD. Alleine schon das AHCI Korsett engt an allen Ecken und Enden ein.

Exxtreme
2022-06-10, 10:14:56
Ist es nicht, Streaming ist immer der ineffizientere Weg und nur notwendig wenn nicht genügend RAM/VRAM vorhanden sind.

Ausreichend RAM/VRAM ist immer der bessere Weg und sollte falls vorhanden genutzt werden um das Streaming zu minimieren.

Es hängt davon ab wie die sonstige Architektur ist. So ein IBM- oder Fujitsu-Mainframe streamt die ganze Zeit. Aber das Ding hat mehrere TB pro Sekunde an Durchsatz. Also viel mehr als PC-Grafikkarten. Bei so einer Architektur wäre Streaming was ganz normales und alles andere wäre ineffizient. Beim PC ist das andersrum. Der Durchsatz ist sehr niedrig, also weicht man auf große Caches aus. Damit man möglichst nicht streamen muss.

Gast
2022-06-10, 13:47:22
Es hängt davon ab wie die sonstige Architektur ist. So ein IBM- oder Fujitsu-Mainframe streamt die ganze Zeit.


Je weiter Daten fließen müssen desto ineffizienter wird es.
Wenn man 1TB große und schnelle L1 Caches bauen könnte wäre es immer das zu machen anstatt von irgendwelchen langsameren Speichern zu streamen.

Streaming ist im Prinzip der Fallback, wenn es einfach nicht mehr vernünftig möglich ist, ausreichend Speicher nahe genug am "Verbraucher" zu bauen.

Wenn man TB an Daten braucht ist es eben einfach nicht möglich alle Daten im RAM oder gar noch schnelleren Speichern zu halten. Dennoch ist es immer extrem viel ineffizienter zu streamen, es ist einfach ab gewissen Datenmengen notwendig.


Aber das Ding hat mehrere TB pro Sekunde an Durchsatz.


Durchsatz ist die eine Sache, Latenzen sind eine andere die auch nicht unwichtig sind.

Daten die im RAM sind können direkt verwendet werden, Daten die von Festspeichern geladen werden, müssen immer erst aufbereitet werden, so dass sie dann von der Programmlogik auch verwendet werden können.

Alleine die Logik die notwendig ist um zu erkennen, wann Daten nicht vorhanden sind, und nachgeladen werden müssen ist ein enormer Overhead.

Streaming nur des Streamings willen ist nicht sinnvoll, streaming nur dann wenn notwendig ist vielmehr der intelligente Ansatz.

Ansonsten könnten wir ja einfach die ganzen Caches weglassen, wofür denn, wir haben eh einen RAM aus dem wir uns die benötigten Daten holen können.

Damit man möglichst nicht streamen muss.

Eben deshalb weil Streamen von einem entfernten Datenträger immer um Größenordnungen ineffizienter als das lokale halten der Daten ist.

Gratzner
2022-06-17, 17:49:47
Ich habe mal die Matrix-Awaken-Demo "gebenchmarkt" und den SSD Read aufgezeichnet (logfiles im Anhang):

Getestet habe ich in
- WQHD;
- 100% Screen-Percentage;
- Texture Quality: Epic und View-Distance: Epic (um die SSD maximal zu stressen);
- mit 3070mobile;
- zum aufzeichnen habe ich RTSS verwendet
- die genauen Settings können aus dem Spoiler entnommen werden:
https://s20.directupload.net/images/220617/h9xqsw9n.jpg


Hier (auf Youtube) (https://www.youtube.com/watch?v=dyFy8f0_snE) gibt es den Benchmarkscene zu sehen. Ich habe wirklich darauf geachtet, mich mit Maximalgeschwindigkeit durch die Demo mich zu bewegen. Auch habe ich zum Schluss zusätzlich nach rechts und links in seitlich in die STraßen geschaut, um maximal große Änderungen in kurze Zeit zu provozieren.

Ich habe ebenfalls den Start der Demo mit aufgezeichnet und geloggt. Die Aufzeichnung der in den Diagrammen beginnen daher verzögert.

Insgesamt habe ich 4 Tests gemacht:
- zwei Tests einfach nur mit DLAA, da hier outputresolution=renderresolution ist,
- zwei Tests mit DLAA und gaussmath VRAM-Allocator, welcher einmal 2GB und einmal 3GB VRAM weggenommen hat

DLAA, erster Durchlauf:
belegter VRAM (der Applikation, max-Wert): 5233 MB
belegter RAM (der Applikation, max-Wert): 4030 MB
zeitlicher Verlauf des SSD Read und der Framerate im Spoiler

https://s20.directupload.net/images/220617/99jqvr6j.png


DLAA, zweiter Durchlauf:
belegter VRAM (der Applikation, max-Wert): 5283 MB
belegter RAM (der Applikation, max-Wert): 4704 MB
zeitlicher Verlauf des SSD Read und der Framerate im Spoiler

https://s20.directupload.net/images/220617/ghkqkxpu.png


DLAA und 2GB weniger Vram
belegter VRAM (der Applikation, max-Wert): 5148 MB
belegter RAM (der Applikation, max-Wert): 5122 MB
zeitlicher Verlauf des SSD Read und der Framerate im Spoiler

https://s20.directupload.net/images/220617/trilqfw3.png


DLAA und 3GB weniger Vram
belegter VRAM (der Applikation, max-Wert): 4496 MB
belegter RAM (der Applikation, max-Wert): 5487 MB
zeitlicher Verlauf des SSD Read und der Framerate im Spoiler

https://s20.directupload.net/images/220617/ol75lxg6.png


Auswertung:
Trotz das ich versucht habe ein worst-Case-Szenario zu erstellen, komme ich kaum über 200MB/s, mit der der Hauptspeicher gelesen wird. (Ausnahme: zum Start der Demo wird mehr Bandbreite verwendet). Dabei wird auch nur rund 5GB VRAM und 5GB RAM gebraucht. Ich kann es einfach nicht beobachten, dass man super schnelle SSDs brauch fürs Streamen oder alternativ super viel RAM/VRAM . Eine kompetente SATA-SSD ist hier ausreichend

Ex3cut3r
2022-06-17, 18:12:10
Danke für deine Mühe, aber warum machst du das jetzt schon?

Direct Storage ist doch gar nicht intergiert in dieser DEMO Version, außerdem fehlt immer noch die Kompressionsanteil bei Direct Storage in der aktuellen Version.

Gott1337
2022-06-17, 18:30:41
man sieht aber ganz klar das Fehlen von DS, umso höher der Read-Wert desto niedriger die fps. (naja zumindest teilweise) Aber da die Demo CPU limitiert ist macht das schon Sinn.

crux2005
2022-09-20, 22:23:33
Ja, was ist jetzt mit Direct Storage und co? Erinnert sich noch jemand daran?
https://www.pcgameshardware.de/DirectX-12-Software-255525/News/Direct-Storage-Windows-10-auch-PCI-Express-30-SSDs-1370652/

Einen genauen Release-Termin hat die API bisher nicht erhalten. Aber es soll wohl eine Entwickler-Preview im Sommer geben, was auf einen Launch im zweiten Halbjahr 2021 hindeutet

:anonym:

Ex3cut3r
2022-09-20, 22:26:31
Kannst du vergessen IMHO. Bis das wirklich mal kommt, gibt es schon den Ada Nachfolger. Extrem schleppende Entwicklung. DS wurde damals zum Turing Launch schon angekündigt. Das sind mittlerweile 4 Jahre+ Und wo sind wir heute? Irgendwo im nirgendwo. Pascal /Turing sind wohl endgültig Legacy bei Nvidia seit heute. Und Ampere bekommt ab jetzt nur noch das nötigste.

Rumbah
2022-09-21, 00:29:36
So wie ich das verstehe, ist das Problem, dass halt eine ganz neue API für den Dateizugriff benutzt werden muss, ähnlich wie IO_uring unter Linux.
Und die API scheint nicht abwärtskompatibel zu sein, sondern nur für nvme zu funktionieren.
Da bleibt als Zielgruppe nicht mehr so viel übrig, als dass man da einfach mal so viele Entwicklerstunden reinwirft. Zusätzlich dazu ists ja noch nicht mal veröffentlicht.
Vielleicht ein Henne - Ei Problem, aber ich sehe auch nicht, wie man das den Käufern vermitteln soll, dass das jetzt nur auf eine nvme Platte installiert werden kann, wenn die meisten Leute wahrscheinlich nicht mal wissen, was das ist und ob es in ihrem Rechner steckt.
Und sonst muss man halt doppelt programmieren.

basix
2022-09-21, 00:43:34
DirectStorage funktioniert sogar mit einer HDD:
https://www.techspot.com/news/93911-forspoken-demo-offers-glimpse-microsoft-directstorage-action.html
https://static.techspot.com/images2/news/bigimage/2022/03/2022-03-24-image-19-j_1100.webp

Bringt nur nicht viel ;) Aber spätestens mit einer Sata-SSD ist es ganz flott.

Und DirectStorage ist gar nicht das Kritischste am Ganzen, sondern dass das Game / die Game-Engine schnelles Laden supported. Selbst mit Win32-API sind auf einer schnellen NVMe SSD Ladezeiten um ~2sec erreichbar (siehe obigen Link). DirectStorage vs. Win32-API kann sich erst bei NVMe Bandbreiten absetzen (siehe Grafik mit File IO Speed).

Ergo:
Die Games sind bisher noch nicht so weit. HW und SW wäre da.

ChaosTM
2022-09-21, 00:46:51
Es geht ja nur um die Umgehung der CPU beim Reinladen der Daten in die GPU.
Das sollte nicht soo schwer zu patchen sein.. oder doch ?

basix
2022-09-21, 00:51:40
Bei Forspoken läuft noch alles über die CPU ;)

GPU-Decompression kommt erst später in einem zweiten Nachfolge-Release von DirectStorage.

Habe gerade gesehen, dass DirectStorage noch gar nicht released wurde:
https://www.pc-magazin.de/news/microsoft-direct-storage-verschiebung-forspoken-funktion-performance-verbesserung-cpu-gpu-3203585.html

Obwohl bereits seit Mitte 2021 für Entwickler verfügbar....evtl. ist hier der Hund begraben: Niemand will es mit der Win32-API umsetzen, obwohl es technisch ja machbar wäre. Alle warten auf den DirectStorage Release...

ChaosTM
2022-09-21, 01:07:36
Ich sollte mir wirklich eine PS5 kaufen ;)

][immy
2022-09-23, 07:39:33
Je weiter Daten fließen müssen desto ineffizienter wird es.
Wenn man 1TB große und schnelle L1 Caches bauen könnte wäre es immer das zu machen anstatt von irgendwelchen langsameren Speichern zu streamen.

Streaming ist im Prinzip der Fallback, wenn es einfach nicht mehr vernünftig möglich ist, ausreichend Speicher nahe genug am "Verbraucher" zu bauen.

Wenn man TB an Daten braucht ist es eben einfach nicht möglich alle Daten im RAM oder gar noch schnelleren Speichern zu halten. Dennoch ist es immer extrem viel ineffizienter zu streamen, es ist einfach ab gewissen Datenmengen notwendig.



Durchsatz ist die eine Sache, Latenzen sind eine andere die auch nicht unwichtig sind.

Daten die im RAM sind können direkt verwendet werden, Daten die von Festspeichern geladen werden, müssen immer erst aufbereitet werden, so dass sie dann von der Programmlogik auch verwendet werden können.

Alleine die Logik die notwendig ist um zu erkennen, wann Daten nicht vorhanden sind, und nachgeladen werden müssen ist ein enormer Overhead.

Streaming nur des Streamings willen ist nicht sinnvoll, streaming nur dann wenn notwendig ist vielmehr der intelligente Ansatz.


Zumal streaming nur begrenzt den RAM "entlasten" kann. Denn letztlich haben die Konsolen aktuell schon so viel Speicher das sie ohne erheblich mehr Bandbreite nicht all zu viel mit mehr Speicher (außer als Puffer) anfangen können. Denn letztlich begrenzt die Bandbreite wie viel Speicher pro frame sinnvoll eingesetzt werden kann.
Zusätzlich kommt hinzu das sich zwischen 2 frames (bzw auch mehr) normalerweise nicht all zu viel ändert, dementsprechend wird man immer versuchen möglichst die Daten vor zu halten damit man die eben nicht erneut streamen muss.
Ja der Puffer könnte jetzt kleiner werden, aber letztlich braucht man ihn noch da die Größe der Daten für gewöhnlich mit der Qualität wächst.

Am PC wird es aber interessant wann HDDs tatsächlich aussterben. Letztlich lässt sich hier aber viel über den Hauptspeicher umgehen, was halt eine deutlich größere Initiale Ladezeit bedeutet.
Auch interessant wird sein wie die Spiele mit unterschiedlichen Geschwindigkeiten der SSDs umgehen werden.

basix
2022-09-23, 08:52:43
Ist die Frage, für was man DirectStorage nutzt. Sind es nur Ladezeiten, ist es egal wie schnell die Festplatte ist. Dazu braucht es auch nicht mehr System-RAM oder VRAM wie heute. Mit einer schnellen SSD geht es aber schneller, aber bereits eine SATA-SSD kann hier gute Ergebnisse liefern.

Geht man in Richtung Streaming:
Entweder kickt man HDDs raus (möglich, minimale Systemanforderung = SSD) und/oder man benutzt den System-RAM als Puffer. Das Resultat wird sein, dass umso langsamer die Platte ist, desto grösser wird dieser Puffer werden. Das sieht man bereits heute bei GPUs mit unterschiedlichen VRAM-Mengen. Bei GPUs mit kleinerem VRAM wird meistens mehr System-RAM belegt. Mit einer Kopplung mit der Festplatten-Bandbreite kommt hier einfach noch eine neue Dimension dazu.

Andererseits muss man sagen, dass SSDs mittlerweile so günstig sind, dass jeder eine im System haben kann. Zumindest fürs System und Spiele. 512GByte gibt es ab ~40 Euro. Und Notebooks sowie Komplettsysteme haben wohl seit ~5 Jahren immer eine System-SSD installiert.

Platos
2022-09-23, 09:34:58
Zuerst muss das mal in nem grossen Spiel auch wirklich genutzt werden. Nicht für Ladezeiten, darum gehts doch primär nicht bei DirectStorage. Es geht darum, dass das ganze Spiel darauf ausgelegt ist (wie z.B Rift Apart bei der PS5).

Bis das geschieht, gibts vlt. nicht mal mehr HDDs :tongue::freak:

Spass, aber DirectStorage muss zuerst mal kommen. Vorher ist das etwa so geil wie Intels Fertigungsversprechen. Das ist aber sehr ungewiss. Könnte in einem Jahr kommen, wird aber vermutlich erst in 2-3 Jahren oder noch später kommen. Ist absolut nicht absehbar.

Und von einer PCI-E 5.0 SSD wird man (Ausnahmefälle ausgenommen) die nächsten 5 Jahre kaum irgenein Vorteil haben.

basix
2022-09-23, 10:04:31
Naja, ich hätte schon gerne <5sec Ladezeiten in jedem Spiel, ich hasse dieses warten ;) Ist aber mehr ein Thema der Spiele-Engine und weniger von DirectStorage an sich. DirectStorage kann den Prozess einfach nochmals beschleunigen und macht die Implementation allenfalls auch einfacher.

Wann DirectStorage kommt oder eher noch Spiele, die es unterstützen, kommen, das ist die grosse Frage.

Gast
2022-09-23, 11:55:46
Ist die Frage, für was man DirectStorage nutzt. Sind es nur Ladezeiten, ist es egal wie schnell die Festplatte ist. Dazu braucht es auch nicht mehr System-RAM oder VRAM wie heute. Mit einer schnellen SSD geht es aber schneller, aber bereits eine SATA-SSD kann hier gute Ergebnisse liefern.

Dafür braucht es GPU unpacking. Der Grund warum aktuell viel schnellere NVME-SSDs sich kaum von S-ATA-SSDs absetzen können, ist dass das Laden mit einer S-ATA-SSD bereits weitestgehend CPU-limitiert ist.

Nightspider
2022-09-23, 12:05:12
Ich habe das Gefühl am PC zieht sich das mit Direct Storage so lange hin, bis man die Probleme eh mit mehr Speicher erschlägt.

Die neuen GPUs haben 16-24GB, mind. 12GB. 32GB RAM haben glaube die meisten neuen Gaming PCs.

Sind zusammen 48 bis 56GB, damit kommt man erstmal hin.

Gast
2022-09-23, 12:29:20
Ich habe das Gefühl am PC zieht sich das mit Direct Storage so lange hin, bis man die Probleme eh mit mehr Speicher erschlägt.

Das kannst du nicht mit mehr Speicher erschlagen.

Du könntest mit 128GB RAM zwar das Nachladen minimieren, aber dafür dauert das initiale Laden umso länger.

basix
2022-09-23, 13:46:54
Dafür braucht es GPU unpacking. Der Grund warum aktuell viel schnellere NVME-SSDs sich kaum von S-ATA-SSDs absetzen können, ist dass das Laden mit einer S-ATA-SSD bereits weitestgehend CPU-limitiert ist.

Da hast du recht. Nur ist es nicht so tragisch, ob 4sec Ladezeit bei einer SATA SSD oder 2sec bei einer NVMe. Mit GPU Decompression würden die 4sec bei der SATA-SSD stehen bleiben und bei der NVMe geht es runter auf evtl. <1sec.
https://www.techspot.com/news/93911-forspoken-demo-offers-glimpse-microsoft-directstorage-action.html

Nichtsdestotrotz wäre 4sec Ladezeit auf einer SATA SSD ein bereits sehr grosser Fortschritt verglichen zu heute typischen Ladezeiten.

Deisi
2022-09-25, 12:36:12
Mit Scorn kommt nächsten Monat wohl das erste Spiel mit Direct Storage
https://wccftech.com/scorn-will-support-directstorage-on-pc-as-well-as-on-xbox-series-xs-developer-confirms/

sapito
2022-09-25, 12:38:02
Mit Scorn kommt nächsten Monat wohl das erste Spiel mit Direct Storage
https://wccftech.com/scorn-will-support-directstorage-on-pc-as-well-as-on-xbox-series-xs-developer-confirms/


XBOX JA
PC ???

desweiteren


Scorn
@scorn_game
·
22. Sep.
There is no sampler feedback or mesh shading.

dildo4u
2022-10-12, 15:50:56
Nvidia will den Treiber Overhead unter DX12 reduziert haben.


https://videocardz.com/newz/nvidias-new-driver-enables-substantial-directx12-performance-improvements-for-geforce-rtx-gpus

Sardaukar.nsn
2022-10-13, 07:06:40
3Dmark hat gestern auch seinen DirectX12 Ultimate Benchmark veröffentlicht.

https://benchmarks.ul.com/static/images/contentboxes/3dmark-speed-way-hero.jpg

https://www.computerbase.de/2022-03/3dmark-speedway-benchmark-fuer-directx-12-ultimate-inkl.-raytracing/

Da liegt meine 3080: https://www.3dmark.com/3dm/80856425?

Andi Y
2022-10-14, 14:12:02
Microsoft DirectStorage 1.1
https://www.computerbase.de/2022-10/microsoft-directstorage-1-1-die-gpu-dekomprimiert-spieldateien-rasant/
https://www.pcgameshardware.de/Windows-11-Software-277633/News/SSD-Turbo-DirectStorage-Was-bringt-Version-11-1405294/
https://devblogs.microsoft.com/directx/directstorage-1-1-coming-soon/

crux2005
2022-10-14, 18:44:42
Microsoft DirectStorage 1.1
https://www.computerbase.de/2022-10/microsoft-directstorage-1-1-die-gpu-dekomprimiert-spieldateien-rasant/
https://www.pcgameshardware.de/Windows-11-Software-277633/News/SSD-Turbo-DirectStorage-Was-bringt-Version-11-1405294/
https://devblogs.microsoft.com/directx/directstorage-1-1-coming-soon/

Beim aktuellen Trend gehe ich davon aus das erst DS 1.2 in PC Spielen benutzt wird. :D Aber ein Lebenszeichen ist besser als keins.

aufkrawall
2022-10-14, 18:48:45
Und das kommt dann per regulärem Windows Update für Win 11 und 10, so scheint es? Mit Glück Q1 23?

Ex3cut3r
2022-10-14, 19:15:23
Na endlich kommt etwas Bewegung rein. Die Kommentare im CB Forum auch mal wieder genial, einige Konseleros behaupten ernsthaft, dass es die PS5 erfunden hat. Dabei wurde DS schon 2018 beim Turing rls erwähnt. X-D

aufkrawall
2022-11-07, 23:20:27
Huch, da ist es schon: https://devblogs.microsoft.com/directx/directstorage-1-1-now-available/
Aktuelle Consumer-Treiber von Nvidia und Intel unterstützen es bereits. AMD offenbar noch nicht bzw. nur für Entwickler.

basix
2022-11-08, 00:00:53
Coole Sache, endlich!

Gott1337
2022-11-08, 00:08:40
Na endlich kommt etwas Bewegung rein. Die Kommentare im CB Forum auch mal wieder genial, einige Konseleros behaupten ernsthaft, dass es die PS5 erfunden hat. Dabei wurde DS schon 2018 beim Turing rls erwähnt. X-D
Klingt unwahrscheinlich das eine Konsole sowas erfindet aber lass sie es glauben ;)

Gebrechlichkeit
2022-11-08, 02:29:52
Na endlich kommt etwas Bewegung rein. Die Kommentare im CB Forum auch mal wieder genial, einige Konseleros behaupten ernsthaft, dass es die PS5 erfunden hat. Dabei wurde DS schon 2018 beim Turing rls erwähnt. X-D
Klingt unwahrscheinlich das eine Konsole sowas erfindet aber lass sie es glauben ;)

Asset streaming von der CD, DVD war auf der console standard, usus. Die Grundidee [direkt zu laden, keine Ladezeiten] hat Sony (https://www.copetti.org/writings/consoles/playstation/)bereits 2001 patentieren lassen. Wie konnte man sonst, die 300MB grosse PS1 Games in den mickrigen vram von 512kb oder 1024 reinlegen (https://animeadventures.fandom.com/wiki/Chunks)?

https://i.ibb.co/QQ4X7Rf/Direct-Storage-on-Windows-will-make-games-so-much-better-You-Tube-1667869492944.png (https://ibb.co/F3FnkMK)
http://www.patentbuddy.com/Patent/6764403

DrFreaK666
2022-11-08, 05:45:57
Die PS2 kam 2000. 2001 hat niemand mehr nach der PS1 gekräht.
Gibt es den Patent auch auf einer anderen Seite, bei der mein Browser keine Sicherheitswarnung ausspuckt?

Und was du meinst ist Ridge Racer. Das passte komplett in den RAM. Das war vom Umfang her aber auch eingeschränkt. Die Nachfolger hatten Ladezeiten

Gast
2022-11-08, 10:54:13
Da wird ja immer noch in den Hauptspeicher geladen, war die ursprüngliche Idee nicht diesen für GPU-Assets komplett zu umgehen und direkt von der SSD in den VRAM zu schreiben?

Ganon
2022-11-08, 12:42:34
Wenn's danach geht, das Nintendo 64 hatte 1996 auch schon Assets von einem Solid-State Datenträger gestreamt, welcher mit der GPU verbunden war.

Darkman.X
2022-11-09, 00:33:52
Es gibt ein Testprogramm für DirectStorage 1.1 gefunden. Ich hatte es schon als Screenshot auf einigen News-Seiten gesehen, die über DirectStorage berichtet hatten.

Ich hab einen Thread im Benchmark-Unterforum erstellt:
https://www.forum-3dcenter.org/vbulletin/showthread.php?p=13162450

Gebrechlichkeit
2022-11-09, 02:17:25
Und was du meinst ist Ridge Racer. Das passte komplett in den RAM. Das war vom Umfang her aber auch eingeschränkt. Die Nachfolger hatten Ladezeiten

Tippe mal sowas hier, oder ein vergleichbares memory, storage system: Memory Fix (https://www.youtube.com/watch?v=izxXGuVL21o&t=1576s), das CD Medium als Festplatte missbrauchen.

Hoert sich wie der Urvater, First Steps von Occlusion Culling an. Nur das rendern, was der Spieler sehen soll bzw. nur das laden, was geladen werden muss. Die chunks werden entsprechend auf der CD gespeichert, und wenn das Rom ein paar mal drueber faehrt und lest, hat man wohl genug data im speicher drin geschauffelt und das segment eines Level Abschnittes perfekt geladen.

Wenn's danach geht, das Nintendo 64 hatte 1996 auch schon Assets von einem Solid-State Datenträger gestreamt, welcher mit der GPU verbunden war.

Aber auch nur dann, wenn die assets decomprimiert vorlagen. Waren die unkomprimiert? Eher nicht, Jack Sparrow haette sonst es zu einfach gehabt.

Gibt es den Patent auch auf einer anderen Seite, bei der mein Browser keine Sicherheitswarnung ausspuckt?

https://patents.google.com/patent/US6764403B2/en

Ganon
2022-11-09, 12:57:05
Aber auch nur dann, wenn die assets decomprimiert vorlagen. Waren die unkomprimiert? Eher nicht, Jack Sparrow haette sonst es zu einfach gehabt.

Die mussten dann dekomprimiert vorliegen ja. Außer jemand hat einen Decompressor in den GPU Microcode gepackt. Möglich aber unwahrscheinlich. Die N64 GPU frisst ja auch nicht nur 32bit RGBA Texturen. So viel Platz brauchte das dann auch nicht. Prinzipiell ist der Workflow aber der selbe. "Die GPU" holt sich die Daten direkt vom Datenträger. Die vermutlich größte Ausbaustufe davon findet man im India Jones und der Turm von Babel Port. Und der Kopierschutz war noch mal ganz was anderes. Das übernahm ein CIC Chip und hat nichts damit zu tun in welchem Format die Daten im ROM lagen.

Und nicht jedes Asset musste auf der Cartridge hochgradig komprimiert vorliegen. Hätte nicht jedes zweite PSX1 Spiel minutenlange CGI Sequenzen hätten die auch alle keine CD gebraucht. :D

Und klar, heute ist das alles viel komplexer und generischer umgesetzt. Es ist aber nicht so als wäre der ganze neue Kram hier was total revolutionär neues. Man hat nur mit neuer Technologie den Weg zu alten Tugenden zurückgefunden, wenn man es so ausdrücken möchte.

basix
2022-11-09, 13:50:10
Und klar, heute ist das alles viel komplexer und generischer umgesetzt. Es ist aber nicht so als wäre der ganze neue Kram hier was total revolutionär neues. Man hat nur mit neuer Technologie den Weg zu alten Tugenden zurückgefunden, wenn man es so ausdrücken möchte.

Man hat sicher schon früher gestreamed. Die Speichermenge war zwar knapp, doch es ging steil bergauf aufgrund Moore's Law. Heute haben wir eine ganz andere Situation: Speicher ist zwar viel da, doch er wird relativ ineffizient genutzt und Speicher hat bei Kosten/Gigabyte ein Plateau erreicht und wird auch in Zukunft nur noch langsam sinken.

Mit DirectStorage, Sample Feedback Streaming, Nanite usw. löst man daher ein grosses Problem: Man geht effizienter mit Speichermenge um und benötigt für das selbe Ergebnis deutlich weniger VRAM. Im besten Fall können die momentan 24 GByte VRAM auf den grössten Karten nun für die nächsten 10 Jahre und bis zu 8K Auflösung genug sein. Gut gegen weiter steigende Preise und gut für unseren Geldbeutel. Das "revolutionäre" am ganzen ist, dass man diese Optimierungen auf dem gesamten Stack durchführt: Streaming, Kompression, nur selektives Nachladen, etc. und das in ein verallgemeinertes Framework für Jedermanns Nutzung packt.

Ganon
2022-11-09, 15:47:14
Mit DirectStorage, Sample Feedback Streaming, Nanite usw. löst man daher ein grosses Problem: Man geht effizienter mit Speichermenge um und benötigt für das selbe Ergebnis deutlich weniger VRAM.

Mit anderen Worten: Speicher ist heute wieder knapp (XBOX Series S) und man braucht Lösungen :D Und klar, habe ja auch geschrieben, dass das heute alles generischer gelöst ist als damals in Hardware.

Aber am Ende nimmt man all den Aufwand auf sich weil man muss und nicht unbedingt weil man kann. Hätte die XSX oder PS5 64 oder 128GB RAM bekommen, dann würde niemand nach einem x GB/s fetten SSD Streaming Cache fragen. Ich gehe hier halt nur nicht mit dem Punkt mit, dass das alles so revolutionär ist. Das ist mMn alles Kram, den man in den 80/90ern eben schon getan hat, aus genau den gleichen Gründen. Man hat sie nur in allem Luxus auf dem Weg zu heute wieder verworfen und 20-30 Jahre später fängt man aus genau den gleichen Gründen wieder an es ähnlich zu tun. Dass sich da eine handvoll Technologien weiterentwickelt haben, wie eben komplexere/effizientere Kompressionsalgorithmen, ist ja klar.

aufkrawall
2022-11-09, 15:59:05
Die Realität ist, dass viele Spiele einen begrenzten VRAM-Pool haben, der oft bei einem Bruchteil der verfügbaren Menge liegt.
In Fortnite hat Epic jetzt das Streaming deutlich verbessert. Bei Wechseln zu Spielern auf anderen Teilen der Map im Spectator-Mode knallt aber die CPU-Last nun kurz auf 100% hoch (immerhin gescheites MT mit D3D12). Bei gleicher VRAM-Belegung sollte es mit GPU-Decompression weniger CPU-Last, sichtbares Nachladen und schlechtere Frame Times geben. Dass man auch ohne Direct Storage massive Verbesserungen erreichen könnte, etwa durch bessere VRAM-Ausnutzung, ist schön und gut, wird aber in der Praxis oft schlicht nicht passieren.

Andi Y
2023-04-19, 17:51:21
DirectStorage 1.2

https://www.deskmodder.de/blog/2023/04/19/directstorage-1-2-wurde-veroeffentlicht/
https://devblogs.microsoft.com/directx/directstorage-api-downloads/
https://devblogs.microsoft.com/directx/directstorage-1-2-available-now/

basix
2023-04-19, 18:50:11
DirectStorage 1.2

https://www.deskmodder.de/blog/2023/04/19/directstorage-1-2-wurde-veroeffentlicht/
https://devblogs.microsoft.com/directx/directstorage-api-downloads/
https://devblogs.microsoft.com/directx/directstorage-1-2-available-now/

Update im Benchmark-Thread:
https://www.forum-3dcenter.org/vbulletin/showthread.php?p=13283252#post13283252

crux2005
2023-04-27, 03:32:17
Sollte DirectStorage und Sampler Feedback nicht den 6GB VRAM Karten ein neues Leben schenken? :D

Jetzt, knapp 3 Jahre später, haben wir Grafikkarten mit der doppelten VRAM Menge von NV im Midrange aber eigentlich keine Spiele die diese Features (DS, SF) benutzen. Etwas läuft massivst schief in diesem Bereich.

dargo
2023-04-27, 08:26:15
Sollte DirectStorage und Sampler Feedback nicht den 6GB VRAM Karten ein neues Leben schenken? :D

Das war nur ein feuchter Traum von Dampf. ;)

gnomi
2023-04-27, 09:00:08
DX 12 Support hat ja auch viele, viele Jahre gebraucht.
Wird mit Direct Storage ähnlich.
Finde, mit der UE kann man das immer prima verfolgen.
Es dauert sehr lange, bis neue, bessere Versionen benutzt werden.
Vieles erscheint mit alten Build Versionen oder gar der vorletzten Generation und DX11 Fokus.

Lurtz
2023-04-27, 09:23:39
Das war nur ein feuchter Traum von Dampf. ;)
Eben, so funktioniert das am PC nicht. Und wenn doch würden alle ohne Direct Storage Review bomben wieso sie nicht berücksichtigt werden, obwohl sie doch die Mehrheit bei Steam stellen.

Platos
2023-04-27, 11:19:33
Warum sollte das so nicht funktionieren? Der Speicherverbrauch müsste massiv sinken, wenn man das Spiel wirklich von Grundauf damit und vor allem dafür aufbaut. Vorausgesetzt ist natürlich bei gleicher Grafik. Man kann aber auch einfach die Grafik erhöhen, das wird dann wohl eher so laufen.

Gast
2023-04-27, 13:12:42
Sollte DirectStorage und Sampler Feedback nicht den 6GB VRAM Karten ein neues Leben schenken? :D



Ganz im Gegenteil, in seiner "Endfassung" mit Dekompression auf der Grafikkarte wird der VRAM-Bedarf sogar steigen.

dargo
2023-04-27, 13:21:51
Warum sollte das so nicht funktionieren?
Weil niemand hier als Laie den Aufwand für zwei separate Spielversionen einschätzen kann. Und wenn der Aufwand für sowas zu groß ist lässt man es bleiben bis entsprechende Hardware im Bereich PC-Gaming so gut verbreitet ist, dass man nur noch eine Version mit DS entwickelt.

Dampf
2023-04-27, 13:59:23
Das war nur ein feuchter Traum von Dampf. ;)

Forza Motorsport wird es nutzen!

Gaaanz sicher!

:D

HOT
2023-04-27, 14:21:47
Warum sollte das so nicht funktionieren? Der Speicherverbrauch müsste massiv sinken, wenn man das Spiel wirklich von Grundauf damit und vor allem dafür aufbaut. Vorausgesetzt ist natürlich bei gleicher Grafik. Man kann aber auch einfach die Grafik erhöhen, das wird dann wohl eher so laufen.

Das ist so ein Märchen, was sich schon seit Anfang des 3D-Zeithalters hält. Viele Spiele sind durchaus gut optimiert, aber optimal sind sie natürlich in den seltensten Fällen (Doom?). Das geht auch gar nicht, weil Optimierung immer eine Kostenfrage ist und wie die Bereitschaft aussieht auch faule Kompromisse einzugehen. Eine Engine von Grund auf neu zu entwickeln ist zudem kein Vorteil, sondern ein irrer Aufwand für Nüsse u.U.

Platos
2023-04-27, 14:28:13
Ganz im Gegenteil, in seiner "Endfassung" mit Dekompression auf der Grafikkarte wird der VRAM-Bedarf sogar steigen.

Nein, der einzige Sinn hinter der ganzen Technologie ist ja gerade, den Speicherbedarf zu senken (bei gleicher Grafikqualität). Sowohl Grafikspeicher als auch Systemspeicher (und natürlich, die CPU dadurch zu entlasten, um höhere Streamingbandbreiten zu ermöglichen). Durch die SSD Geschwindigkeit musst du nicht die halbe Spielewelt vorladen und somit sinkt der Speicherbedarf. Natürlich nur, wenn die Grafikqualität gleich bleibt.

Dekomprimiert wird immer, egal woher die Daten kommen. Der Unterschied ist nur, dass hier über die GPU dekomprimiert wird, anstatt über die CPU.

Weil niemand hier als Laie den Aufwand für zwei separate Spielversionen einschätzen kann. Und wenn der Aufwand für sowas zu groß ist lässt man es bleiben bis entsprechende Hardware im Bereich PC-Gaming so gut verbreitet ist, dass man nur noch eine Version mit DS entwickelt.

Ja eben, ich sage ja, wenn es nur dafür entwickelt wird, also nur eine Version gibt. Natürlich setzt das eine SSD voraus. Es gibt auch Systemvoraussetzungen, die RTX 3060 sind. Da ist ne SSD also wesentlich die geringere Voraussetzung.

Das ist so ein Märchen, was sich schon seit Anfang des 3D-Zeithalters hält. Viele Spiele sind durchaus gut optimiert, aber optimal sind sie natürlich in den seltensten Fällen (Doom?). Das geht auch gar nicht, weil Optimierung immer eine Kostenfrage ist und wie die Bereitschaft aussieht auch faule Kompromisse einzugehen. Eine Engine von Grund auf neu zu entwickeln ist zudem kein Vorteil, sondern ein irrer Aufwand für Nüsse u.U.

Es gibt also schon seit Anfang des 3D Zeitalter das Märchen von niedrigerem Speicherbedarf durch Direct Storage ?? Wäre mir neu ;)

Troyan
2023-04-27, 14:31:33
DirectStorage reduziert nicht den Verbrauch, sondern ermöglicht, dass man direkt die (un)kompromierten Daten ohne Umwege in den VRAM schreiben kann.

SFS und Co können dagegen den Verbrauch reduzieren, da nur notwendige Bestandteile geladen werden.

Tesseract
2023-04-27, 15:15:13
DirectStorage reduziert nicht den Verbrauch, sondern ermöglicht, dass man direkt die (un)kompromierten Daten ohne Umwege in den VRAM schreiben kann.

was indirekt den verbrauch senken kann. speichermanagement ist immer ein kompromiss aus daten im ram halten was nachladen vermeidet aber mehr platz braucht und daten aggressiver rausschmeißen was den platzverbrauch reduziert aber mehr nachladen erfordert. die höhere bandbreite und größere flexibilität von DS ermöglicht ein viel aggressiveres LoD und damit weniver speicherverbrauch. dafür muss das spiel natürlich von grund auf dafür designt bzw. angepasst sein.

Platos
2023-04-27, 15:31:45
was indirekt den verbrauch senken kann. speichermanagement ist immer ein kompromiss aus daten im ram halten was nachladen vermeidet aber mehr platz braucht und daten aggressiver rausschmeißen was den platzverbrauch reduziert aber mehr nachladen erfordert. die höhere bandbreite und größere flexibilität von DS ermöglicht ein viel aggressiveres LoD und damit weniver speicherverbrauch. dafür muss das spiel natürlich von grund auf dafür designt bzw. angepasst sein.

Genau das meine ich.

Genau das ist ja der Grund, warum der Speicherbedarf sinkt. Man muss weniger vorladen/vorhalten. Da das ganze direkt von der SSD kommt, wird so nicht nur der Speicherbedarf der Graka gesenkt, sondern auch des Systemram.

Natürlich muss das Spiel von Grund auf dafür ausgelegt sein. Das ist ja irgendwie klar.

Das das am PC wieder mal nicht umgesetzt wird, ist klar. So viel dazu, die Konsolen bremsen die Industrie aus. Von wegen, es ist schon lange der PC, die ausbremst, weil es so massenhaft ultra-Lowend gibt.

Troyan
2023-04-27, 15:50:38
was indirekt den verbrauch senken kann. speichermanagement ist immer ein kompromiss aus daten im ram halten was nachladen vermeidet aber mehr platz braucht und daten aggressiver rausschmeißen was den platzverbrauch reduziert aber mehr nachladen erfordert. die höhere bandbreite und größere flexibilität von DS ermöglicht ein viel aggressiveres LoD und damit weniver speicherverbrauch. dafür muss das spiel natürlich von grund auf dafür designt bzw. angepasst sein.

Das geht heute doch schon mit Systemspeicher. TLoU nutzt diesen, wenn der VRAM kleiner ist als das Spiel erwartet.

Tesseract
2023-04-27, 16:04:59
Das geht heute doch schon mit Systemspeicher. TLoU nutzt diesen, wenn der VRAM kleiner ist als das Spiel erwartet.

TLoU entpackt soweit ich weiß einfach oodle auf der CPU in den RAM, also "klassisches" streaming mit entsprechend großem overhead. gehen tut vieles wenn overhead und performance egal sind, DS ist aber explizit ein performance- und overheadfeature.

Gast
2023-04-27, 20:57:28
was indirekt den verbrauch senken kann.

Nein es erhöht den Verbrauch, wenn die GPU das dekomprimieren übernimmt heißt es dass sowohl komprimierte als auch dekomprimierte Daten im VRAM liegen müssen, wodurch sich der Gesamtverbrauch erhöht.

basix
2023-04-27, 23:31:52
What? :freak:

Man kann Speicher auch wieder freigeben, sobald die Daten dekomprimiert sind. Und das innerhalb von Mikrosekunden ;)
Beste Performance wird bei HDDs anscheinend mit 512kB Blocks erzielt. Bei NVMe sogar bei 64kB. Sobald dekomprimiert, kann man den Speicher wieder freiräumen. Grösser als 512kB macht nur Sinn um potentielle Seek-Times auf HDDs zu veringern, mehr nicht. Nur wird keiner mit Verstand moderne Spiele auf einer mechanischen HDD installieren.

Und hier aus der DirectStorage Dokumentation:
The original advice for a rotational disk was to read in at least 128 KiB blocks. The performance continues to increase with larger block sizes. 512 KiB-sized blocks achieved the best performance.

The lack of moving parts on the NVMe creates a much lower threshold. The read performance has a large jump starting with 32 KiB reads and starts to top out with 64 KiB. Reading larger than this doesn't increase performance. This means that less effort needs to be made to merge data into larger blocks in the package for optimal performance.

Above 512KiB, if decompression is used, prefer smaller but more requests in parallel, over a single huge request. A single huge request will force the decompression to be serialized, while multiple concurrent requests allows multiple decompression hardware units to work in parallel and achieve full throughput.

In the October 2022 release of the Microsoft Game Development Kit (GDK) the maximum single request size has been increased from 32MiB as destination to 1GiB for combined source + destination memory usage. It is provided to ease porting from other storage APIs that allow large read sizes. But the above size recommendation for achieving maximum throughput still remains the same, as large requests don't allow multiple decompression hardware units to work in parallel.
https://learn.microsoft.com/en-us/gaming/gdk/_content/gc/system/overviews/directstorage/directstorage-overview

][immy
2023-04-28, 01:24:39
Nein es erhöht den Verbrauch, wenn die GPU das dekomprimieren übernimmt heißt es dass sowohl komprimierte als auch dekomprimierte Daten im VRAM liegen müssen, wodurch sich der Gesamtverbrauch erhöht.
aber nur kurzfristig, da die komprimierten Daten theoretisch länger gecached werden könnten, als die dekomprimierten Daten. Wenn also richtig angewendet, kann der "Cache" eine deutliche Entlastung für den Speicher bedeuten.

Ich frage mich aber immer noch, was denn aus der Zeit geworden ist, wo auch der RAM als indirekter Grafikspeicher genutzt wird, wenn dieser voll ist. So etwas wie in Hogwarts Legacy und er RTX 3070 sollte eigentlich nicht vorkommen können, weil die Daten dann zwar "langsamer" aus dem Hauptspeicher gestreamt werden, aber sie müssten kommen, es sei denn dort werden die Daten nicht mehr aufbewahrt.
AMD hat so was ja noch mal extra damals für Vega gebracht, aber scheinbar wurde das nie weiter verfolgt, obwohl das eigentlich schon bei AGP-Karten ging. Ist zwar nicht flott, sollte aber nur zu vertretbaren Framerateneinbrüchen führen (da optimalerweise nur daten aus dem "Cache" gezogen werden und dann ein paar ms später wieder da sind. Aber das komplette Fehlen von Texturen sollte heute einfach nicht mehr passieren können (aber naja, was die Engine am Ende damit macht ist dann eine komplett andere Frage).

basix
2023-04-28, 07:50:42
Ja, frage mich auch wieso HBCC bei AMD nicht zu Standard wurde. Bei spezifisch Texturen gäbe es aber mittlerweile DX12U Sampler Feedback Streaming, was das Textur-Streaming massiv verbessern sollte. Und dann gibt es halt auch einfach schlecht umgesetzte Software. Das letzte Update von TLoU zeigt wieder mal, dass man mit besserer SW mehr gewinnt als mit besserer HW: https://www.computerbase.de/2023-03/the-last-of-us-part-i-benchmark-test/#update-2023-04-27T11:04

Gast
2023-04-28, 12:05:56
Man kann Speicher auch wieder freigeben, sobald die Daten dekomprimiert sind. Und das innerhalb von Mikrosekunden ;)
Beste Performance wird bei HDDs anscheinend mit 512kB Blocks erzielt. Bei NVMe sogar bei 64kB. Sobald dekomprimiert, kann man den Speicher wieder freiräumen. Grösser als 512kB macht nur Sinn um potentielle Seek-Times auf HDDs zu veringern, mehr nicht. Nur wird keiner mit Verstand moderne Spiele auf einer mechanischen HDD installieren.



Nur weil du blocks von 64-512 KB liest heißt das nicht, dass du so wenig Speicher brauchst.
GPUs sind deshalb schnell weil sie enorm parallelisiert sind, du brauchst also unzählige Blöcke die parallel in den VRAM geladen und dekomprimiert werden.
Und deshalb bringen größere Blöcke auch keine Vorteile mehr, größere Blöcke würden immer noch effizienter vom Storage geladen (auch von einer SSD), aber die verringerte Parallelisierung in der GPU würde insgesamt mehr kosten als das effizientere auslesen vom Storage bringen würde.

Eine GPU wäre nicht schneller als eine CPU einen einzelnen Block zu dekomprimieren, eine GPU hat allerdings 1000e "Kerne" anstatt nur 1 oder 2 Hände voll, und wenn die alle gleichzeitig was dekomprimieren sind sie natürlich enorm viel schneller. Das setzt aber auch voraus dass diese mit Daten gefüttert werden können, und das geht nur wenn diese im schnellen VRAM liegen.

Aber selbst wenn es immer nur 1 Block seriell wäre, wäre es immer noch eine zwar vernachlässigbare Steigerung des VRAM-Bedarfs und keine Verringerung.

Gast
2023-04-28, 12:12:36
[immy;13292719']aber nur kurzfristig, da die komprimierten Daten theoretisch länger gecached werden könnten, als die dekomprimierten Daten.

Was den VRAM-Bedarf nochmals erhöhen würde und damit kontraproduktiv ist.

Damit wäre:
effecitve VRAM = Ges. VRAM - komprimierte Daten im VRAM

Komprimierte Daten sind erstmal nicht zum rendering nutzbar, dafür muss man sie erst dekomprimieren, und damit man das kann braucht es freien Platz im VRAM in welchen man diese schreiben kann.
Gleichzeitig klaut das dekomprimieren Energie und Leistung der GPU, die nicht zum rendering und damit für bessere Frameraten zur Verfügung steht. Es ist also sinnvoll die Anzahl der notwendigen Dekomprimierungsschritte möglichst weit zu verringern, anstatt tonnenweise komprimierte Daten im VRAM zu lagern und immer wieder zu dekomprimieren.

Gast
2023-04-28, 12:15:40
[immy;13292719']
Ich frage mich aber immer noch, was denn aus der Zeit geworden ist, wo auch der RAM als indirekter Grafikspeicher genutzt wird, wenn dieser voll ist.

Die Zeit hat es nie gegeben.
Seit AGP war es zwar prinzipiell möglich Daten aus dem Hauptspeicher direkt zum rendern zu verwenden. Praktisch war das aber immer zu langsam, und es wurde mit der Zeit immer unmöglicher, zur Zeit der Einführung von AGP waren die Geschwindigkeiten von Hauptspeicher und VRAM noch wesentlich näher beinander.

basix
2023-04-28, 16:19:06
Nur weil du blocks von 64-512 KB liest heißt das nicht, dass du so wenig Speicher brauchst.
GPUs sind deshalb schnell weil sie enorm parallelisiert sind, du brauchst also unzählige Blöcke die parallel in den VRAM geladen und dekomprimiert werden.
Und deshalb bringen größere Blöcke auch keine Vorteile mehr, größere Blöcke würden immer noch effizienter vom Storage geladen (auch von einer SSD), aber die verringerte Parallelisierung in der GPU würde insgesamt mehr kosten als das effizientere auslesen vom Storage bringen würde.

Eine GPU wäre nicht schneller als eine CPU einen einzelnen Block zu dekomprimieren, eine GPU hat allerdings 1000e "Kerne" anstatt nur 1 oder 2 Hände voll, und wenn die alle gleichzeitig was dekomprimieren sind sie natürlich enorm viel schneller. Das setzt aber auch voraus dass diese mit Daten gefüttert werden können, und das geht nur wenn diese im schnellen VRAM liegen.
Prinzipiell ja, eine GPU benötigt Parallelität. Nur von wie vielen Blöcken reden wier hier? Selbst 256x 64k Blöcke sind gerade mal 16 MByte gross. Wäre vernachlässigbar geringer Overhead für das Buffern der Daten.


Aber selbst wenn es immer nur 1 Block seriell wäre, wäre es immer noch eine zwar vernachlässigbare Steigerung des VRAM-Bedarfs und keine Verringerung.

Heute muss man dekomprimierte Daten vom System-RAM in den VRAM transferieren. PCIe x16 gibt hier die maximale Bandbreite vor. Sind die Daten komprimiert, kann man 2-4x so viele Daten streamen. Und das ist der Grund, wieso man im Endeffekt die VRAM-Allocation reduzieren kann.

Zudem stimmt der Punkt von ][immy ebenfalls. Anstatt komprimierte Daten aus dem VRAM zu werfen, könnte man "nur" das Workingset on-the-fly dekomprimieren und den ganzen Rest komprimier lassen. Dazu müssten allerdings zwei Dinge erfüllt sein: Workingset darf nicht zu gross sein und die Dekomprimierungsleistung muss enorm hoch sein. Letztere wird sicher sehr hoch sein, da die Daten bereits im VRA M liegen

basix
2023-04-28, 16:20:50
Nur weil du blocks von 64-512 KB liest heißt das nicht, dass du so wenig Speicher brauchst.
GPUs sind deshalb schnell weil sie enorm parallelisiert sind, du brauchst also unzählige Blöcke die parallel in den VRAM geladen und dekomprimiert werden.
Und deshalb bringen größere Blöcke auch keine Vorteile mehr, größere Blöcke würden immer noch effizienter vom Storage geladen (auch von einer SSD), aber die verringerte Parallelisierung in der GPU würde insgesamt mehr kosten als das effizientere auslesen vom Storage bringen würde.

Eine GPU wäre nicht schneller als eine CPU einen einzelnen Block zu dekomprimieren, eine GPU hat allerdings 1000e "Kerne" anstatt nur 1 oder 2 Hände voll, und wenn die alle gleichzeitig was dekomprimieren sind sie natürlich enorm viel schneller. Das setzt aber auch voraus dass diese mit Daten gefüttert werden können, und das geht nur wenn diese im schnellen VRAM liegen.
Prinzipiell ja, eine GPU benötigt Parallelität. Nur von wie vielen Blöcken reden wier hier? Selbst 256x 64k Blöcke sind gerade mal 16 MByte gross. Wäre vernachlässigbar geringer Overhead für das Buffern der Daten.


Aber selbst wenn es immer nur 1 Block seriell wäre, wäre es immer noch eine zwar vernachlässigbare Steigerung des VRAM-Bedarfs und keine Verringerung.

Heute muss man dekomprimierte Daten vom System-RAM in den VRAM transferieren. PCIe x16 gibt hier die maximale Bandbreite vor. Sind die Daten komprimiert, kann man 2-4x so viele Daten streamen. Und das ist der Grund, wieso man im Endeffekt die VRAM-Allocation reduzieren kann.

Zudem stimmt der Punkt von ][immy ebenfalls. Anstatt komprimierte Daten aus dem VRAM zu werfen, könnte man "nur" das Workingset on-the-fly dekomprimieren und den ganzen Rest komprimiert lassen. Dazu müssten allerdings zwei Dinge erfüllt sein: Workingset darf nicht zu gross sein (im Idealfall passt es in z.B. den Infinity Cache) und die Dekomprimierungsleistung muss enorm hoch sein. Letztere wird sicher sehr hoch sein, da die Daten bereits im VRAM liegen. Und im besten Fall ergibt dich noch ein Multiplikator der Speicherbandbreite, da man komprimierte Daten aus dem VRAM lädt (und dann im grossen L2$ oder Infinity Cache vorhält).

Tesseract
2023-04-28, 17:48:57
Nein es erhöht den Verbrauch, wenn die GPU das dekomprimieren übernimmt heißt es dass sowohl komprimierte als auch dekomprimierte Daten im VRAM liegen müssen, wodurch sich der Gesamtverbrauch erhöht.

es müssen keine komprimierten und dekomprimierten daten gleichzeitig im VRAM liegen, die daten die grade entpackt werden brauchen einen buffer aber sobald das workset abgearbeitet/entpackt ist können die komprimierten daten überschrieben werden. für diesen buffer reichen wohl ein paar wenige (statische) MB um PCIe voll zu saturaten. bei einem aggressiveren LoD hingegen reden wir von einer prozentuellen einsparung aller daten der szene und dieser prozentsatz kann potenziell hoch sein.

Gast
2023-04-28, 18:33:44
Prinzipiell ja, eine GPU benötigt Parallelität. Nur von wie vielen Blöcken reden wier hier? Selbst 256x 64k Blöcke sind gerade mal 16 MByte gross. Wäre vernachlässigbar geringer Overhead für das Buffern der Daten.

Um eine GPU auszulasten braucht es tausende parallele Threads

Gast
2023-04-28, 18:44:21
es müssen keine komprimierten und dekomprimierten daten gleichzeitig im VRAM liegen,

Das was du gerade entpackst muss kurzzeitig gleichzeitig in gepackter und entpackter Form im VRAM liegen. Erst wenn das entpacken fertig ist, kann der gepackte Teil freigegeben werden.

Und ja, dieser Bedarf ist sicher nicht riesig, ändert aber nichts daran, dass es wenn auch ein kleiner Mehrbedarf ist, und in keinem Fall eine Reduktion des benötigten VRAMs.

Weiters verringert sich der Bandbreitenbedarf auf PCIe-Seite, der Bandbreitenbedarf für den VRAM steigt allerdings, da mindestens 1 Read und 1 Write dazukommt.

Tesseract
2023-04-28, 19:28:48
Um eine GPU auszulasten braucht es tausende parallele Threads

du kannst damit keine GPU auslasten, der flaschenhals ist NVMe. um eine GPU auszulasten müsstest du die komprimierten daten einmal in den VRAM laden und dann im loop entpacken weil IO da nicht mithalten kann. diesen fall gibt es in der realität nicht. in der realität werden die daten entpackt, dann hunderte wenn nicht zigtausende male in der eigentlichen renderpipeline verwendet und irgendwann rausgeworfen. das entpacken nimmt im spielfluß einen bruchteil der GPU in anspruch.

Und ja, dieser Bedarf ist sicher nicht riesig, ändert aber nichts daran, dass es wenn auch ein kleiner Mehrbedarf ist, und in keinem Fall eine Reduktion des benötigten VRAMs.

der buffer ist in der bulkloaddemo die dafür gemacht ist IO bis zum anschlag auszulasten kleiner als 20MB. die einsparungen auf der LoD-seite können theoretisch in die GB gehen.

][immy
2023-04-29, 02:11:36
Aktuell sieht es es aber mehrere Dinge die zu schlechten Ergebnissen führen und mit immer größeren Datenmengen nicht besser werden. Die Daten sind immernoch in größeren Paketen verpackt. Wenn also eigentlich nur eine Textur benötigt wird, wird auch weiterhin ganz viel mit dem Paket mitgeladen, von der CPU entpackt und dann in der vram gelegt. Die ganzen schönen neuen Techniken kommen einfach noch immer nicht Mal ansatzweise zum Einsatz.
Schon normale SSDs würden enorm von kleinen Paketen mit nur wenig Ressourcen darin deutlich besser fahren. Da die Spielgrößen jedoch explodieren, die Daten auch weiterhin für HDDs optimiert geliefert werden und nicht mit vielen winzigen Paketen, hat der SSD Faktor leider nicht die entlastende wirkung die möglich wäre (auch ohne direct storage).
Optimalerweise wären sogar große Texturen zerlegt in kleine Häppchen so das auch hier nur die benötigten Daten geladen werden müssten.
Das würde sogar extrem entlasten wenn weiterhin die CPU das entpacken übernimmt, da einfach deutlich weniger Daten entpackt und übertragen werden müssten.
Da dann nur noch genutzte Daten in den Speicher kommen (+ noch ein wenig mehr um ein wenig vor zu laden) würde dies dann auch 8gb vram nicht mehr zum limitierenden Faktor werden lassen.

All die Technologie dafür ist inzwischen raus und auch Recht breit verfügbar, aber es wird halt nach wie vor nicht genutzt.
Auch das man noch potentiel verfügbaren Hauptspeicher einfach als Puffer nutzt (die einfachste Art den Speicher irgendwie zur Entlastung zu nutzen) wird meist nicht genutzt. Früher lag das am 2 bzw 4 GB Limit von 32 nur Systemen, aber das ist lange her, trotzdem nutzt kaum ein Spiel der Hauptspeicher als Puffer und dann bleiben häufig 16 von 32 GB einfach ungenutzt.

Troyan
2023-04-29, 10:37:55
Also Spider-Man rennt fantastisch auf dem PC und dort sieht man kaum Popins. Dagegen ist Jedi Survivor mit 16GB VRAM Verbrauch ein Witz, alles poppt auf und das auch zwei Meter vor der Figur.

Es liegt nicht nur dadran, dass man die neuen Tools nicht verwendet. Man macht sich null Mühe überhaupt irgendwas anzupassen und zu optimieren. Nixxes hat ein eigenes VRAM Management für den PC geschrieben, Naughty Dogs hat einfach das Sony-Modell für den PC übernommen...

dildo4u
2023-04-29, 10:52:44
Der Vergleich von Cross-Gen Games mit PS5 Exklusives macht kein Sinn.
Spiderman 2 wird tonnen mehr Asset streamen, da man von Jaguar auf Zen2 geht.
Beim Remaster/Miles hat man die zusätzliche Performance in höhere FPS Raten investiert.

https://youtu.be/erlrAX7sxRQ?t=194

Troyan
2023-04-29, 11:19:28
Der Vergleich von Cross-Gen Games mit PS5 Exklusives macht kein Sinn.
Spiderman 2 wird tonnen mehr Asset streamen, da man von Jaguar auf Zen2 geht.
Beim Remaster/Miles hat man die zusätzliche Performance in höhere FPS Raten investiert.

https://youtu.be/erlrAX7sxRQ?t=194

Hä? In Spider-Man schwingt man sich im Affenspeed durch Manhatten und kann in jede Richtung sich wenden. Das Spiel muss im Vorfeld schon Assets laden, berechnen und dann ASAP darstellen.

Und jetzt spiel mal Jedi Survivor. Da laden sich Schatten, Geometrie, Texturen im Schneckentempo vor einem ins Bild.

Und Jedi Survivor ist ebenfalls ein "Cross-Gen" Spiel. Läuft ja auf einer Series S und die hat weniger Rechenleistung als eine Xbox One X.

dildo4u
2023-04-29, 11:38:33
Das streamen geht auf die CPU was für ein Merkwürdiges Argument mit der Serie S.

basix
2023-04-29, 11:52:16
Für Asset Streaming gibt es doch auch bei der Xbox einen Accelerator, oder nicht? Glaube nicht, dass das auf der CPU läuft

dildo4u
2023-04-29, 12:04:28
Kein Plan PS5 ist oft schneller im CPU Limit vs Serie X, was das ist ist schwer zu sagen.
Kann DX12 vs Sonys API sein oder die CPU wird durch Hardware beim streamen entlastet.

MNEjdIq-jTk

Troyan
2023-04-29, 12:16:00
Das streamen geht auf die CPU was für ein Merkwürdiges Argument mit der Serie S.

Nochmal: Spider-Man und Miles Morales laufen absolut stabil am Boden, wenn man dort mit Raytracing rumläuft und sich rumschwingt. Da gibt es kaum Popins, Texturnachladeprobleme, fehlende Schatten etc.

Das ist kein vergleich zu Jedi Survivor, wo es trotz 16GB VRAM die falschen Daten im Speicher hat und somit jedesmal die richtigen Assets nachladen muss. Das komplette VRAM-Management in Jedi Survivor ist kaputt.

][immy
2023-04-29, 13:11:09
Für Asset Streaming gibt es doch auch bei der Xbox einen Accelerator, oder nicht? Glaube nicht, dass das auf der CPU läuft

Ich meine Mal vor kurzem gelesen zu haben das es bislang so gut wie kein Spiel gibt, das auf der Xbox die Hardware zur Dekompression nutzt. Noch geht quasi alles über die CPU.
Hintergrund ist wohl die Kompatibilität zur alten gen und zum PC.
Bei der PS5 sollen es bisher auch nur wenige Titel sein, die die Hardware wirklich nutzen.

Gast
2023-04-30, 00:34:14
die einsparungen auf der LoD-seite können theoretisch in die GB gehen.

Einsparungen beim LOD = Qualitätsverlust, und die kannst du mit und ohne Direct Storage machen.

basix
2023-04-30, 12:04:34
Einsparungen beim LOD = Qualitätsverlust, und die kannst du mit und ohne Direct Storage machen.

Du hast seinen Punkt nicht verstanden....

Gleiches LOD = Gleiche Qualität = Mit DirectStorage geringere VRAM Auslastung = Einsparungen im GByte Bereich

Dass man mit Senken des LOD generell Einsparungen bei der VRAM-Belegung realisieren kann ist jetzt wohl keine Weisheit :freak:

dargo
2023-04-30, 12:31:34
Kein Plan PS5 ist oft schneller im CPU Limit vs Serie X, was das ist ist schwer zu sagen.
Kann DX12 vs Sonys API sein oder die CPU wird durch Hardware beim streamen entlastet.

Die Playstation API ist etwas effizienter. Zudem hat die PS5 volle 16GB als gemeinsamen Speicher, das summiert sich.

Gast
2023-04-30, 22:44:26
Gleiches LOD = Gleiche Qualität = Mit DirectStorage geringere VRAM Auslastung = Einsparungen im GByte Bereich



Das geht nicht. LOD Stufe X müssen immer die selben Assets im VRAM liegen, das kann man nicht irgendwie "magisch" ändern. Direct Storage macht nur das Laden in den VRAM effizienter/schneller.

Tesseract
2023-05-01, 02:00:33
der sinn vom schnelleren laden ist granulareres und direkteres streaming.
hier (https://www.youtube.com/watch?v=VDDbrfZucpQ&t=940s) ein beispiel mit texturen, das prinzip ist aber auch viel allgemeiner einsetzbar. DS existiert nicht um einen ladebalken schneller zu machen.

TheAntitheist
2023-05-01, 04:59:49
Die Playstation API ist etwas effizienter. Zudem hat die PS5 volle 16GB als gemeinsamen Speicher, das summiert sich.
Die PS5 hat einen Kraken-HW-decompression chip, wird wohl eher daran liegen

basix
2023-05-10, 20:03:41
der buffer ist in der bulkloaddemo die dafür gemacht ist IO bis zum anschlag auszulasten kleiner als 20MB. die einsparungen auf der LoD-seite können theoretisch in die GB gehen.

18.75 MiB in den meisten Fällen :)
https://www.forum-3dcenter.org/vbulletin/showthread.php?t=613025&page=6

dildo4u
2023-06-23, 11:44:06
Microsoft’s Latest Agility SDK Adds Work Graphs For Full GPU Autonomy, Wave Matrix & AV1 Support

https://wccftech.com/microsoft-agility-sdk-adds-work-graphs-for-full-gpu-autonomy-wave-matrix-av1-support/

DrFreaK666
2023-07-13, 19:24:39
Ratchet & Clank: Rift Apart will support DirectStorage with GPU Decompression
https://www.dsogaming.com/news/ratchet-clank-rift-apart-will-support-directstorage-with-gpu-decompression-and-ray-tracing-ambient-occlusion-on-pc/

Platos
2023-07-13, 20:58:35
Cool.

Komt eig. generell jedes Sony Exklusiv jetzt auf PC ?

Wäre ja gut eig.

Atma
2023-07-13, 22:29:52
Komt eig. generell jedes Sony Exklusiv jetzt auf PC ?
Könnte man meinen, ein großes Highlight lässt jedoch weiter auf sich warten: Demon's Souls

dildo4u
2023-07-14, 08:18:08
Cool.

Komt eig. generell jedes Sony Exklusiv jetzt auf PC ?

Wäre ja gut eig.
Nicht zwangsweise zu GT7 gibt es nix handfestes zu einer PC Version kann also je nach Game mehr als 2 Jahre dauern.
Nicht vergessen Sony nutzt oft Eigenentwicklung was die Engine angeht es ist also ein großer Aufwand die für verschiedene Hardware Kombination zu porten.
GT7 hat z.b Raytracing die Umsetzung würde also vermutlich DX12 oder Vulkan erfordern was Komplexität steigert.

Platos
2023-07-14, 14:10:33
Stimmt, aber bei anderen Spielen ist das ja auch nicht anders. Spiderman nutzt auch Raytracing und das gibts auch am PC. Genau so wie übrigens sehr viele PS5 Exklusives.

Aber: Es ist halt ein Unterschied (wenn ich jetzt so darüber nachdenke) ob ein Spiel ein Singleplayerspiel ist oder eben ein Onlinemodus hat. Denn dann muss man ja auch noch das supporten.

Gibts online-Spiele exklusives, die es auf den PC geschafft haben? Ich spiele halt nie online auf der Playsi, deswegen weiss ich gar nicht, was es da gibt.

dildo4u
2023-07-21, 19:05:28
o9Sf4H2rYM8

Platos
2023-08-17, 12:59:35
Wurde anscheinend hier noch nicht gepostet:

11VTtIwboe8

HDD ist selbstverständlicherweise unspielbar, aber auch bei einer Sata-SSD gibt es bei Riftjumps eklige Hänger. Alex' Wortwahl von "completly playable" finde ich seltsam, da Ratchet in dieser Szene ~2 Sekunden einfach so an Ort und stelle hängen bleibt, was für mich eig. ein "absolut nicht spielbar" wäre (habs mit der Stoppuhr versucht zu messen, ca. 2s in der Zeit, wo er hängen bleibt).

Also er sagt zwar,.es ist "completly playable", aber ich würde sagen, dass man sich bei DirectStorage Titeln keine Sata SSD antun sollte. Sonst riskiert man solche 2 Sekunden lange hänger.

Interessant ist, dass selbst mit einer PCI-E 4.0 7GB/s SSD der PC noch minimalst langsamer ist in solchen Szenen. Ist aber mehr ein theoretischer Vorteil, da das im Spiel vermutlich nicht auffällt und es scheint auch nicht an der SSD zu liegen. Der Flaschenhals wird vermutlich wo anders liegen.

aufkrawall
2023-08-17, 13:05:01
Finde diese Rift-Sprünge überhaupt nicht beeindruckend. Das sind entweder Warps in komplette Schlauchlevel, oder in den visuell deutlich abfallenden offeneren Leveln eher Sprünge über eine ~mittlere Distanz. Kein Wunder, dass das auch ohne DS noch anständig läuft. Mehr Content als Technik imho.

Raff
2023-11-22, 15:11:05
Passt hier wohl ganz gut rein - die Asus-Grafikkarte mit Onboard-M.2-Slot ist nun im Handel - und funktioniert erstaunlich gut: Bis zu 8 TByte auf der Grafikkarte: Asus Dual Geforce RTX 4060 Ti SSD OC Edition im Test (https://www.pcgameshardware.de/Geforce-RTX-4060-Ti-8GB-Grafikkarte-279648/Tests/Asus-Dual-Geforce-RTX-4060-Ti-SSD-OC-Edition-Test-Review-Benchmark-1434441/)

MfG
Raff

HOT
2023-11-22, 15:17:53
Für Nutzer von viel Storage kann das ne nette Idee werden, weil die 8x/8x-Config auf Mainboards immer mehr verschwindet. Das wär ja für ne 8x-Karte interessant, dann müssen die SSDs dann halt auf die Karte wandern.

Achill
2023-11-22, 17:32:07
Passt hier wohl ganz gut rein - die Asus-Grafikkarte mit Onboard-M.2-Slot ist nun im Handel - und funktioniert erstaunlich gut: Bis zu 8 TByte auf der Grafikkarte: Asus Dual Geforce RTX 4060 Ti SSD OC Edition im Test (https://www.pcgameshardware.de/Geforce-RTX-4060-Ti-8GB-Grafikkarte-279648/Tests/Asus-Dual-Geforce-RTX-4060-Ti-SSD-OC-Edition-Test-Review-Benchmark-1434441/)

MfG
Raff

Ich sehe im Desktop nur ein paar Anwendungsfälle, interessant ist es bei Laptops mit einer externen GPU. Gibt dort das Konzept auch schon: https://www.tomshardware.com/news/onexgpu-first-egpu-with-m2-storage

dildo4u
2024-03-12, 11:14:21
Microsoft releases Work Graphs API enabling advanced GPU-driven rendering

https://videocardz.com/newz/microsoft-releases-work-graphs-api-enabling-advanced-gpu-driven-rendering

Wake
2024-03-12, 16:22:08
Work Graphs API: First Look At Performance Of DirectX 12's Latest Feature
sE7Xuk5aTnE
Ab 1:20 wirds interessant was den möglichen Performanceunterschied angeht.


Portal mit RTX IO off und on:
NyqdFmRDU6g

dildo4u
2024-09-19, 21:57:17
DirectX Adopting SPIR-V as the Interchange Format of the Future

Today the Direct3D and HLSL teams are excited to share some insight into the next big step for GPU programmability. Once Shader Model 7 is released, DirectX 12 will accept shaders compiled to SPIR-V™. The HLSL team is committed to open development processes and collaborating with The Khronos® Group and LLVM Project. We’re sharing this information at the beginning of our multi-year development process so that we can be transparent about this transition from the start. We are working with the Khronos SPIR™ and Vulkan® working groups to ensure that this transition benefits the whole development ecosystem

https://devblogs.microsoft.com/directx/directx-adopting-spir-v/

Badesalz
2024-10-04, 15:25:59
Ab 1:20 wirds interessant was den möglichen Performanceunterschied angeht.Also wenn auf dem Bildschirm im Gegensatz zu davor und zu danach kaum was los ist?
Ist mir da irgendein Frame entgangen?

@dildo4u
Sie wollen diesen Markt mit einem gutem Ruf verlassen und sich in Würde nach und nach verabschieden :uup:

Troyan
2024-12-04, 14:31:54
3DMark hat jetzt einen DirectStorage-Test.

aufkrawall
2024-12-04, 14:35:41
Und was testet der? Bei GPU-DS muss dabei natürlich noch realistisches Rendering laufen, sonst weltfremd. Nützt nichts, wenn man tolle Peak-Werte hat und das Spiel dann trotzdem mies läuft, wie etwa Ratchet & Clank insbesondere auf Nvidia.

Troyan
2024-12-04, 14:49:17
Von der Steam-Seite:
https://www.forum-3dcenter.org/vbulletin/attachment.php?attachmentid=90427&stc=1&d=1733320144

Kostet 2,99€.

Mordekai2009
2025-01-11, 14:06:41
Neural Rendering in the DirectX API.
Cooperative Vector Support coming soon.

https://devblogs.microsoft.com/directx/enabling-neural-rendering-in-directx-cooperative-vector-support-coming-soon/

Troyan
2025-03-18, 20:30:02
Sampler Feedback in Half Life 2 RTX spart bis zu 4GB oder 40%: https://www.youtube.com/watch?v=NfgJJbtfjs8

Ex3cut3r
2025-03-18, 23:13:41
Sampler Feedback in Half Life 2 RTX spart bis zu 4GB oder 40%: https://www.youtube.com/watch?v=NfgJJbtfjs8

Nice! =)