Wattson ist ein softwarebasiertes Tool, das eine tracebasierte Analyse der Hardware block-Leistungs- und Energieverbrauchsschätzungen (z. B. CPU und GPU) für Apps bietet, die auf unterstützten Android-Geräten ausgeführt werden. Mit Wattson soll das Testen des Energieverbrauchs so einfach, skalierbar und reproduzierbar wie Leistungstests werden. Die erheblichen Hardwareherausforderungen, die traditionell mit der Leistungsmessung verbunden sind, werden dabei überwunden.
Herausforderungen beim Testen des Energieverbrauchs
Leistungsanalysen können mit einem Standardentwicklungsgerät durchgeführt werden. Beim Testen des Energieverbrauchs gibt es jedoch erhebliche Herausforderungen:
- Komplexe Hardware:Für Leistungstests ist teure, speziell angefertigte Messhardware erforderlich, bei der es häufig zu Einrichtungs- und Kalibrierungsfehlern kommt.
- Begrenzte Skalierbarkeit:Die Kosten und der Wartungsaufwand für diese Hardware erschweren die Skalierung in einem Testlabor.
- Geringe Reproduzierbarkeit:Der Energieverbrauch ist anfällig für Fertigungsunterschiede, Umgebungstemperaturen und Hardwarekalibrierung. Daher sind die Ergebnisse schwer konsistent zu reproduzieren.
- Grobe Zuordnung:Selbst mit der besten Hardware ist die Zuordnung des Energieverbrauchs oft auf das gesamte Gerät oder bestenfalls auf eine bestimmte Stromschiene beschränkt. So lässt sich nur schwer feststellen, welche Software-Threads für den Energieverbrauch verantwortlich sind.
Wattson: Energieverbrauchsanalyse mit Software
Wattson löst diese Herausforderungen bei der Energieverbrauchsanalyse, indem die Analyse von der Hardware zur Software verlagert wird. Wattson basiert auf Perfetto, dem systemweiten Tracing-Tool von Android, mit dem die Aktivität von Hardwareblöcken analysiert und genaue Schätzungen des Energieverbrauchs ohne externe Messgeräte bereitgestellt werden können.
Funktionsweise von Wattson
Wattson nutzt vorhandene Kernel-Tracepoints, die von
Perfetto erfasst werden, insbesondere cpufreq, cpuidle,
und Thread-Planungsereignisse. Durch die Verarbeitung dieser Trace-Daten generiert Wattson detaillierte Zeitreihenschätzungen des Energieverbrauchs für jeden Hardwareblock.
Die wichtigsten Vorteile dieses Ansatzes sind:
- Keine Einrichtungskosten:Für Wattson ist keine zusätzliche Hardware oder kein zusätzlicher Aufwand erforderlich. Wenn Sie einen Perfetto-Trace erfassen können, können Sie Wattson verwenden.
- Zuordnung auf Thread-Ebene:Entwickler können genaue Schätzungen des Energieverbrauchs für einzelne Threads sehen, was eine gezielte Optimierung ermöglicht.
- Hohe Auflösung und Genauigkeit:Die Schätzungen von Wattson stimmen sehr gut mit den Hardwaremessungen der Ground Truth überein. Daher ist das Tool zuverlässig für A/B-Tests und vergleichende Analysen.
- Skalierbarkeit:Wattson kann in automatisierte Test- und Continuous-Integration-Pipelines (CI) eingebunden werden, um Leistungsregressionen frühzeitig zu erkennen.
Unterstützte Geräte
Zu den unterstützten SoCs gehören:
| Hersteller | SoC | ro.soc.model | Beispielgeräte |
|---|---|---|---|
| Tensor G1 | Tensor | Pixel 6, 6 Pro und 6a | |
| Tensor G4 | Tensor G4 | Pixel 9, 9 Pro, 9 Pro XL, 9 Pro Fold und 9a | |
| G5 | Tensor G5 | Pixel 10, 10 Pro, 10 Pro XL und 10 Pro Fold | |
| Qualcomm | SW5100 | Monaco | Pixel Watch 2, 3 und 4 |
| SXR2230P | SXR2230P | Galaxy XR | |
| SM8750 | SM8750 | Samsung S25 | |
| MediaTek | MT6897 | MT6897 | Transsion Infinix Note 50 Pro+ 5G |
Wenn Sie Unterstützung für weitere Geräte anfordern möchten, wenden Sie sich an wattson-external@google.com.
Nächste Schritte
- Informationen zum Analysieren des Energieverbrauchs Ihrer App finden Sie unter Traces erfassen und analysieren.
- Bei Fragen oder Feedback wenden Sie sich bitte an das Entwicklungsteam unter wattson-external@google.com.