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 du 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 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 cpufreq, cpuidle et les événements de planification des threads. En traitant ces données de trace, Wattson génère des estimations détaillées de la puissance 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 et 9 Pro XL
- Pixel Fold
- Pixel Watch 2 et 3
Pour que d'autres appareils soient compatibles, 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.