Wattson to narzędzie oparte na oprogramowaniu, które umożliwia analizę śledzenia mocy i energii bloków sprzętowych (takich jak CPU i GPU) w przypadku aplikacji działających na obsługiwanych urządzeniach z Androidem. Wattson został zaprojektowany tak, aby testowanie zasilania było tak proste, skalowalne i powtarzalne jak testowanie wydajności. Rozwiązuje on poważne problemy sprzętowe tradycyjnie związane z pomiarami zasilania.
Problemy z testowaniem zasilania
Analizę wydajności można przeprowadzić na standardowym urządzeniu deweloperskim, ale testowanie zasilania wiąże się z poważnymi wyzwaniami:
- Złożony sprzęt: testowanie zużycia energii wymaga drogiego, specjalnie skonstruowanego sprzętu pomiarowego, który jest podatny na błędy konfiguracji i kalibracji.
- Ograniczona skalowalność: koszt i nakład pracy związany z konserwacją tego sprzętu utrudniają skalowanie w laboratorium testowym.
- Słaba powtarzalność: zużycie energii jest wrażliwe na różnice w procesie produkcji, temperaturę otoczenia i kalibrację sprzętu, co utrudnia uzyskiwanie spójnych wyników.
- Przybliżona atrybucja: nawet w przypadku najlepszego sprzętu atrybucja energii jest często ograniczona do całego urządzenia lub, w najlepszym przypadku, do konkretnej szyny zasilającej, co utrudnia określenie, które wątki oprogramowania są odpowiedzialne za zużycie energii.
Wattson: analiza mocy za pomocą oprogramowania
Wattson rozwiązuje te problemy z analizą zasilania, przenosząc analizę ze sprzętu do oprogramowania. Wattson korzysta z Perfetto, narzędzia do śledzenia w całym systemie Android, aby analizować aktywność bloków sprzętowych i dostarczać precyzyjne szacunki zużycia energii bez użycia zewnętrznego sprzętu pomiarowego.
Jak działa Wattson
Wattson korzysta z istniejących punktów śledzenia jądra rejestrowanych przez Perfetto, a w szczególności z cpufreq, cpuidle i zdarzeń planowania wątków. Przetwarzając te dane śledzenia, Wattson generuje szczegółowe szacunki mocy w postaci szeregów czasowych dla każdego bloku sprzętowego.
Najważniejsze zalety tego podejścia to:
- Brak kosztów konfiguracji: Wattson nie wymaga dodatkowego sprzętu ani wydatków. Jeśli możesz zarejestrować ślad Perfetto, możesz używać Wattsona.
- Atrybucja na poziomie wątku: deweloperzy mogą wyświetlać dokładne szacunki zużycia energii w przypadku poszczególnych wątków, co umożliwia ukierunkowaną optymalizację.
- Wysoka rozdzielczość i dokładność: szacunki Wattsona są bardzo dobrze skorelowane z rzeczywistymi pomiarami sprzętowymi, co sprawia, że jest to wiarygodne narzędzie do testów A/B i analizy porównawczej.
- Skalowalność: Wattson można zintegrować z automatycznym testowaniem i ciągłą integracją (CI), aby wcześnie wykrywać regresje zużycia energii.
Obsługiwane urządzenia
Obsługiwane urządzenia to:
- Pixel 6, 6 Pro i 6a
- Pixel 9, 9 Pro, 9 Pro XL, 9 Pro Fold i 9a
- Pixel 10, 10 Pro, 10 Pro XL i 10 Pro Fold
- Pixel Watch 2 i 3
- Galaxy XR (SXR2230P)
Jeśli Twoje urządzenie korzysta z tego samego układu SoC co jedno z obsługiwanych urządzeń, możesz używać Wattsona, jeśli właściwość Androida ro.soc.model jest zgodna z obsługiwanym układem SoC.
Aby poprosić o pomoc dotyczącą dodatkowych urządzeń, napisz na adres wattson-external@google.com.
Co dalej?
- Aby przeanalizować zużycie energii przez aplikację, przeczytaj artykuł Zbieranie i analizowanie śladów.
- Jeśli masz pytania lub uwagi, skontaktuj się z zespołem deweloperów pod adresem wattson-external@google.com.