vendredi 1 avril 2022

Microsoft PIX 2203.30

 Microsoft PIX est conçu pour être utilisé comme un outil de réglage et de débogage des performances pour les développeurs de jeux.
Microsoft PIX peut également être utilisé pour analyser les jeux DirectX 12 sur Windows. Il utilise le processus de capture GPU pour restituer des images uniques. Le processus de capture GPU donne aux développeurs la possibilité d'approfondir les détails spécifiques du processus.
Les développeurs trouveront la possibilité de régler leurs jeux DirectX 12, en les gardant pertinents dans l'arène de développement de jeux PC toujours compétitive.

Cette version contient la prise en charge de DirectX 12 Ultimate , le débogage au niveau de la source des shaders DXIL, une nouvelle chronologie de capture GPU, une corrélation des événements CPU / GPU dans les nouvelles captures de synchronisation et de nombreuses autres corrections de bugs et améliorations des performances.

Cette version contient de nombreuses nouvelles fonctionnalités, notamment :

Exporter vers C++

Cette version ajoute la possibilité d'exporter un fichier de capture GPU dans une série de fichiers C++ qui effectuent le travail D3D12 capturé. Les cas d'utilisation potentiels pour cela incluent :

  • Isoler une reproduction d'un bogue. Par exemple, si vous voyez une corruption de rendu dans une image que vous soupçonnez d'être causée par un autre composant (par exemple, un bogue de pilote), vous pouvez effectuer une capture GPU de l'image, l'exporter vers C++, puis simplifier manuellement le code C++ dans un reproduction minime.
  • Effectuer des expériences sur une capture. Par exemple, vous pouvez modifier une partie du code C++ et voir si/comment les performances changent.
  • Et plus!

Le code exporté inclut un fichier CMakeLists.txt. Vous pouvez ensuite utiliser CMake pour générer des fichiers de construction pour une variété de systèmes de construction. Vous pouvez également charger le dossier dans Visual Studio et laisser Visual Studio générer automatiquement les fichiers de construction pour vous ( projets CMake dans Visual Studio | Microsoft Docs ).

Comme pour les fichiers de capture .wpix normaux, nous ne pouvons pas garantir que le code C++ exporté s'exécutera correctement sur un GPU/pilote différent de celui utilisé à l'origine pour effectuer la capture. Cela fonctionnera pour certaines applications, et cela ne fonctionnera pas pour d'autres.

Nous avons soigneusement testé cette fonctionnalité avec une large gamme d'applications et de jeux. Cependant, si vous rencontrez des problèmes, veuillez nous contacter via le bouton de commentaires dans PIX ou via DirectX Discord et nous serons très heureux de vous aider.

Exportation d'images vers cpp

 

Modifications de l'interface utilisateur et améliorations des performances

L'interface utilisateur a été mise à jour pour améliorer considérablement les performances de passage d'un onglet à un autre, en particulier lors du changement entre les captures.

Dans le cadre de ces mises à jour, le processus de personnalisation des mises en page est une toute nouvelle expérience pilotée par menu. La structure générale de la façon dont les vues sont organisées en "mises en page" a été simplifiée, certaines restrictions de la version précédente étant supprimées. Par exemple, il n'est plus nécessaire que les vues se trouvent dans un onglet, ce qui peut réduire le gaspillage d'espace sur l'écran. Le modèle de base pour organiser les vues dans "l'espace de mise en page" est en fait trois options :

  • Placez une vue dans cet espace
  • "Divisez" cet espace en 2 espaces ou plus (avec des séparateurs réglables entre eux)
  • Placez un groupe d'onglets dans cet espace et ajoutez des onglets chacun avec son propre espace

Ces options peuvent être appliquées de manière récursive pour créer pratiquement n'importe quel agencement de vues et permettent de nouvelles fonctionnalités telles que la mise de plusieurs vues dans un seul onglet, etc. Vous pouvez également créer et nommer autant de mises en page différentes que vous le souhaitez, et basculer entre elles à à toute heure.

Il existe également une nouvelle fonctionnalité de "réduction", où les vues (ou groupes d'onglets) peuvent être réduites pour laisser plus d'espace pour d'autres vues. Pour un exemple simple, si vous souhaitez donner plus d'espace à la vue de la liste des événements ici :

Améliorations de l'interface utilisateur d'image 1

… vous pouvez simplement cliquer sur l'icône de réduction en haut à droite du groupe d'onglets contenant la vue Capture d'écran, et cela vous échappera :

Améliorations de l'interface utilisateur d'image 2

 

Nouveaux plugins Intel et AMD

Un grand merci à nos partenaires IHV pour leur prise en charge de PIX avec des mises à jour continues de leurs plugins !

Aujourd'hui, nous sommes heureux d'annoncer la disponibilité de deux nouveaux plugins accompagnant la version d'aujourd'hui

Le nouveau plug-in Intel ajoute la prise en charge des périphériques graphiques Intel® Arc™ série A.

Et le nouveau plugin AMD améliore les performances tout en collectant des compteurs haute fréquence. Ce plugin ajoute également de nouveaux compteurs, tels que TagConflict.

Plug-in AMD d'image

 

Prise en charge du Shader Debugger pour Tessellation Shaders

Le débogueur de shader prend désormais en charge les shaders de coque et de domaine. 

Améliorations de la gestion de la PDB

Les PDB peuvent désormais être placés dans des archives .zip. PIX recherchera les fichiers .zip dans le chemin PDB, que vous pouvez modifier via le menu des paramètres. 

Améliorations de la capture du processeur

Représentation graphique du temps d'exécution et de blocage dans la vue des métriques

Le temps d'exécution et le temps de blocage d'un événement PIX peuvent désormais être représentés graphiquement en plus de sa durée dans la vue des métriques. Ces nouvelles mesures vous permettent d'analyser le temps passé directement dans un événement PIX tout en omettant l'heure à laquelle l'événement a été bloqué.

Les événements consolidés sont maintenant regroupés par fil

L'algorithme utilisé par PIX pour consolider les événements à afficher dans la vue des mesures de capture de synchronisation tient désormais compte du thread sur lequel les événements s'exécutent.

Par exemple, si vous avez un événement consolidé nommé RenderProcess* qui s'exécute sur deux threads, Render1 et Render2, la vue des métriques contiendra désormais 2 événements consolidés, RenderProcess* (Render1) et RenderProcess* (Render2). 

Corrections de bogues et autres petites améliorations

Autres améliorations de la capture GPU :

  • Temps de capture : corrige les références MetaCommand pendantes qui peuvent provoquer des plantages
  • Affichage du tas de descripteurs : correction des vues de tas de descripteurs GpuId
  • Divers : Amélioration de la mise en cache de l'APB du shader dans WinPIX
  • Vue Pipeline : fournit des commentaires sur l'interface utilisateur pour l'accès aux ressources dynamiques SM6.6 hors limites (c'est-à-dire directement à partir du tas de descripteurs)
  • Historique des pixels/ressources : ajouter des événements MeshShader
  • pixtool : correction de la capture/lecture de l'application à l'aide d'un adaptateur autre que celui par défaut
  • Texture Viewer : amélioration de l'affichage des propriétés des ressources et des vues
  • Visionneuse de texture Retournement d'image horizontal/vertical
  • Texture Viewer : correction du calcul des sous-ressources pour les ressources de tableau tuilé
  • Visionneuse de texture : ne réinitialisez pas les champs de détails des pixels lorsque le curseur se déplace
  • Visionneuse de texture : correction du TDR lors de la visualisation d'un tampon de profondeur/pochoir _TYPELESS MSAA multiplanaire qui a refusé la création de SRV
  • Chronologie : correction du mode sombre pour la durée d'exécution
  • Chronologie : corrige divers problèmes liés aux délais d'attente et de signal
  • Replayer : Appelez SetDescriptorHeaps() si nécessaire lors de la réinitialisation des MetaCommands
  • Replayer : meilleur message d'erreur pour l'échec de D3D12EnableExperimentalFeatures
  • Shader Debugger : faire en sorte que le bouton "enregistrer la trace" fasse quelque chose d'utile

Autres améliorations de la capture temporelle

  • Une nouvelle option nommée "Sortie de débogage du traitement détaillé des symboles" a été ajoutée. L'activation de ce paramètre active la journalisation détaillée du chargement des symboles pour aider à diagnostiquer les problèmes avec PIX en trouvant les bons PDB.

Autres améliorations :

  • WinPixEventRuntime : ajouter des versions de file d'attente de commandes d'ABI
  • Page de connexion : Correction de la version "OS" des détails de connexion sur Win11
Page d’accueil : Microsoft PIX


Aucun commentaire: