> ## Documentation Index
> Fetch the complete documentation index at: https://devdocs.xbox.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Compteurs PIX

> Compteurs PIX

<Note>
  Avertissement : cette rubrique n'est pas à jour par rapport au Microsoft Game Development Kit (GDK). Elle sera mise à jour dans une prochaine version.
</Note>

Vous pouvez analyser, trier, filtrer et représenter graphiquement les compteurs logiciels et matériels de PIX.

* [Compteurs logiciels](#ID4EZ)
* [Compteurs matériels](#ID4EPB)

<a id="ID4EZ" />

## Compteurs logiciels

Pour ajouter des compteurs logiciels à un titre, utilisez la méthode [PIXReportCounter](/fr-CA/reference/tools/pix3/functions/pixreportcounter). Cette méthode prend comme paramètres une paire nom/valeur, où le nom est une chaîne que vous définissez et la valeur un nombre à virgule flottante. La valeur est généralement une durée, un nombre, un pourcentage ou une valeur similaire. En général, les valeurs s'affichent de façon plus visible si elles sont comprises entre 0 et 100; envisagez donc de ramener les valeurs plus grandes ou plus petites dans cette plage, comme le montre l'exemple suivant.

```cpp theme={null}
PIXReportCounter(L"MyCounterName", MyValue);  
```

Les compteurs logiciels apparaissent dynamiquement dans la vue **Counters** et peuvent être sélectionnés et ajoutés au graphique dans la vue **Console**.

<a id="ID4EPB" />

## Compteurs matériels

Il existe plusieurs centaines de compteurs matériels (répertoriés dans la [table des compteurs matériels de PIX](/fr-CA/tools/tools-console/pix/gpu/pix-table-of-hardware-counters)). Pour obtenir une brève description d'un compteur, cliquez sur son nom dans la liste **Column Selector**. Une description s'affiche en bas de la liste.

Les compteurs matériels ne sont pas pris en charge pour certains cas de draw/dispatch enfants d'ExecuteIndirect sur certaines plateformes; pour plus de renseignements, consultez [Prise en charge de l'analyse d'ExecuteIndirect dans PIX](/fr-CA/tools/tools-console/pix/gpu/pix-gpu-executeindirect)

* [Ajouter des compteurs matériels à la liste Events](#ID4EMC)
* [Tri et filtrage](#ID4EKCAC)
* [Représentation graphique des compteurs](#ID4EKDAC)

<a id="ID4EMC" />

### Ajouter des compteurs matériels à la liste Events

Pour ajouter au tableau **Events** une colonne contenant la sortie d'un compteur matériel, sélectionnez l'onglet **Counters**, puis sélectionnez un ou plusieurs compteurs matériels dans la longue liste.

| Ensemble de compteurs | Description |
| - | - |
| Bottlenecks | Goulots d'étranglement et blocages. |
| Vertex related | Vertex, primitives, élimination et découpage. |
| Texture related | Unité de texture et UAV. |
| Shader related | Performances et statistiques des nuanceurs. |
| Pixels related | Couleur, profondeur et gabarit, pixels, échantillons et quads. |
| CP | Command Processor. Lit et exécute les paquets du tampon de commandes. |
| CB | Color Block. Gère les écritures de couleur, le mélange, l'anticrénelage multi-échantillon (MSAA) et la compression des couleurs. |
| DB | Depth Block. Gère les tests de profondeur/gabarit et la compression de profondeur/gabarit. |
| GRBM | Graphics Register Bus Manager. |
| SU | Triangle Setup. Gère l'assemblage des primitives, le découpage et l'élimination. |
| SC | Scan Converter. Gère la décomposition des triangles en tuiles/quads et les tests Hi-Z. |
| SX | Shader Export. Gère la sortie des nuanceurs pour la profondeur, la couleur, la position des vertex et les attributs. |
| SQ | Sequencer. Gère l'exécution des instructions des nuanceurs. |
| TA | Texture Addressing Block. Génère les requêtes de lecture et d'écriture pour le cache L1. |
| TD | Texture Data Block. Retourne les données du cache L1 vers les pipes des nuanceurs. |
| TCP | Cache L1 (Texture Cache per Pipe). Gère toutes les lectures et écritures de textures et de tampons pour les pipes des nuanceurs. |
| TCC | Cache L2 (Texture Cache per Channel). Gère toutes les lectures, écritures et opérations atomiques autres que CB/DB pour le GPU. |
| TCA | Cache L2 (Texture Cache Arbiter). |
| GDS | Global Data Share. |
| VGT | Vertex Geometry Tesselator. Il s'agit du bloc principal chargé de prendre en charge tous les paquets de dessin. |
| IA | Input Assembler. Reçoit les groupes de travail et les divise en groupes de primitives pour le VGT. Extrait les index de la mémoire. |
| MC\_HV\_MCB\_L1TLB | Translation Lookaside Buffer de niveau 1 HV MCB. |
| MC\_HV\_MCD\_L1TLB | Translation Lookaside Buffer de niveau 1 HV MCD. |
| MC\_MCB\_L1TLB | Translation Lookaside Buffer de niveau 1 MCB. |
| MC\_MCD\_L1TLB | Translation Lookaside Buffer de niveau 1 MCD. |
| MC\_HV\_L2TLB | Translation Lookaside Buffer de niveau 2. |
| MC\_L2TLB | Translation Lookaside Buffer de niveau 2 du contrôleur de mémoire. |
| MC\_ARB | Memory Controller Arbiter. Gère l'arbitrage de l'accès à la mémoire Frame Buffer. |
| MC\_CITF | Memory Controller Client Interface. Achemine les transactions des clients à large bande passante CB, DB et TC vers leurs canaux mappés. |
| MC\_HUB | Memory Controller Hub. Achemine les transactions des clients à faible bande passante et achemine aussi le trafic vers la mémoire système ou vers des canaux de mémoire distants sur puce ou hors puce. |

**Figure 1.  Quelques compteurs matériels d'une image de l'exemple Simple Ray Tracing.** <img src="https://mintcdn.com/microsoft-4404708b/cbgdF-D3rUKJ-fFH/images/gdk/tools/pix_gpu_counters.png?fit=max&auto=format&n=cbgdF-D3rUKJ-fFH&q=85&s=1b572c3954c3ef29ded3139418e10440" alt="Quelques compteurs matériels d'une image de l'exemple Simple Ray Tracing." width="1538" height="429" data-path="images/gdk/tools/pix_gpu_counters.png" />

Pour modifier l'ordre des colonnes dans la fenêtre **Events**, faites glisser les noms vers un nouvel emplacement. Pour supprimer une colonne, désélectionnez-la dans la fenêtre **Counters** ou faites glisser son nom hors de sa colonne et déposez-le.

**Figure 2.  Glissement et suppression d'une colonne.** <img src="https://mintcdn.com/microsoft-4404708b/cbgdF-D3rUKJ-fFH/images/gdk/tools/pix_gpu_counterdelete.png?fit=max&auto=format&n=cbgdF-D3rUKJ-fFH&q=85&s=b13e8bc0f27445a5c1397b53d5afbb21" alt="Glissement et suppression d'une colonne." width="1012" height="144" data-path="images/gdk/tools/pix_gpu_counterdelete.png" />

<a id="ID4EKCAC" />

### Tri et filtrage

Le tableau **Event** peut être trié en cliquant sur l'en-tête de colonne. Pour une colonne numérique, le tri alterne entre l'ordre croissant et l'ordre décroissant. Pour la colonne **Name**, le tri passe successivement par l'ordre alphabétique croissant, l'ordre alphabétique décroissant et l'ordre d'origine des événements.

Dans la liste déroulante **Filter** illustrée à la figure 5, trois options permettent de contrôler la liste des compteurs affichés.

1. **(all)** : affiche tous les compteurs matériels.
2. **(selected)** : affiche uniquement les compteurs actuellement sélectionnés.
3. **Texte** : saisissez du texte; seuls les compteurs dont le texte correspond sont affichés.

<a id="ID4EKDAC" />

### Représentation graphique des compteurs

Pour représenter graphiquement un compteur dans le temps, cliquez avec le bouton droit sur l'en-tête de colonne, puis cliquez sur **Add to Graph**. Un graphique des valeurs en fonction de la chronologie s'affiche. Vous pouvez ajouter jusqu'à quatre compteurs au graphique. Pour supprimer un compteur du graphique, cliquez avec le bouton droit sur l'en-tête de colonne et sélectionnez **Remove from Graph**.

**Figure 3.  Graphique du nombre de vertex reçus (en rouge) par rapport au nombre de primitives éliminées (en bleu).** <img src="https://mintcdn.com/microsoft-4404708b/cbgdF-D3rUKJ-fFH/images/gdk/tools/pix_gpu_countergraph.png?fit=max&auto=format&n=cbgdF-D3rUKJ-fFH&q=85&s=693a8ad6ea4775e298969d2716a62afe" alt="Graphique du nombre de vertex reçus, en rouge, par rapport au nombre de primitives éliminées, en bleu." width="1656" height="808" data-path="images/gdk/tools/pix_gpu_countergraph.png" />

**Figure 4.   Cliquez avec le bouton droit en haut du graphique pour activer diverses options de zoom. Zoom to All est la vue par défaut.** <img src="https://mintcdn.com/microsoft-4404708b/cbgdF-D3rUKJ-fFH/images/gdk/tools/pix_gpu_graphzoom.png?fit=max&auto=format&n=cbgdF-D3rUKJ-fFH&q=85&s=4b61cfe385c5aaa1af57467240eadcb9" alt="Cliquez avec le bouton droit en haut du graphique pour activer diverses options de zoom. Zoom to All est la vue par défaut." width="618" height="176" data-path="images/gdk/tools/pix_gpu_graphzoom.png" />

**Figure 5.  Utilisez le menu personnalisé pour importer et exporter des ensembles de compteurs. Utilisez le filtre pour limiter les compteurs répertoriés.** <img src="https://mintcdn.com/microsoft-4404708b/cbgdF-D3rUKJ-fFH/images/gdk/tools/pix_gpu_counters2.png?fit=max&auto=format&n=cbgdF-D3rUKJ-fFH&q=85&s=4f7d17417b2db3a52a6c5401f5889cd7" alt="Utilisez le menu personnalisé pour importer et exporter des ensembles de compteurs. Utilisez le filtre pour limiter les compteurs répertoriés." width="356" height="266" data-path="images/gdk/tools/pix_gpu_counters2.png" />

Pour plus de renseignements, consultez la section Profiling memory traffic in PIX du document XBOX One GPU Memory Access [(XBOX Developer Downloads->XBOX One->All XBOX One XDK CHMs)](https://aka.ms/gdkdl).

<a id="ID4EOEAC" />

## Voir aussi

[Analyser les performances d'un titre](/fr-CA/tools/tools-console/pix/analyzing-system-performance)

[PIX](/fr-CA/tools/tools-console/pix/pix)

[Prise en charge de l'analyse d'ExecuteIndirect dans PIX](/fr-CA/tools/tools-console/pix/gpu/pix-gpu-executeindirect)


## Related topics

- [PIXReportCounter](/fr-CA/reference/tools/pix3/functions/pixreportcounter.md)
- [Capture GPU et analyse des performances avec PIX](/fr-CA/tools/tools-console/pix/gpu/index.md)
- [Répertoire des rubriques NDA : liens actifs vers Microsoft Learn](/fr-CA/nda/nda-topic-directory.md)
- [Profilage de durabilité avec PIX](/fr-CA/build/game-principles/sustainability/sustainability-pix-guide.md)
- [PIX3](/fr-CA/reference/tools/pix3/pix3_members.md)
