Wattson est un outil logiciel qui fournit une analyse basée sur les traces de la puissance et de l'énergie estimées des blocs matériels (tels que le CPU et le GPU) pour les applications s'exécutant sur les appareils Android compatibles. Wattson est conçu pour rendre les tests de puissance aussi simples, évolutifs et reproductibles que les tests de performances, en surmontant les défis matériels importants traditionnellement associés à la mesure de la puissance.
Problèmes liés aux tests de puissance
L'analyse des performances peut être effectuée avec un appareil de développement standard, mais il existe des difficultés importantes lors des tests de puissance :
- Matériel complexe : les tests de puissance nécessitent un matériel de mesure coûteux et personnalisé, qui est sujet à des erreurs de configuration et de calibration.
- Évolutivité limitée : le coût et les frais de maintenance de ce matériel rendent difficile l'évolutivité dans un laboratoire de test.
- Reproductibilité médiocre : la consommation d'énergie est sensible aux différences de fabrication, à la température ambiante et à la calibration du matériel, ce qui rend les résultats difficiles à reproduire de manière cohérente.
- Attribution approximative : même avec le meilleur matériel, l'attribution de la puissance est souvent limitée à l'ensemble de l'appareil ou, au mieux, à un rail d'alimentation spécifique. Il est donc difficile de déterminer quels threads logiciels sont responsables de la consommation d'énergie.
Wattson : analyse de la consommation électrique avec un logiciel
Wattson résout ces problèmes d'analyse de la consommation en déplaçant l'analyse du matériel vers le logiciel. Wattson s'appuie sur Perfetto, l'outil de traçage à l'échelle du système d'Android, pour analyser l'activité des blocs matériels et fournir des estimations de puissance haute fidélité sans aucun équipement de mesure externe.
Fonctionnement de Wattson
Wattson s'appuie sur les tracepoints du noyau existants capturés par Perfetto, en particulier les événements cpufreq, cpuidle et de planification des threads. En traitant ces données de trace, Wattson génère des estimations détaillées de la consommation électrique sous forme de séries temporelles pour chaque bloc matériel.
Voici les principaux avantages de cette approche :
- Aucun coût de configuration : Wattson ne nécessite aucun matériel ni dépense supplémentaires. Si vous pouvez capturer une trace Perfetto, vous pouvez utiliser Wattson.
- Attribution au niveau du thread : les développeurs peuvent consulter des estimations précises de la consommation d'énergie pour chaque thread, ce qui permet une optimisation ciblée.
- Haute résolution et fidélité : les estimations de Wattson sont extrêmement corrélées aux mesures matérielles de vérité terrain, ce qui les rend fiables pour les tests A/B et les analyses comparatives.
- Scalabilité : Wattson peut être intégré aux pipelines de tests automatisés et d'intégration continue (CI) pour détecter les régressions de consommation d'énergie de manière précoce.
Appareils compatibles
Voici quelques appareils compatibles :
- Pixel 6, 6 Pro et 6a
- Pixel 9, 9 Pro, 9 Pro XL, 9 Pro Fold et 9a
- Pixel 10, Pixel 10 Pro, Pixel 10 Pro XL et Pixel 10 Pro Fold
- Pixel Watch 2 et 3
- Galaxy XR (SXR2230P)
Si votre appareil utilise le même SoC que l'un des appareils compatibles, vous pouvez utiliser Wattson si la propriété Android ro.soc.model correspond au SoC compatible.
Pour demander de l'aide concernant d'autres appareils, contactez wattson-external@google.com.
Étapes suivantes
- Pour analyser la consommation d'énergie de votre application, consultez Collecter et analyser des traces.
- Pour toute question ou commentaire, contactez l'équipe de développement à l'adresse wattson-external@google.com.