PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Diskussion zu: Die fehlenden Asynchronous Shader bei nVidia


Leonidas
2015-09-05, 06:54:13
Link zum Artikel:
http://www.3dcenter.org/artikel/die-fehlenden-asynchronous-shader-bei-nvidia


Die eigentliche Diskussion zum Thema läuft hier:
http://www.forum-3dcenter.org/vbulletin/showthread.php?t=565973

y33H@
2015-09-05, 12:45:51
IMHO viel zu viele voreilige Schlüsse wie Async Shader auf der CPU, besonders gut für RTS oder das die Async Shader für den geringen DX11 vs DX12 Unterschied bei NV verantwortlich sind.

Zum Thema was Async Shader auf Konsolen bringen, gibt's u.a. von Q-Games Zahlen:


http://scr3.golem.de/screenshots/1509/Async-Compute-The-Tomorrow-Children-Infamous-Second-Son/Async-Compute-The-Tomorrow-Children.png

Achill
2015-09-05, 14:42:12
Hallo Leonidas, wie schon im anderen 3dcenter Thread darauf hingeweisen (http://www.forum-3dcenter.org/vbulletin/showthread.php?p=10766017#post10766017), ist unter der aktuellen AoS Version und dem aktuellen Cat. 15.8 Beta die Perfoamnce unter D11 viel besser geworden, so ist meine 290X ganz knapp hinter einer 970 GTX in FullHD.


...
Allerdings muß auch klar gesagt werden, daß sich selbst unter Ashes of the Singularity damit nicht die Situation ergibt, daß die AMD-Hardware der nVidia-Hardware dann maßlos davonzieht – auch wenn die relativen Performancegewinne dies auf den ersten Blick vermuten lassen würden. Vielmehr ist es jedoch so, daß die AMD-Hardware durch diesen großen Performancesprung unter DirectX 12 überhaupt erst einmal in der Lage ist, deren wirklich monströs zurückhängende Performance unter DirectX 11 zu egalisieren.
...


Ich finde das ist hier eine kleine Randnotiz wert?

Leonidas
2015-09-06, 03:33:07
Hat sich die Performance unter DX12 verändert?

Update: Deine Tabelle gibt eine Steigerung unter DX12 vor - Vergleichswerte zu DX11 sehe ich da nicht. Übersehe ich da etwas?

Lord Wotan
2015-09-06, 11:04:28
Probiert NVidia ihre Kunden schon wieder hinter das Licht zu führen. In den sie sagen die neuen Karten sind DX12. Also das selbe wie bei denn Karten die nicht DX 11 können, aber als DX 11 Karten verkauft wurden.

Kickstart
2015-09-06, 11:52:55
Den schönste Kommentar zu dem Thema hat Fefe (https://blog.fefe.de/?ts=ab183d74) geschrieben.

MadManniMan
2015-09-06, 12:09:45
Probiert NVidia ihre Kunden schon wieder hinter das Licht zu führen. In den sie sagen die neuen Karten sind DX12. Also das selbe wie bei denn Karten die nicht DX 11 können, aber als DX 11 Karten verkauft wurden.

Lies richtig hin. Async shaders sind optional, damit ist es erstmal kein Beschiss.

Dennoch müssen wir die Geschichte im Auge behalten, weil AMD damit ganz schnell ne allgemeine Empfehlung für Neukäufe bekommen KÖNNTE.

Gast
2015-09-06, 13:43:38
Bei Async Shaders sollte man sehr vorsichtig mit voreiligen Schlüssen sein.

Prinzipbedingt können Async-Shaders nur dann Performance bringen wenn die Pipeline schlecht ausgelastet ist. Bei einer gut ausgelasteten Pipeline können Async-Shaders nichts bringen und sogar etwas an Performance kosten.

Angesichts der Tatsache, dass AMD-Karten regelmäßig deutlich mehr theoretischer Rohleistung benötigen um die selbe Performance zu erreichen, kann man auch annehmen dass deren Pipelines schlechter ausgelastet sind, sei es durch bessere Treiber oder bessere Hardware seitens Nvidia.

Zusätzlich brauchen Async Shaders, um die maximale Performance zu bringen in der Regel spezifische Optimierungen für die dahinterliegende Architektur. Selbst mit der nächsten Architektur des selben Herstellers kann es schon ganz anders aussehen.

Dabei hat AMD in dieser Angelegenheit einen Punkt in jedem Fall auf seiner Seite: Asynchronous Shader ist kein Bildqualitäts-Feature – sondern ein reines Performance-Feature. Damit ist es für die Spieleentwickler viel einfach einzubauen, weil man damit nicht die einen Nutzer bei der Bildqualität bevorteilt und die anderen Nutzer benachteilt – was kein Spieleentwickler gern macht. Mehr Performance ist jedoch bezüglich der Bildqualität erst einmal neutral – und wenn es nur bei den Grafikchips eines Anbieters funktioniert, ist dies kein Hindernis zur Nutzung.

Angesichts der aktuellen Marktanteile wird es leider nur wenige Entwickler geben, welche entsprechende Optimierungen einbauen die nur dem Underdog zu gute kommen. Das macht man höchstens für den Marktführer.

Die einzige Hoffnung für AMD ist leider, dass durch die Konsolen diese Optimierungen quasi "gratis" auch auf den PC kommen.
Wobei sich wie gesagt auch erst zeigen muss ob diese dann am PC auch ähnlich viel bringen, denn trotz identischer Architektur gibt es angesichts der SOC-Bauweise in den Konsolen doch auch deutliche Unterschiede.

Gast
2015-09-06, 14:26:42
Das 5.1 Shadermodell scheitert unter DX12 nicht an gewählten Abstractionsleveln, das wäre auch völlig falsch interpretiert.

GTX 900 Besitzer haben keine Nachteile, soweit Nvidia die Treiber anpassen kann, ob sie es wollen weiß ich nicht. (1x graphic command+31 compute oder 32 reine compute Recheneinheiten stehen dann 1 graphic command+8 compute bei Hawaii und Fiji gegenüber, wozu die IHVs den Ansatz verwenden bleibt deren Sache)

(http://www.anandtech.com/show/9124/amd-dives-deep-on-asynchronous-shading)

AMDs Async Compute Shading ist Bestandteil der Mantle-API, warum sollte Nvidia sowas lizensieren? Nvidia betrügt damit niemanden.

AMD bietet zudem bestimmte Feature nicht an (die eben nicht optional sind [erweiterte Rauch und Nebeldarstellung, die sind dann auf Umwegen mittels eigenem CU-codieren umsetzen müssen, z.B. so wie das conserv. rasterization aus dx-FL 12.1]) und kann deshalb das Logo nicht tragen. Bei der reinen Darstellung wird es jedoch keine Unterschiede geben, auf beiden Seiten.

(https://msdn.microsoft.com/en-us/library/dn899119(v=vs.85).aspx
https://msdn.microsoft.com/en-us/library/windows/desktop/ff476876(v=vs.85).aspx
[unter dem Link, kann man die blaumarkierten Funkionen anklicken und nachlesen])

samm
2015-09-06, 16:24:30
GTX 900 Besitzer haben keine Nachteile, soweit Nvidia die Treiber anpassen kann, ob sie es wollen weiß ich nicht. (1x graphic command+31 compute oder 32 reine compute Recheneinheiten stehen dann 1 graphic command+8 compute bei Hawaii und Fiji gegenüber, wozu die IHVs den Ansatz verwenden bleibt deren Sache)Bei dieser Zählweise müsste bei AMD die Compute-Zahl um 8 multipliziert werden. Der Anandtech-Artikel ist etwas irreführend diesbezüglich.

Gast
2015-09-06, 16:46:42
Bei dieser Zählweise müsste bei AMD die Compute-Zahl um 8 multipliziert werden. Der Anandtech-Artikel ist etwas irreführend diesbezüglich.
Nein, den die Ausführung oder queues (enqueue-dequeue, first in-first out, ring buffer) hat mit der reinen Hardimplementierung nichts zu tun. Hier wird ja behauptet Nvidia hätte keine Async Shader und das ist völlig falsch. Genausogut könnte AMDs Ansatz ziemlich "speziell" sein, nämlich genau dafür, womit sie gerade werben und nix weiter. GCN ist doch sehr auf Mantle zugeschnitten und dessen abstraction, umsonst schreibe ich ja sowas nicht. Unter dx11 haben diese Einheiten keinen Nutzen und sind nicht mehr als Ballast.

Lord Wotan
2015-09-06, 20:16:01
Lies richtig hin. Async shaders sind optional, damit ist es erstmal kein Beschiss.


Ob optional oder nicht spielt keine rolle. Es ist eine DX12 Funktion.

Und für mich ist es das selbe wie bei der aussage NVidia kann DX11. Es fehlen nur Funktionen für 2D Desktop betrieb. Für mich als Kunde ist es so. Kann NVidia voll in Hardware DX12 oder nicht. Wenn man lügt NVidia wie bei denn DX 11 Karten ihre Kunden an.

Kartenlehrling
2015-09-06, 20:33:16
Hier wird am Playstation 4 Game inFamous:SS gezeigt wie man sich das Asynchronous Shader vorstellen kann.

http://www.dualshockers.com/2014/04/02/how-infamous-second-son-used-the-ps4s-8-4-5-gb-of-ram-cpu-and-gpu-compute-to-make-our-jaws-drop/
How inFAMOUS: Second Son Used the PS4’s 8 (4.5) GB of RAM, CPU and GPU Compute to Make Our Jaws Drop

Fusion_Power
2015-09-06, 20:59:41
Ich versteh den Rummel darum eh nicht. Keine Grafikkartenserie unterstützt alle Features, AMD hat ihre Stärken, NVidia hat ihre Stärken. War bisher ja auch schon so dass bestimmte games ehr besser mit einem Hersteller harmonierten als mit dem andern. Bei Mantle hat sich ja auch keiner von Nvidia beschwert oder?
Entweder NVidia löst das per Treiber oder sie haben halt pech und könnens nicht unterstützen. Eventuell kann AMD davon profitieren und mehr Radeon unters Volk bringen, nötig hätten sies. Konkurenz belebt ja das geschäft und am Ende profitieren wir alle davon, spätestens wenn NVidia neue GraKas rausbringt die dieses Feature voll unterstützen.

Kartenlehrling
2015-09-06, 21:10:24
Der Rummel entsteht ... wenn Nvidia sein starke Marktstellung ausnutzt.

Lord Wotan
2015-09-06, 21:58:10
Der Rummel entsteht, weil Nvidia sagt unsere Karten können DX12 in der Hardware. Nun stellt man fest das NVidia nicht alle Funktionen kann. Also die selbe Geschichte wie bei ihren DX 11 Karten.

Fusion_Power
2015-09-07, 00:10:14
Gibts für sowas nicht diese DX "Feature Level" um sich beim Fehlen von Funktionen geschickt aus der Affäre zu ziehen?

StefanV
2015-09-07, 00:55:34
Angesichts der aktuellen Marktanteile wird es leider nur wenige Entwickler geben, welche entsprechende Optimierungen einbauen die nur dem Underdog zu gute kommen. Das macht man höchstens für den Marktführer.
Hä?!
Warum sollte man die Optimierungen der Konsolen nicht mit 'rübernehmen'?!
Da ist die Hardware ja auch nur noch ein PC mit anderem OS...

Auf der XBoner sollte ja eh DX12 laufen, samt irgendeiner Form von Windows...

Isen
2015-09-07, 00:59:52
Nein, den die Ausführung oder queues (enqueue-dequeue, first in-first out, ring buffer) hat mit der reinen Hardimplementierung nichts zu tun.
@ #9 vergleichst aber damit


Vergleich mal lieber die Compute Commands.

Im übrigen ist dadurch zu erreichende Latenz das Ziel, nicht die Performance. Spätestens zu VR wird es wieder ein Thema werden, sofern NV es bis dahin nicht geschafft hat.
Genau deswegen ist bis Heute NV, was VR betrifft eine reine Katastrophe.

BlacKi
2015-09-07, 01:20:28
Ob optional oder nicht spielt keine rolle. Es ist eine DX12 Funktion.

Und für mich ist es das selbe wie bei der aussage NVidia kann DX11. Es fehlen nur Funktionen für 2D Desktop betrieb. Für mich als Kunde ist es so. Kann NVidia voll in Hardware DX12 oder nicht. Wenn man lügt NVidia wie bei denn DX 11 Karten ihre Kunden an.
die kommentare hier lassen den eindruck entstehen, das amd alle dx12 funktionen erfüllt. aber amd karten können auch nicht alle dx12 funktionen.

AMD’s Robert Hallock shares that Fury X is also missing a number of DX12 features.

http://www.guru3d.com/news-story/amd-there-is-no-such-thing-as-full-support-for-dx12-today.html

Gast
2015-09-07, 06:01:56
Ich frage mich allgemein, warum man dies so hochkocht wenn man 1+1 zusammenzählt, wusste man doch aus welcher Richtung der Wind gemacht wurde. Bei GameWorks wird auch immer ruckzuck kritisiert, auf Basis von Annahmen und Gerüchten, hier lässt man AMD ihren Marketing-Stunt durchgehen und gleichermaßen verlangt man von NV sich zu rechtfertigen, auf Basis von haltlosen Anschuldigungen und eines unfertigen Game, welches sich noch in Entwicklung befindet? Total lächerlich. Wartet die Zeit ab , bis das Game released ist und vor allem mehr DX12 Titel verfügbar. Es war doch völlig klar das Oxide auf AMD Hardware optimiert hat, warum tut man jetzt so überrascht das NV Karten hinten an stehen, hat wirklich jemand anderes erwartet? ;)

Gast
2015-09-07, 10:42:48
Schon mal auf die Idee gekommen das AMD bei DX12 nur Hardware unterstützte Features aufgelistet hat und NV generell Hard- und SOFTWARE Unterstütze Features ;-)

Ich würde mich nicht wundern wenn neben Asynchronous Shader noch weitere Features per Software realisiert sind.

Gast
2015-09-07, 11:52:22
ich denke es sind einige Fehlinterpretationen im Artikel und im Thread.

Asynchronous Compute ist keine Funktion der APIs (es gibt keine solche Funktion in der API-Dokumentation), sondern vielmehr Grundprinzip, dass paralleles Computing unterschiedlicher Compute Funktionen möglich ist und eben nicht mehr strikt eine serielle MasterQueue programmiert werden muss. Letztlich ist es dieser Paradigmenwechsel der auch mehrere GPUs und unterschiedliche GPUs mit DX12 nutzbar machen soll.

Die Vorteile von Asynchronous Compute sind nicht speziell für RTS von Vorteil. Man sollte das auch nicht mit der höheren Anzahl Draw-Calls verwechseln.
Die Vorteile von Asynchronous Compute liegen eher in der parallelen Compute-Nutzung wodurch beliebige Dinge beschleunigt oder genutzt werden können die eben nicht an der nach wie vor seriellen Graphik Queue hängen. Das können Postprocessing, Physik, KI oder sonst welche Berechnungen sein. Es ist keine Spezialität für RTS sondern kann bei entsprechenden Game-Features bei jedem Spiele-Genre helfen die Performance zu verbessern.