
Un plantage graphique pourra désormais laisser derrière lui bien davantage qu’un écran figé ou un retour brutal au bureau. Microsoft transpose sur Windows une méthode issue de Xbox afin que les studios puissent remonter précisément jusqu’au pilote, au shader ou à la ressource en cause.
DirectX Dump Files centralise les indices d’un crash GPU

Introduits avec Agility SDK 1.620 et PIX 2610.28, les DirectX Dump Files réunissent dans un même fichier les informations issues de Windows, de Direct3D et des pilotes graphiques. AMD, Intel, NVIDIA et Qualcomm participent à cette initiative aux côtés de Microsoft.
Microsoft avait déjà détaillé les bases de cette fonctionnalité lors de la prévisualisation de DirectX Dump pour les crashs GPU, désormais intégrée à l’outillage des studios.
Lorsqu’un GPU cesse de traiter la charge graphique, DirectX génère le fichier avant que Windows ne réinitialise le processeur graphique. Celui-ci conserve le dernier état du runtime Direct3D, des données matérielles et du pilote, ainsi que jusqu’à 2 Mo de traces fournies par le développeur du jeu.

Ces fichiers peuvent être enregistrés directement sur les machines de développement. Sur les PC des joueurs, ils ne le sont pas par défaut, mais les studios peuvent mettre en place une chaîne de collecte afin de recevoir les données de plantage et de les analyser.
PIX remonte jusqu’aux shaders et ressources fautifs
Déjà employé pour le débogage et l’optimisation des jeux DirectX 12, PIX décode les informations collectées, analyse les dumps et repère les points de blocage. L’outil peut aussi retracer les shaders et les ressources impliqués, ce qui réduit le temps nécessaire pour isoler puis corriger l’origine d’un crash.
Trois niveaux de collecte selon le contexte
Le mode NO_OVERHEAD capture les données essentielles sans incidence sur les performances. Les modes MEDIUM_OVERHEAD et HIGH_OVERHEAD enregistrent progressivement davantage d’informations, au prix d’une charge supplémentaire qui les destine surtout au développement et aux phases de validation qualité.
La prise en charge couvre les AMD Radeon RX 7000 et RX 9000, ainsi que les NVIDIA GeForce RTX 20 « Turing » et les générations plus récentes. La plateforme Qualcomm Snapdragon X2 est également compatible, tandis que le support des GPU Intel doit arriver ultérieurement.
L’intérêt dépasse le simple ajout d’un outil de débogage. En uniformisant le format des données entre Windows, Direct3D et plusieurs fournisseurs de GPU, Microsoft peut réduire les diagnostics fragmentés entre moteur, jeu et pilote, avec à la clé des correctifs plus rapides pour les titres DirectX 12.
Source : Microsoft