PIX on Windows 2403.08: voller Capture/Replay-Support für die finale D3D12-Work-Graphs-API

Microsoft hat am 11. März 2024 die Version 2403.08 von PIX on Windows veröffentlicht und damit vollen Capture- und Replay-Support für die finale D3D12-Work-Graphs-API nachgeliefert. Aufrufe von DispatchGraph() lassen sich im GPU-Profiler jetzt vollständig aufzeichnen und erneut abspielen. Entwickler erhalten Zugriff auf Event-Details, das Layout der Local Root Arguments Table (LRAT), die Node-Inputs, eine detaillierte Aufschlüsselung der State Objects sowie Hardware-Counter-Daten und zugehörige Graphen. Das Grafik-Tooling zieht damit mit dem neuen GPU-Programmiermodell nach, das die Steuerung der Arbeitsverteilung von der CPU auf die GPU verlagert.

Work Graphs, GPU Upload Heaps und Shader Model 6.8

Work Graphs erlauben es der GPU, weitere Arbeit selbst zu erzeugen und einzuplanen, ohne dass die CPU jeden Schritt vorgibt. Genau diese dynamisch entstehenden Aufrufe waren für Profiler bisher schwer fassbar. Mit der vollständigen Capture/Replay-Unterstützung für DispatchGraph() deckt PIX nun den gesamten Ablauf ab, von der Struktur der State Objects bis zu den Node-Inputs und der Local Root Arguments Table. Auch die Hardware-Counter werden pro Aufruf erfasst und als Datenreihen samt Graphen dargestellt, sodass sich das Laufzeitverhalten der Graphen auf der GPU nachvollziehen lässt. Die API reiht sich in eine Welle neuer DirectX-Bausteine ein, zu der etwa auch DirectSR für Upscaling-Technologien gehört.

Mehrere zuvor als Preview geführte Funktionen sind in dieser Ausgabe in den regulären Support übergegangen. GPU Upload Heaps werden voll unterstützt; die im Vorjahres-Preview aufgetretenen Betriebssystem-Performanceprobleme im Zusammenspiel mit PIX wurden behoben. Hinzu kommen Unterstützung für Shader Model 6.8, für Generic Programs in State Objects, deren Abdeckung zunächst eingeschränkt bleibt, sowie für Incrementing Constants. Ergänzend liefert PIX neue Texture-Visualizer für Depth-Test, Stencil-Test, Culling-Test, Viewport und Scissor-Rect und liest Shader-Reflection-Daten jetzt aus PDBs ein. Auch große Engines setzen zunehmend auf das moderne D3D12-Fundament, etwa als Epic Games DirectX 12 in Fortnite integrierte.

.NET-8-Umstieg und schnelleres Shader-Debugging

Unter der Oberfläche hat Microsoft die PIX-UI von .NET 6 auf .NET 8 umgestellt. Der Wechsel räumt zugleich einige verbreitete .NET-6-Fehler aus, darunter einen Absturz im Zusammenhang mit einer Logitech-Maus. Spürbar dürfte für viele Entwickler vor allem das beschleunigte Shader-Debugging sein. Laut Microsoft sank die Zeit bis zum Start des Shader-Debuggings bei einem bekannten Sample einer bekannten DXR-Engine von über fünf Minuten auf 30 Sekunden. Für ein Werkzeug, das bei der Fehlersuche in Raytracing-Pipelines wiederholt aufgerufen wird, ist das ein erheblicher Unterschied im Arbeitsfluss.

Weitere News

Weitere News

Kommentieren Sie den Artikel

Bitte geben Sie Ihren Kommentar ein!
Bitte geben Sie hier Ihren Namen ein