DX12 Performance Vorschau: AMD und Nvidia stellen erste Preview-Treiber bereit

Locuza

Lötkolbengott/-göttin
DirectX_12_Banner-pcgh_b2article_artwork.png


Seit der Vorstellung von AMDs Mantle weht frischer Wind in der Welt der Grafikschnittstellen.
Unzählige Präsentationen und Praxisartikel haben sich mit der theoretischen und letztendlich praktischen Leistungsfähigkeit einer modernen Grafikschnittstelle befasst.

Mit der neusten Windows 10 Build (9926) ist DX12 in einer frühen Version erschienen.
Für einen Praxistest reicht das dank fehlender Treiber und Anwendungen leider nicht aus.
Das hat sich jedoch schnell geändert.

Dank den Preview-Treibern, welche von AMD und Nvidia bereitgestellt wurden (Catalyst 15.200 Beta und Geforce 349.56 Beta), war es in Kombination mit der DX12 fähigen Nitrous-Engine möglich für AnandTech den ersten Praxis-Artikel über neun Seiten zu erstellen. (Anmerkung: Diese Treiber sind bisher nicht öffentlich verfügbar.)
Auf AMDs Seite wurden drei Grafikkarten getestet von Bonaire, Hawaii bis zu Tonga.
Ältere Grafikkarten mussten ausgelassen werden, da mit GCN 1.0/ IP v6 noch einige Darstellungsfehler im Benchmark auftratten.

Nvidias Kandidaten bestehen aus Kepler, Maxwell Gen 1 und Maxwell Gen 2.
Auch bei Nvidia mussten ältere GPUs, die Fermi-Reihe, ausgelassen werden, hier existiert bisher noch kein Treiber-Support.


Und wie schlägt sich DX12 gegen DX11 und Mantle letztendlich? Dafür lasse ich das Bild für sich selber sprechen.

71450.png


Trotzt unfertiger Software, sind die Ergebnisse absolut überzeugend.
Während der Gewinn bei low-end GPUs groß ist, aber noch keine Offenbahrung darstellt (750Ti +23%) , ist dieser bei Performance Karten (680 +57%) und letztendlich High-End GPUs (980 +150%) eine Wucht.
Möchte man aber wirklich dramatische Werte sehen, zieht man die Ergebnise von AMD zu Rate:
260X +152%, 285 +251%, 290X +417%.

Da Star Swarm von Anfang an einen Mantle-Renderer besaß, hat hier AMD kaum in DX11-Optimierungen investiert, dafür stand Mantle bereit.
Mantle ist bei AMD dabei noch einen Tick schneller, als DX12.

Update:
AnandTech hat eine e-mail von Oxide-Games erhalten, die einen Grund dafür liefert, wieso der Mantle-Renderer bei AMD ein Tick schneller arbeitet, als DX12.
Aufgrund der extremen Anzahl an GPU-Auträgen, kann der Command-Processor der GPU, welche die Arbeit für die GPU verteilt, überlastet werden.
Um dem entgegen zu wirken wird zu Lasten der CPU optimiert, die CPU kombiniert ein paar Aufträge, die Anzahl dieser sinkt insgesamt und der Command-Processor hat weniger zu tun.
Das resultiert insgesamt in einer etwas höheren GPU-Performance.

Diese Optimierung, welche sich auch ausschalten lässt, führt zu 16% mehr Performance auf einer 290X

71462.png


Ein interessantes Hardware-Limit zeigt sich somit zum Vorschein, voerst wird es vermutlich keine praktische Relevanz haben, aber ein wichtiger Aspekt beim Design einer Engine und zukünftiger GPU-Hardware sein.


Viele weitere Skalierungstest, Stromverbrauchswerte und Informationen können aus dem Artikel entnommen werden:
AnandTech-DX12-Preview


Update 2 (13.02.2015)
:

AnandTech legt mit einem Nachtest noch einmal nach.
Getestet wurden dieses mal relativ leistungsschwache CPUs, namentlich A10-7800, A8-7600 und ein Intel Core i3 (genaues Modell wird allerdings nicht genannt).

71532.png


Dank DX12 besteht praktisch kein CPU-Limit mehr und die Prozessoren sind in diesem Szenario gleich stark.
Wurde unter DX11 noch eine Mehrperformance von ~68-90% erreicht, sind es unter DX12 praktisch gleiche Ergebnisse vorzufinden.
Das gilt allerdings nur für das extreme-setting, unter low-quality verschiebt sich die Last wieder Richtung CPU und Intels CPU kann wieder einen starken Vorsprung vorweisen:

71579.png


Nichtsdestotrotz wird der Abstand stark verkürzt.
Unter DX11 besteht noch ein Vorsprung von 84% für Intel, unter DX12 sind es dann "nur" noch 44%. (i3 vs. A8)

Den ganzen Artikel mit zusätzlichen CPU und iGPU-Werten gibt es unter folgenden Link:
AnandTech | Star Swarm, DirectX 12 AMD APU Performance Preview

Ausblick für Spiele:
Star-Swarm stellt natürlich ein extreme-case dar, solche Zuwächse sind nicht direkt in Games zu erwarten.
Der Ausblick fällt dennoch sehr positiv aus, schließlich ist die Software noch nicht ganz fertig, DX12 ist eine weitreichende Schnittstelle die alle IHVs vereint und sich sogar in der Xbox One findet.
Schließlich sollte mit dem Wegfall von immer mehr Cross-Gen Spielen ein immer höherer Anspruch bestehen und damit das Potential von einer modernen API zu profitieren.

Weitere Infos, Präsentationen über das Thema DX12 und auch die neuen Hardware-Features die damit einhergehen, kann man für die GDC 2015 erwarten.
Zahlreiche Sessions erwarten einen dort:

Advanced Visual Effects With DirectX 11 & 12: Welcome/Getting the Most Out of DirectX12
Speakers: Nicolas Thibieroz (AMD), David Oldcorn (AMD), Evan Hart (NVIDIA)

DirectX12 represents the start of a new era for graphics development. Programmers are now empowered to leverage GPU resources and exert a level of control so far unprecedented in standard graphics APIs. In this talk, AMD and NVIDIA will discuss the new programming model and features of the new API. This is an advanced tutorial, for developers familiar with graphics programming, on how to start developing efficient and effective D3D12 applications straight away, packed with useful tips and insights.

Advanced Visual Effects With DirectX 11 & 12: Visual Effects in Star Citizen
Speaker: Alistair Brown (Cloud Imperium)

A detailed look into the visual effects in development for the crowd funded open world space game Star Citizen and its single player military counterpart Squadron 42. This includes the rendering and lighting of volumetric gases for everything from smoke trails and massive explosions to gas-clouds several hundred miles across. Other rendering effects such as our ship damage system and shield rendering solution will also be presented.

Advanced Visual Effects With DirectX 11 & 12: Advancements in Tile-based Compute Rendering
Speaker: Gareth Thomas (AMD)

Tiled deferred rendering and Forward+ rendering are becoming increasingly popular as efficient ways to handle the ever increasing numbers of dynamic lights in games. This talk looks at some of the most recent improvements to this approach as well as exploring the idea of clustered rendering.

Advanced Visual Effects With DirectX 11 & 12: Sparse Fluid Simulation and Hybrid Ray-traced Shadows for DirectX 11 & 12
Speakers: Jon Story (NVIDIA), Alex Dunn (NVIDIA)

This session will cover two high end techniques that benefit from advanced GPU hardware features. High resolution fluid simulation in games has always been problematic, but with tiled resources it's possible to optimize for memory footprint, simulation cost and rendering efficiency. Conventional shadow mapping has its pros and cons, this hybrid technique combines the best of shadow mapping with ray-traced shadows using conservative rasterization.

DirectX 12: A New Meaning for Efficiency and Performance (Presented by AMD)
Speakers: Dave Oldcorn (AMD), Stephan Hodes (AMD)

Direct3D 12 adds key new rendering features such as multiple queues for asynchronous compute and DMA, and the ultra-performance API both eliminates performance bottlenecks and enables new techniques. AMD will talk about the key interactions between the new D3D12 capabilities and AMD hardware and how to get the best from both. This session will include live demos.

OIT to Volumetric Shadow Mapping, 101 Uses for Raster Ordered Views using DirectX 12 (Presented by Intel)
Speaker: Leigh Davies (Intel)

One of the new features of DirectX 12 is Raster Ordered Views. This adds Ordering back into Unordered Access Views removing race conditions within a pixel shader when multiple in flight pixels write to the same XY screen coordinates. This allows algorithms that previously required link lists of pixel data to be efficiently processed in bounded memory. The talk shows how everything from Order Independent Transparency to Volumetric shadow mapping and even post processing can benefit from using Raster Ordered Views to provide efficient and more importantly robust solutions suitable for real time games. The session uses a mixture of real world examples of where these algorithms have already been implemented in games and forward looking research to show some of the exciting possibilities that open up with this ability coming to DirectX.
 
Zuletzt bearbeitet:
Hab den Artikel auch gerade gelesen. Vielversprechend allemal. Hoffentlich wird DX12 schneller implementiert in neue Spiel als noch ältere DX Versionen. - Oder sogar rückwirkend? Wünschenswert wäre es bei einigen Titeln alle mal.

Edit: es sollte der Hinweis hinzugefügt werden bei allem Optimismus, dass Star Swarm ein Best-Case-Szenario darstellt, was schon damals auf Mantle im Vergleich zu DX 11 zutraff, ist auch nach wie vor für DX 12 gültig. Sprich DX12 werden bei weitem nicht über die API genau solche 30% Unterschiede produzieren. Zudem ist die Star Swarm Engine RNG und kann zwar über Mittelwerte den Unterschied abbilden, jedoch nicht mit vollständiger Korrektheit.
 
Zuletzt bearbeitet:
Wasn das fürn Benchmark vo die GTX980 einfach mal 1/3 schneller ist als die R9 290X? Sonst liegen die doch immer recht nah beinander
 
das sieht ja verdammt gut aus ,danke für diese Infos
da bin ich mal gespannt

nur warum liegt eigentlich die gtx 980 so viel weiter vorne als die r290x?
 
Schön zu sehn, dass DX12 anscheinend genauso schnell arbeitet wie Mantle.

Was die Performanceunterschiede angeht: Eventuell liegt es daran, dass die Engine den Geforce einfach besser liegt. Wahrschienlich liegts aber auch am Beta Status von DX12 und den dazugehörigen Treibern. Wenn irgendwann mal die finalen Versionen da sind kanns auch wieder anders aussehn. Also kein Grund jetzt über etwaige Überlegenheiten zu diskutieren.

edit: Den Treiber wirds wohl momentan nur direkt von Nvidia/AMD geben, erste Preview halt.
 
Für mich eher unbrauchbar.
Leistungssteigerung von teils 400% im best case? Das Diagramm könnte glatt von MS kommen.;)
Mich interessiert nachher nur wieviel Frames ich in Spiel x dazu gewinne.
 
Wasn das fürn Benchmark vo die GTX980 einfach mal 1/3 schneller ist als die R9 290X? Sonst liegen die doch immer recht nah beinander

das sieht ja verdammt gut aus ,danke für diese Infos
da bin ich mal gespannt

nur warum liegt eigentlich die gtx 980 so viel weiter vorne als die r290x?

Das liegt an der Engine - die ist darauf funktionalisiert worden ein spezifisches Szenario generieren. Und entsprechend skaliert die 980 da sehr gut, weil Maxwell in diesem Szenario wesentlich mehr Leistung generiert. Im Endeffekt sieht man hier ums mal genauer auszudrücken warum die 290/290X Karten Alteisen sind im Vergleich zu 970/980.

Wenn ihr AMD Karten sehen wollt die besser abschneidet wartet auf Testergebnisse unter DX12 der 380/390er Karten.
 
Das bescheinigt meiner GTX 980 ja eine rosige Zukunft, auch wenn ich sie wohl eh recht schnell wieder wechseln werde :ugly:

Aber man muss eben auch dazu sagen, dass Star Swarm nur ein Benchmark ist. Mit realen Spielen hat das wenig zu tun.
 
Das liegt an der Engine - die ist darauf funktionalisiert worden ein spezifisches Szenario generieren. Und entsprechend skaliert die 980 da sehr gut, weil Maxwell in diesem Szenario wesentlich mehr Leistung generiert. Im Endeffekt sieht man hier ums mal genauer auszudrücken warum die 290/290X Karten Alteisen sind im Vergleich zu 970/980.
Liegt vielleicht an der Engine und/oder am AMD Treiber oder gar an AMDs Architektur, vielleicht ist der Command-Processor überfordert.
Hawaii steht z.B. auch schlecht gegenüber einem alten GK104 dar (680), allerdings skaliert letzterer im Vergleich zu Maxwell auch sehr schlecht.

Aber man muss eben auch dazu sagen, dass Star Swarm nur ein Benchmark ist. Mit realen Spielen hat das wenig zu tun.
Wobei die Engine natürlich auch irgendwann für reale Spiele verwendet wird.
 
Ich würde meinen es ist die Architektur. Weniger die Rohleistung der Karte an sich. Immerhin ist in den Tests die 750Ti auch extrem weit vorn, verglichen zur 680er die synthetisch um einiges besser dastehen sollte der Rohleistung nach. Treiber ist was dran, aber da hat NV einfach mehr Manpower als AMD dem gegenüber steht AMDs Erfahrung mit Mantle und da sollten die Treiber ebensogut sein. Die Kombination wird da schon zu den Balken beigetragen haben.

Das einzige was zumindest feststeht ist, dass ein 4Kerner kaum weniger Leistung hat als 6Kerner - somit wird der i7k in meinem PC auch mit DX12 noch lang lang einen guten Unterbau darstellen.
Core Skalierung mit DX12.png
Der Effekt der Mantle gebracht hat für unterirdisch perfomende CPUs wird ja dan mit DX 12 für alle Grakas vorhanden sein. Und entsprechend sollte dann das Upgrade des Unterbaus sich sogar noch mehr strecken als es heute schon tut. Außer es kämen auf einmal superheftige Rohleistungs fressende KIs und Strategiespiele die CPUs wie nix verputzen.
 
Zuletzt bearbeitet:
Bei einer 290X reicht sogar ein Dual-Core aus.
Definitiv ein tolles Ergebnis, aber auch zwingend nötig.
Mit der FinFET Generation werden die GPUs massiv mehr Rohleistung haben und wenn man da ein Multi-GPU-Paar hat, dann braucht man eine effiziente Engine damit das auch weiterhin skaliert.
 
Klar für Multi GPU the Way to go. Aber realistisch wird MultiGPU in einstelligen Prozent, wenn nicht sogar Promille Bereich aller PCs liegen, die fürs Spielen hauptsächlich benutzt werden. Insofern ist das ein interessanter Nebeneffekt aber nichts was die Masse berührt. Im Discounter bei mir um die Ecke wurde bisher noch kein PC mit zwei Grakas angeboten.
 
Hoffe das dann drei GPUs endlich mal etwas besser Skalieren und ich bei der neuen AMD gen zuschlagen kann.
 
Na ganz einfach, weil selbst ältere karten mit dx12 nochmal ne ganze ecke länger leben aufgrund des heftigen plus an Frames.
Und dank Mantle ist DirectX 12 diesmal eine echte Revolution statt nur Evolution!
 
Zuletzt bearbeitet:
Update:

AnandTech hat eine e-mail von Oxide-Games erhalten, die einen Grund dafür liefert, wieso der Mantle-Renderer bei AMD ein Tick schneller arbeitet, als DX12.
Aufgrund der extremen Anzahl an GPU-Auträgen, kann der Command-Processor der GPU, welche die Arbeit für die GPU verteilt, überlastet werden.
Um dem entgegen zu wirken wird zu Lasten der CPU optimiert, die CPU kombiniert ein paar Aufträge, die Anzahl dieser sinkt insgesamt und der Command-Processor hat weniger zu tun.
Das resultiert insgesamt in einer etwas höheren GPU-Performance.

Diese Optimierung, welche sich auch ausschalten lässt, führt zu 16% mehr Performance auf einer 290X

71462.png


Ein interessantes Hardware-Limit zeigt sich somit zum Vorschein, voerst wird es vermutlich keine praktische Relevanz haben, aber ein wichtiger Aspekt beim Design einer Engine und zukünftiger GPU-Hardware sein.
 
das heisst ich könnte vllt meinen i5 noch länger behalten
da freut sich zwar der Geldbeutel,aber dachte so mit 2017 könnte ich auf einen 6 Kerner umsteigen ,von dem dann auch mehr Spiele profitieren
 
Zurück