Zitat Zitat von Morrich Beitrag anzeigen
Dass nur DX12 oder Vulkan Spiele von Multithreading profitieren, ist hingegen völliger Unsinn.
Starke Worte.
Der Hintergrund ist wie folgt: Auch wenn DX11 schon Multi-threading unterstützt hat, wurden die Befehle von der API immernoch seriell verarbeitet. Dieser Flaschenhals wurde erst durch die Nachfolgegeneration von APIs wie DX12 (MS), Metal (Apple), Vulkan (open source) richtig aufgelöst, so dass jetzt alle CPU Kerne zur gleichen Zeit also parallel mit der GPU kommunizieren können. In DX11 hat der Scheduler im Nvidia-Treiber lediglich die draw calls über mehrere Kerne verteilt.

Zitat Zitat von anandtech
DirectX 11 wasn’t well suited for asynchronous shading. The same heavily abstracted, driver & OS controlled rendering path that gave DX11 its relatively high CPU overhead and poor multi-core command buffer submission also enforced very stringent processing requirements. DX11 was a serial API through and through, both for command buffer execution and as it turned out shader execution.

Along with making it much easier to submit work from multiple threads over multiple cores, all of these APIs are also making significant changes in how work is executed. With the ability to accept work from multiple threads, work can now be more readily executed in parallel and asynchronously. (Quelle)
Zitat Zitat von wccftech
Past versions of DirectX® were essentially limited to a single, serial graphics queue for processing all types of workloads. Therefore graphics, compute and memory copy operations had to wait for other parts of the graphics queue to finish processing before springing to life and doing their work. (Quelle)
Zitat Zitat von sapphirenation
Nowadays, almost every gaming PC is equipped with four, six or even eight core CPUs (like AMD FX or Intel Core i7), but in DirectX 11 games VGA driver can’t utilize all these cores optimally. The reason for this is DirectX 11 – poorly adapted to break game command buffer into small parallel chunks for processing on all the available CPU cores (and its threads). (Quelle)
Zitat Zitat von anandtech
[...] low-level APIs that can efficiently spread their work over multiple threads, as opposed to classic APIs like DirectX 11 which are essentially single-threaded and have a high degree of overhead within that sole thread. (Quelle)
Sicher ist das auch wiederum nicht die ganze Wahrheit, weil AMD und Nvidia Treiber in Bezug auf die verschiedenen DirectX Versionen signifikante Unterschiede aufweisen. Und natürlich hängt auch der Code des Spiels selbst davon ab, wie sich die Performance mit den unterschiedlichen Treibern und APIs niederschlägt.