> ## 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.

# Profiler le code d'initialisation et de démarrage d'un titre

> Profiler le code d'initialisation et de démarrage d'un titre

La séquence de démarrage d'un titre implique généralement de nombreuses allocations de mémoire et opérations d'E/S de fichiers, ainsi que d'autres tâches d'initialisation. La possibilité de profiler votre titre dès son lancement peut vous aider à optimiser votre code de démarrage et à vérifier que votre titre est prêt pour le jeu. La « capture dès le lancement » est prise en charge pour les [Timing Captures](/fr/tools/tools-console/pix/new-timing-captures), mais pas pour les [GPU Captures](/fr/tools/tools-console/pix/gpu/gpu-performance). Le périphérique Direct3D n'est pas encore initialisé lorsque ces captures précoces démarrent ; les GPU Captures ne peuvent donc pas être prises en charge.

<Note>
  La directive de préprocesseur USE\_PIX doit être fournie lors de la génération du titre pour permettre la capture dès le lancement.
</Note>

Le code de démarrage d'un titre peut être profilé à l'aide de la case à cocher **Capture Title Startup** et de la liste des jeux associée dans le volet des options de Timing Capture. La sélection de **Capture Title Startup** remplit la liste des jeux avec le nom des titres installés sur la console. Une liste déroulante des exécutables de chaque titre et une zone d'édition permettant de saisir des paramètres de ligne de commande sont également fournies.

<img src="https://mintcdn.com/microsoft-4404708b/stYRJgFi22xot4tO/images/gdk/tools/pix-capture-from-launch-ui1.png?fit=max&auto=format&n=stYRJgFi22xot4tO&q=85&s=2ddc9b9c656cf152f72ccc709eaa3e8c" alt="Liste des titres installés lorsque Capture Title Start est sélectionné" width="436" height="352" data-path="images/gdk/tools/pix-capture-from-launch-ui1.png" />

Après avoir sélectionné un titre et saisi les éventuels paramètres de commande, cliquez sur le bouton **Start Timing Capture** pour démarrer la capture.

Une fois le bouton **Stop Timing Capture** sélectionné, PIX ouvre le document de capture comme il le ferait habituellement. La chronologie de la Timing Capture présente une période sans activité au début de la capture. Les données sont affichées à partir du moment où l'exécution du titre a repris. La capture d'écran suivante montre une Timing Capture d'un titre capturé dès son lancement. Après la période d'inactivité du début de la capture, la chronologie est remplie avec les données de la séquence de démarrage du titre. Dans cette capture d'écran, les premiers échantillons proviennent de la fonction `WinMain` du titre.

<img src="https://mintcdn.com/microsoft-4404708b/stYRJgFi22xot4tO/images/gdk/tools/pix-capture-from-launch.png?fit=max&auto=format&n=stYRJgFi22xot4tO&q=85&s=fff147277fd6fb388bb271215705a38a" alt="Capture d'écran d'une Timing Capture d'un titre capturé dès son lancement" width="810" height="731" data-path="images/gdk/tools/pix-capture-from-launch.png" />

## Capturer dès le lancement à l'aide de xbApp deferExecution

La possibilité de capturer la séquence de lancement d'un titre directement depuis PIX a été ajoutée dans la version de mars 2022 du Microsoft Game Development Kit (GDK). Si vous utilisez une version antérieure du Microsoft Game Development Kit (GDK), la capture dès le lancement est prise en charge à l'aide d'une combinaison de PIX et de l'outil en ligne de commande [xbapp](/fr/tools/tools-console/commandlinetools/xbapp).

La capture dès le lancement à l'aide de [xbapp](/fr/tools/tools-console/commandlinetools/xbapp) comprend les étapes suivantes.

1. Utilisez [xbapp](/fr/tools/tools-console/commandlinetools/xbapp#xbapp_launch) pour lancer votre titre à l'état d'exécution différée.
2. Passez à PIX, puis démarrez votre capture.
3. Poursuivez l'exécution de votre titre à l'aide de [xbapp](/fr/tools/tools-console/commandlinetools/xbapp#xbapp_continueexecution).
4. Arrêtez la capture PIX lorsque nécessaire. Votre capture s'ouvre comme d'habitude dans PIX.

La commande `launch` de `xbapp` comprend une option appelée `/deferExecution` qui lance un titre avec une exécution différée. Lorsqu'un titre est lancé de cette manière, le processus est créé, mais le thread principal est créé à l'état suspendu. Voici un exemple de lancement d'un titre avec exécution différée.

```text theme={null}
xbapp launch /deferExecution xD:\Drives\Development\SimpleMSAA.exe
```

Après avoir lancé un titre avec exécution différée, passez à PIX et démarrez une capture comme d'habitude. PIX s'attache au titre et commence à collecter des données au début de l'exécution.

Utilisez le verbe `continueExecution` de `xbapp` pour démarrer l'exécution de votre titre, comme illustré dans l'exemple suivant.

```text theme={null}
xbapp continueExecution
```

## Voir aussi

[xbapp](/fr/tools/tools-console/commandlinetools/xbapp)

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


## Related topics

- [Détection de l'état d'initialisation du réseau](/fr/build/console-features/networking/initialization-connectivity-networking.md)
- [Serveurs de jeu à partir d'une entité de titre](/fr/services/playfab/sdks/c/server.md)
- [Implémentation de Game Saves avec le GDK d'octobre 2025](/fr/services/playfab/player-progression/game-saves/october-2025-gdk-changes.md)
- [Cycle de vie d'un serveur multijoueur](/fr/services/playfab/multiplayer/servers/multiplayer-game-server-lifecycle.md)
- [Azure PlayFab Party](/fr/build/console-features/networking/game-mesh/playfab-party-intro-networking.md)
