VikingGe
Software-Overclocker(in)
D3D11 bietet keine sinnvolle Möglichkeit, Rendering wirklich zu parallelisieren. Falls du auf Deferred Contexts anspielst, die sind ein schlechter Witz und werden zumindest auf AMD-Karten letztenendes von der Dx11-Runtime emuliert, weil AMD keine Command Lists im Treiber unterstützt. Was man ihnen letztenendes auch nicht übel nehmen kann, denn die Art und Weise, wie die meisten Dx11-Spiele ihre Buffer-Updates durchfühlren - Map(..., D3D11_MAP_WRITE_DISCARD, ...) -> Daten kopieren -> Unmap(), z.T. vor jedem einzelnen Draw Call - steht dem ganzen Konzept von Command Lists nunmal fundamental im Weg. Deswegen gibts den Blödsinn auch nicht mehr in den neuen APIs.KrHome schrieb:GCN skaliert hervorragend, wenn man die Spiele entsprechend auf Multithreading hin auslegt. In DX12 und Vulkan ist das Standard und auch in DX11 gibt es entsprechende Möglichkeiten.
Man kann natürlich sowas wie Sichtbarkeitstest und das Durchlaufen der fürs Rendering benötigten Datenstrukturen parallelisieren und einem dedizierten Render-Thread sagen, was er zu tun hat, dann braucht man auch den ganzen Deferred Context-Blödsinn nicht mehr - aber an sich steht einem Dx11 einfach nur im Weg, was Multithreading angeht.
Zuletzt bearbeitet: