Wattson は、サポートされている Android デバイスで実行されているアプリのハードウェア ブロック(CPU や GPU など)の電力とエネルギーの推定値をトレースベースで分析するソフトウェア ベースのツールです。Wattson は、パフォーマンス テストと同様に、電力テストを簡単かつスケーラブルで再現可能なものにするように設計されており、従来電力測定に関連付けられていたハードウェアの大きな課題を克服しています。
電源テストの課題
パフォーマンス分析は標準の開発デバイスで行うことができますが、電力のテストには大きな課題があります。
- 複雑なハードウェア: 消費電力テストには、高価なカスタムメイドの測定ハードウェアが必要であり、セットアップと調整のエラーが発生しやすい。
- スケーラビリティの制限: このハードウェアの費用とメンテナンスのオーバーヘッドにより、テストラボ全体でスケーリングすることが困難になります。
- 再現性が低い: 消費電力は製造上の違い、周囲温度、ハードウェアのキャリブレーションに影響を受けやすく、結果を再現することが難しい。
- 粗いアトリビューション: 最高のハードウェアでも、電力アトリビューションはデバイス全体または特定の電力レールに限定されることが多く、どのソフトウェア スレッドがエネルギー消費の原因となっているかを特定することは困難です。
Wattson: ソフトウェアによる電力分析
Wattson は、分析をハードウェアからソフトウェアに移行することで、これらの電力分析の課題を解決します。Wattson は、Android のシステム全体のトレースツールである Perfetto をベースに構築されており、ハードウェア ブロックのアクティビティを分析し、外部測定機器を使用せずに高精度の電力推定を提供します。
Wattson の仕組み
Wattson は、Perfetto によってキャプチャされた既存のカーネル トレースポイント(具体的には cpufreq、cpuidle、スレッド スケジューリング イベント)を活用します。このトレースデータを処理することで、Wattson は各ハードウェア ブロックの詳細な時系列電力推定値を生成します。このアプローチの主なメリットは次のとおりです。
- セットアップ費用が不要: Wattson には追加のハードウェアや費用は必要ありません。Perfetto トレースをキャプチャできる場合は、Wattson を使用できます。
- スレッドレベルのアトリビューション: デベロッパーは個々のスレッドの正確なエネルギー消費量の推定値を確認できるため、的を絞った最適化が可能になります。
- 高解像度と忠実度: Wattson の推定値は、グラウンド トゥルースのハードウェア測定値と非常に高い相関関係があるため、A/B テストや比較分析に信頼性があります。
- スケーラビリティ: Wattson を自動テストと継続的インテグレーション(CI)パイプラインに統合して、電力の回帰を早期に検出できます。
サポートされているデバイス
対応デバイスは次のとおりです。
- Google Pixel 6、Google Pixel 6 Pro、Google Pixel 6a
- Google Pixel 9、Google Pixel 9 Pro、Google Pixel 9 Pro XL
- Google Pixel Fold
- Google Pixel Watch 2、Google Pixel Watch 3
サポート対象のデバイスを追加するには、wattson-external@google.com までお問い合わせください。
次のステップ
- アプリの消費電力を分析するには、トレースを収集して分析するをご覧ください。
- ご質問やフィードバックについては、開発チーム(wattson-external@google.com)までお問い合わせください。