Das PIX-Team von Microsoft hat das Performance-Tuning-Werkzeug PIX on Windows in der Version 1906.14 am 17. Juni 2019 veröffentlicht und damit die Preview-Funktion New Timing Captures um GPU-Timing-Daten ergänzt. Die Profiling-Suite richtet sich an Entwickler von DirectX-12-Titeln und liefert mit dem Update erstmals eine zeitliche Darstellung von GPU-Operationen direkt neben den zugehörigen CPU-seitigen API-Aufrufen. Verantwortlich für die Versionsnotizen zeichnet Stephen Hitchcock aus dem PIX-on-Windows-Team.
Top of Pipe bis End of Pipe auf der Command Queue
Im Zentrum des Updates steht die Darstellung der GPU-Arbeit in der Timing-Capture-Ansicht. Jeder Balken im Graphen bildet die Dauer einer GPU-Operation auf der Command Queue ab, gemessen von Top of Pipe bis End of Pipe. Damit erfasst die Messung die vollständige Laufzeit einer GPU-Aufgabe von der Einreihung bis zum Abschluss. Die Operationen erscheinen in der gleichen Ansicht wie die CPU-seitigen API-Aufrufe, sodass sich nachvollziehen lässt, wann die GPU eine Arbeit ausführt und in welcher zeitlichen Relation diese zum auslösenden Aufruf auf der CPU steht.
Microsoft führt die Funktion als Preview und kündigt für kommende Versionen weitere Datenpunkte in den Timing Captures an. Dazu zählen die Darstellung von Vsyncs und Presents, Visualisierungen zur Korrelation von GPU- und CPU-Ereignissen, Fence-Signale und -Waits sowie eine Verfolgung der GPU-Speichernutzung. Neben dem GPU-Timing nennen die Versionsnotizen für die New Timing Captures zusätzliche Verbesserungen bei Bedienung und Performance sowie eine Reihe von Fehlerbehebungen.
pixtool, GPU-Captures und bekannte Einschränkung
Das Kommandozeilenwerkzeug pixtool erhält in 1906.14 neue Startoptionen, darunter –remote, –force11on12 und –ignore11on12, sowie den Befehl take-new-timing-capture zur Aufnahme einer neuen Timing Capture. Bei den GPU-Captures verbessert Microsoft die Steuerung der Ereignisliste mit anheftbaren Spalten und einer sortierbaren Hierarchie. Hinzu kommt eine Korrektur der zuvor langsamen Capture-Performance bei reservierten Ressourcen sowie Fehlerbehebungen beim Shader-Debugging. Auch ein neues PIX-Icon ist Teil der Auslieferung.
Als bekannte Einschränkung führt Microsoft an, dass PIX weiterhin nicht mit den Fast-Build-Versionen des Windows-Insider-Programms kompatibel ist. Wer Profiling-Sitzungen auf solchen Builds plant, muss diese Einschränkung bei der Wahl der Testumgebung berücksichtigen.
