DirectX 12: Neues Feature soll CPUs entlasten

43
News Andreas Link Als bevorzugte Quelle auf Google hinzufügen
DirectX 12: Neues Feature soll CPUs entlasten
Quelle: Microsoft

Work Graphs in DirectX 12 ist ein neues Feature, das darauf abzielt, die GPU-Autonomie zu stärken, die CPU zu entlasten und die Kommunikation zwischen CPU und GPU zu optimieren.

Microsoft hat eine neue Version von DirectX 12 veröffentlicht, die über ein neues Feature den Prozessor entlasten soll. In einem ausführlichen Blogbeitrag erläutern Amar Patel, Ingenieur (Direct3D), und Tex Riddell, Ingenieur (DirectX Compiler), die Funktionsweise von Work Graphs, einem System für die GPU-Autonomie in D3D12, das darauf abzielt, Einschränkungen bei allgemeinen Rechenlasten auf GPUs zu beheben und verborgene GPU-Fähigkeiten freizusetzen.

Vereinfacht ausgedrückt zielt das neue System darauf ab, auf ein effizienteres, von der GPU gesteuertes Renderingsystem umzusteigen, um den Bedarf an CPU-Rechenzeit in verschiedenen Arbeitslasten zu reduzieren.

"In vielen GPU-Workloads bestimmt eine anfängliche Berechnung auf der GPU, welche nachfolgende Arbeit die GPU erledigen muss. Dies kann durch einen Rückweg zur CPU erfolgen, um die neue Arbeit zu erteilen. Es ist jedoch in der Regel besser, wenn die GPU sich direkt selbst versorgen kann. ExecuteIndirect in D3D12 ist eine Form davon, bei der die App die GPU verwendet, um einen sehr eingeschränkten Befehlspuffer aufzuzeichnen, der sequenziell auf der GPU verarbeitet werden muss, um neue Arbeit zu erteilen.

Betrachten Sie eine neue Option. Angenommen, Shader-Threads, die auf der GPU ausgeführt werden (Produzenten), können andere Arbeiten anfordern (Konsumenten). Konsumenten können auch Produzenten sein. Das System kann die angeforderte Arbeit planen, sobald die GPU die Kapazität hat, sie auszuführen. Die App kann das System auch die Speicherverwaltung für die zwischen den Aufgaben fließenden Daten übernehmen lassen.

Empfohlener redaktioneller Inhalt [EMBED_URL] An dieser Stelle finden Sie externe Inhalte von [PLATTFORM]. Zum Schutz Ihrer persönlichen Daten werden externe Einbindungen erst angezeigt, wenn Sie dies durch Klick auf "Alle externen Inhalte laden" bestätigen: Ich bin damit einverstanden, dass mir externe Inhalte angezeigt werden. Damit werden personenbezogene Daten an Drittplattformen übermittelt. Mehr dazu in unserer Datenschutzerklärung.
Externe Inhalte Mehr dazu in unserer Datenschutzerklärung.

Das ist Work Graphs. Ein Graph von Knoten, bei dem der Shader-Code an jedem Knoten Aufrufe anderer Knoten anfordern kann, ohne auf deren Start zu warten. Work Graphs erfassen die algorithmische Absicht des Benutzers und die Gesamtstruktur, ohne den Entwickler mit zu vielen Details über die spezifische Hardware zu belasten, auf der sie ausgeführt wird. Die asynchrone Natur maximiert die Freiheit für das System, zu entscheiden, wie die Arbeit am besten ausgeführt wird."

Work Graphs ist schon eine ganze Zeit als Preview bereitgestellt worden und soll nun nach dem Wunsch der API-Designer eine verstärkte Anwendung finden. Alles in allem sieht man Work Graphs als nächsten Schritt zur größeren Autonomie der GPU und zur Entlastung der CPU, die mit der gewonnenen Rechenzeit andere Aufgaben erledigen kann. Die Kommunikationswege zwischen CPU und GPU gelten seit Längerem als eines der Elemente, das am stärksten bremst und angesichts der Entwicklung ist Optimierung von Abläufen immer die bessere Wahl gegenüber der Bereitstellung von mehr Rechenleistung. Wie immer gilt aber: Entwickler müssen solche Features nutzen und die vielen Details dürften auch ein Grund dafür sein, dass immer mehr Engines aussterben.

Quelle: Microsoft

43
    • Kommentare (43)

      Zur Diskussion im Forum
      • Von Nero905 PC-Selbstbauer(in)
        Achso na dann, kriegt man einfach nur nicht mehr mit, wenn die Updates kommen, das erklärt es. Per Windows Update hätte ich es wahrscheinlich bemerkt, aber wenn das alles so im Hintergrund passiert...
      • Von Nero905 PC-Selbstbauer(in)
        Achso na dann, kriegt man einfach nur nicht mehr mit, wenn die Updates kommen, das erklärt es. Per Windows Update hätte ich es wahrscheinlich bemerkt, aber wenn das alles so im Hintergrund passiert...
      • Von VikingGe Software-Overclocker(in)
        Zitat von Nero905
        Huch, die arbeiten noch an DirectX? Früher gab es gefühlt bei jeder Computerbild eine neue Version auf der CD, inzwischen bleibt es Jahre lang bei der selben Version.
        Gibt doch alle paar Monate eine neue D3D12-Runtime:
        [Ins Forum, um diesen Inhalt zu sehen]

        Kommt halt heute nicht mehr auf CD, sondern in Form einer d3d12core.dll im Spieleordner sowie Grafiktreiber-Updates.

        Bei D3D9/10/11 gabs dafür wirklich nur alle paar Jahre mal ein Update, besonders D3D10/11 sind ziemlich starr an OS-Versionen gekoppelt.
      • Von DarthTobi PC-Selbstbauer(in)
        ich mag Placebos....
      • Von PCGH_Raff Kokü-Junkie (m/w)
        Zitat von JackTheHero
        Genau das machen ja Low Level APIs wie DX12 und Vulkan. Ist halt mehr Arbeit für Entwickler.
        Das ist zwar etwas näher dran, aber keineswegs direkt. Die Abstrahierung ist aber notwendig, damit man die unzähligen Hardware-Kombinationen unter einen Hut kriegt.

        MfG
        Raff
      • Von Gast1754557804
        Zitat von PCGH_Raff
        Absolut. Am besten wäre natürlich, wenn man Hardware einfach und direkt ansprechen könnte, anstelle über relativ starre API-Umwege zu gehen.

        MfG
        Raff
        Viele Programme die jetzt nicht High-End Grafik oder hohe FPS benötigen, profitieren von Abstraktionen. Diese können so schneller entwickelt werden und profitieren von häufig genutzten und daher erprobten APIs. 👍
      Direkt zum Diskussionsende
  • Print / Abo
    Apps
    PCGH Magazin 07/2026 PC Games 07/2026 play5 07/2026 N-Zone 07/2026 Linux Magazin 07/2026 LinuxUser 07/2026 Raspberry Pi Geek 07/2026
    PC Games Hardware PC Games Linux Magazin Raspberry Pi Geek Computec Kiosk