Schnixus schrieb:
Dass diese Rohleistung nie auf der Strasse angekommen ist, war allerdings nicht das "Verschulden" von AMD, sondern hatte man MS und DX11 zu verdanken...
Dummes Zeug. DX11 hatte absolute seine Berechtigung und hat sie auch immer noch. Darum gibt's ja immer noch DX11.3 parrlalel zu DX12, welche auch die selben Features bietet wie DX12. Nur die wenigsten Entwickler sind überhaupt in der Lage mit einer Low Level API wie DX12 umzugehen. Der Rest verwendet weiterhin Highlevel APIs wie DX11 und OpenGL und die sind immer noch so ineffektiv wie zuvor. Das ist einfach so.
MaLow17 schrieb:
Soso DirectX 12(?) musste erst einmal erweitert werden, damit Asynchronous-Compute unterstützt wird und Nvidia es deshalb nicht geschafft hat, es vollwertig zu unterstützen? Ist das Deine Aussage?
Nein. Natürlich nicht.
Die neuen Features von denen ich spreche sind zum Beispiel die Shader Language 6.0 oder 16 bit Floatingpoint Datentypen und Operationen die jetzt mit den kommenden Karten immer wichtiger werden.
Mein Argument ist, dass nVidia nicht seine ALUs verbessert hätte und all die anderen Arbeiten am Chip durchgeführt hätte bevor sie nicht das grundlegende async compute Problem aus dem Weg geräumt hätten.
Das Problem von nVidia ist ja lediglich, dass der Workload-Verteiler nicht in Hardware implementiert ist, der die Arbeit auf den Warp-Scheduler verteilt. Diese selbst sind ja in Hardware implementiert und führen bisher auch bis zu 32 Warps parallel aus.
nVidia muss also lediglich den Teil, der die Arbeit auf den Scheduler verteilt, was momentan noch per Software geschieht, in Hardware implementieren, so wie es AMD macht. Das dürfte dann Teil der Gigathread Engine sein und da wir da momentan nicht reingucken können was nVidia dort alles tatsächlich geändert hat, ist das alles nur reinste Spekulation ob sich bei Pascal wirklich etwas verbessert hat oder nicht.
Die aktuellen Nvidia-Karte "beherrschen" Asynchronous-Compute durch eine platte Emulation unter Hinzuziehung der CPU
Mit Emulation hat das nichts zu tun, lediglich damit wie der Chip die Aufgaben zugewiesen bekommt. Bei nVidia wird das Scheduling von der CPU übernommen während es bei AMD in Hardware stattfindet.