Dans Android GPU Inspector (AGI), vous pouvez afficher et analyser un profil système dans l'interface utilisateur de System Profiler. Après avoir profilé un système et ouvert le fichier de trace dans AGI, le Profileur système affiche les données de profilage dans une chronologie avec des éléments développables qui affichent des informations supplémentaires.
L'interface utilisateur du Profiler système comprend les éléments suivants :
Barre d'outils
Zone de texte du filtre de pistes : filtre les pistes affichées dans le volet Piste.
Bouton d'informations (i) : affiche les métadonnées de la trace et de l'appareil.
Bouton d'aide ? : affiche les raccourcis clavier et souris.
Chronologie : indique la période des événements de trace.
Volet Piste : affiche les données de profilage par rapport à la chronologie.
Volet Détails : volet extensible qui affiche des informations détaillées sur un élément sélectionné.
Profilage des données
Dans un fichier de trace, les données de profilage sont stockées dans des événements horodatés appelés événements de trace. Les événements de trace se composent de différents types de tranches et de compteurs. Par exemple, les événements de trace du processeur incluent des tranches de planification, tandis que les événements de trace du GPU incluent des compteurs de performances du GPU et des tranches de thread.
Dans l'UI du Profileur système, le volet des pistes contient des événements de trace qui sont affichés dans des lignes appelées pistes, qui sont basées sur la chronologie. Les pistes du même type sont affichées dans des groupes de pistes.
Pistes GPU
Les pistes du GPU affichent des informations sur le profilage du GPU. Voici les principaux types de pistes GPU :
Pistes de file d'attente du GPU : activité du GPU de l'application.
Pistes de compteur de GPU : compteurs matériels du GPU échantillonnés à intervalles réguliers.
Piste d'événements Vulkan : événements liés à l'API Vulkan.
Pistes SurfaceFlinger : événements SurfaceFlinger, qui indiquent comment les tampons graphiques se déplacent dans le système.
Pistes de file d'attente du GPU
Un GPU peut comporter une ou plusieurs pistes de file d'attente GPU en fonction du nombre de files d'attente matérielles exécutées pendant la trace. Les pistes GPU Queue (File d'attente du GPU) contiennent des tranches d'activité qui représentent la période et le type de travail du GPU utilisé par votre application.
Une tranche d'activité contient des métadonnées que vous pouvez afficher, telles que le tampon de commandes Vulkan, le pass de rendu et le tampon de frame qui ont initié le travail. Les handles Vulkan de ces objets s'affichent dans le volet Détails comme suit :
VkCommandBuffer
VkRenderPass
VkFrameBuffer
Vous pouvez donner des noms conviviaux à ces objets pour les identifier facilement dans une trace à côté de leurs identifiants. Pour ce faire, utilisez la fonction vkSetDebugUtilsObjectNameEXT
de l'extension VK_EXT_debug_utils
ou la fonction vkDebugMarkerSetObjectNameEXT
de l'extension VK_EXT_debug_marker
. Les deux extensions sont implémentées par AGI et sont disponibles pour votre application lors du traçage.
Pistes de compteur de GPU
Les graphiques de compteurs de GPU suivent la valeur des compteurs de performances du GPU échantillonnés à un intervalle périodique. Les graphiques affichent les variations de performances des composants matériels sous-jacents de vos GPU entre les échantillons. Vous pouvez utiliser ces informations pour identifier les goulots d'étranglement dans votre utilisation des GPU.
Les compteurs disponibles sont spécifiques au matériel. Vous pouvez afficher de brèves descriptions de chaque compteur en pointant sur le nom de la piste. Pour en savoir plus, consultez Compteurs de performances du GPU.
Piste d'événements Vulkan
La piste d'événements Vulkan affiche les événements de l'API Vulkan enregistrés pendant la trace. Les types d'événements de suivi sont principalement des événements d'envoi de file d'attente (appels vkQueueSubmit
). Si vous cliquez sur un événement d'envoi de file d'attente, AGI met en surbrillance les tranches d'activité du GPU associées à l'appel. Vous pouvez utiliser ces données pour inspecter le travail asynchrone mis en file d'attente par les appels d'API Vulkan et la latence entre le CPU et le GPU.
Suivi SurfaceFlinger
Les pistes SurfaceFlinger suivent le cycle de vie des tampons graphiques (cibles de rendu de la chaîne d'échange d'une application) à mesure qu'ils progressent dans le système jusqu'à ce qu'ils soient affichés. Les événements sont agrégés par tampon pour faciliter le suivi de la surcharge et de la latence nécessaires à l'acquisition et à la publication des tampons.
Interagir avec les données de profilage
Cette section explique comment interagir avec les données de profilage dans l'interface utilisateur de System Profiler.
Épingler
Vous pouvez épingler des pistes et des groupes de pistes à l'aide de leur bouton d'épingle.
Réduire et développer
Certains titres et tous les groupes de titres peuvent être réduits. Certains groupes de pistes affichent un récapitulatif lorsqu'ils sont réduits. Par exemple, lorsqu'il est réduit, le groupe de pistes du processeur affiche l'utilisation globale du processeur dans un graphique.
Zoom
AGI agrège les données de profilage en fonction du niveau de zoom. Lorsque vous ouvrez un fichier de trace pour la première fois, l'UI du Profileur système affiche l'intégralité du profil au niveau de zoom arrière maximal. Vous pouvez inspecter le profil en recherchant des zones d'intérêt, puis en affichant les détails.
Lorsque vous effectuez un zoom avant ou arrière sur différents types de pistes, différents types de données de profilage s'affichent. Par exemple, les pistes de processeur affichent d'abord des tranches de temps pour chaque thread, puis passent à l'affichage des données d'utilisation des cœurs de processeur lorsque vous effectuez un zoom avant.
Afficher les détails
Vous pouvez afficher des métadonnées détaillées dans le volet d'informations en sélectionnant des éléments dans le volet de piste. Si un élément est sélectionnable, le curseur se transforme en pointeur lorsque vous le survolez. Vous pouvez ensuite choisir l'élément.
Sélectionner une période
Vous pouvez sélectionner une plage de temps, ce qui vous permet de comparer les événements de trace de différentes pistes. Pour ce faire, activez le mode Timing, puis faites glisser le doigt pour sélectionner une plage. Tout ce qui se trouve en dehors de la plage est atténué et la durée de la plage est affichée.
Vous pouvez également sélectionner la plage horaire d'une tranche sélectionnée en appuyant sur M
. Vous pouvez ensuite parcourir d'autres pistes pour identifier les événements de la même période.
Raccourcis de navigation
Vous pouvez parcourir les éléments du panneau de pistes à l'aide des touches WASD
ou en faisant défiler et en effectuant un panoramique. Le Profiler système utilise les mêmes raccourcis clavier et souris que Systrace.
Voici les raccourcis disponibles :
W
etS
, ouCtrl++
etCtrl+-
pour zoomer.- Les flèches
A
etD
, ouleft
etright
, permettent de faire pivoter la vue vers la gauche et vers la droite. - Les flèches
Q
etE
, ouup
etdown
permettent de faire défiler les pistes. - Appuyer de manière prolongée sur
shift
augmente la vitesse de déplacement dans la navigation. Ctrl
+défilement zoome sur l'élément sélectionné.F
: zoom sur un élément sélectionné.Z
+0
réinitialise le zoom et le réduit complètement.V
active ou désactive la mise en surbrillance de VSync si elle est disponible dans la trace.M
marque la sélection actuelle en sélectionnant sa période.H
ou?
affiche la feuille de triche des raccourcis clavier et souris.
Mode de navigation
La barre d'outils contient des boutons permettant de basculer entre les modes de navigation. Ils sélectionnent l'action effectuée lorsque vous faites glisser des éléments dans le volet des pistes. Vous pouvez également sélectionner les modes de navigation suivants en appuyant sur les touches 1
, 2
, 3
et 4
:
- Sélection : faites glisser le curseur pour sélectionner des éléments dans un rectangle.
- Panoramique : faites glisser pour effectuer un panoramique et faire défiler les pistes. Il s'agit du mode par défaut.
- Zoom : faites glisser votre doigt verticalement pour zoomer sur les éléments.
- Timing : faites glisser le curseur pour sélectionner une plage horaire.
Vous pouvez également utiliser les modes de navigation avec les touches de modification suivantes :
Shift+
: faites glisser le doigt pour sélectionner plusieurs éléments.- Faites glisser
Space+
pour faire un panoramique et faire défiler la page. Ctrl+
Faites défiler pour zoomer.Ctrl+
Faites glisser le doigt pour sélectionner une période.