Wattson은 지원되는 Android 기기에서 실행되는 앱의 하드웨어 블록 (예: CPU 및 GPU) 전력 및 에너지 추정치를 추적 기반으로 분석하는 소프트웨어 기반 도구입니다. Wattson은 성능 테스트만큼 간단하고 확장 가능하며 재현 가능한 전력 테스트를 수행하도록 설계되어 기존에 전력 측정과 관련이 있었던 심각한 하드웨어 문제를 해결합니다.
전원 테스트 문제
성능 분석은 표준 개발 기기로 실행할 수 있지만 전력 테스트에는 다음과 같은 심각한 문제가 있습니다.
- 복잡한 하드웨어: 전력 테스트에는 설정 및 교정 오류가 발생하기 쉬운 맞춤형 측정 하드웨어가 필요하며 비용이 많이 듭니다.
- 확장성 제한: 이 하드웨어의 비용과 유지관리 오버헤드로 인해 테스트 실험실 전체에서 확장하기가 어렵습니다.
- 재현성 부족: 전력 소비는 제조 차이, 주변 온도, 하드웨어 보정에 민감하므로 결과를 일관되게 재현하기 어렵습니다.
- 대략적인 기여도 분석: 최고의 하드웨어를 사용하더라도 전력 기여도 분석은 전체 기기 또는 특정 전력 레일로 제한되는 경우가 많아 에너지 소비를 담당하는 소프트웨어 스레드를 정확히 파악하기 어렵습니다.
Wattson: 소프트웨어를 사용한 전력 분석
Wattson은 하드웨어에서 소프트웨어로 분석을 이동하여 이러한 전력 분석 문제를 해결합니다. Wattson은 Android의 시스템 전체 추적 도구인 Perfetto를 기반으로 빌드되어 하드웨어 블록 활동을 분석하고 외부 측정 장비 없이 충실도가 높은 전력 추정치를 제공합니다.
왓슨 작동 방식
Wattson은 Perfetto에서 캡처한 기존 커널 트레이스 포인트, 특히 cpufreq, cpuidle, 스레드 예약 이벤트를 활용합니다. 이 추적 데이터를 처리하여 Wattson은 각 하드웨어 블록에 대한 자세한 시계열 전력 추정치를 생성합니다.
이 접근 방식의 주요 이점은 다음과 같습니다.
- 설정 비용 없음: Wattson에는 추가 하드웨어나 비용이 필요하지 않습니다. Perfetto 트레이스를 캡처할 수 있는 경우 Wattson을 사용할 수 있습니다.
- 스레드 수준 기여 분석: 개발자는 개별 스레드의 정확한 에너지 소비 추정치를 확인할 수 있으므로 타겟팅된 최적화가 가능합니다.
- 높은 해상도와 충실도: Wattson의 추정치는 정답 하드웨어 측정과 매우 잘 상관되므로 A/B 테스트 및 비교 분석에 신뢰할 수 있습니다.
- 확장성: Wattson을 자동화된 테스트 및 지속적 통합 (CI) 파이프라인에 통합하여 전력 회귀를 조기에 포착할 수 있습니다.
지원되는 기기
지원되는 기기는 다음과 같습니다.
- Pixel 6, 6 Pro, 6a
- Pixel 9, 9 Pro, 9 Pro XL
- Pixel Fold
- Pixel Watch 2 및 3
추가 기기를 지원하려면 wattson-external@google.com에 문의하세요.
다음 단계
- 앱의 전력 소비를 분석하려면 trace 수집 및 분석을 참고하세요.
- 질문이나 의견이 있으면 개발팀(wattson-external@google.com)에 문의하세요.