功率分析概览

Wattson 是一款基于软件的工具,可对在受支持的 Android 设备上运行的应用的硬件块(例如 CPU 和 GPU)功耗和能耗估算值进行基于跟踪记录的分析。Wattson 旨在使功耗测试像 性能测试一样简单、可扩缩且可重现,从而克服 传统上与功耗 测量相关的重大硬件挑战。

功耗测试挑战

性能分析可以使用标准开发设备完成,但在测试功耗时会面临重大挑战:

  • 复杂的硬件: 功耗测试需要昂贵的定制测量硬件,这种硬件容易出现设置和校准错误。
  • 可扩缩性有限: 此硬件的成本和维护开销使其难以在测试实验室中扩缩。
  • 重现性差: 功耗对制造差异、环境温度和硬件校准非常敏感,因此难以始终如一地重现结果。
  • 粗略的归因: 即使使用最好的硬件,功耗归因通常也仅限于整个设备,或者最多是特定的电源轨,因此难以确定哪些软件线程负责能耗。

Wattson:使用软件进行功耗分析

Wattson 通过将分析从硬件转移到软件来解决这些功耗分析挑战。Wattson 基于 Android 的系统级跟踪记录工具 Perfetto 构建,用于分析硬件块活动并提供高保真度的功耗估算值,而无需任何外部测量设备。

Wattson 的工作原理

Wattson 利用 Perfetto捕获的现有内核跟踪点,特别是 cpufreqcpuidle、 和线程调度事件。通过处理此跟踪记录数据,Wattson 会为每个硬件块生成详细的时间序列功耗估算值。 此方法的主要优势包括:

  • 零设置成本: Wattson 不需要额外的硬件或费用。如果您可以捕获 Perfetto 跟踪记录,则可以使用 Wattson。
  • 线程级归因: 开发者可以查看各个线程的精确能源消耗估算值,从而实现有针对性的优化。
  • 高分辨率和保真度: Wattson 的估算值与实际硬件测量值高度相关,因此可用于 A/B 测试和比较分析。
  • 可扩缩性: Wattson 可以集成到自动化测试和持续集成 (CI) 流水线中,以便尽早发现功耗回归。

支持的设备

支持的 SoC 包括:

制造商 SoC ro.soc.model 示例设备
Google Tensor G1 Tensor Pixel 6、6 Pro 和 6a
Tensor G4 Tensor G4 Pixel 9、9 Pro、9 Pro XL、9 Pro Fold 和 9a
G5 Tensor G5 Pixel 10、10 Pro、10 Pro XL 和 10 Pro Fold
Qualcomm SW5100 monaco Pixel Watch 2、3 和 4
SXR2230P SXR2230P Galaxy XR
SM8750 SM8750 Samsung S25
MediaTek MT6897 MT6897 Transsion Infinix Note 50 Pro+ 5G

如需请求支持其他设备,请与 wattson-external@google.com联系。

接下来怎么做?