Wattson — это программный инструмент, предоставляющий анализ энергопотребления аппаратных блоков (таких как ЦП и ГП) и оценок энергопотребления для приложений, работающих на поддерживаемых устройствах Android. Wattson разработан для того, чтобы сделать тестирование энергопотребления таким же простым, масштабируемым и воспроизводимым, как и тестирование производительности, преодолевая значительные аппаратные проблемы, традиционно связанные с измерением энергопотребления.
проблемы тестирования мощности
Анализ производительности можно проводить с помощью стандартного устройства для разработки, но при тестировании энергопотребления возникают существенные сложности:
- Сложное оборудование: Для тестирования мощности требуется дорогостоящее, изготовленное на заказ измерительное оборудование, которое подвержено ошибкам настройки и калибровки.
- Ограниченная масштабируемость: высокая стоимость и затраты на техническое обслуживание этого оборудования затрудняют его масштабирование в рамках всей испытательной лаборатории.
- Низкая воспроизводимость: энергопотребление чувствительно к производственным различиям, температуре окружающей среды и калибровке оборудования, что затрудняет стабильное воспроизведение результатов.
- Приблизительное определение источников энергопотребления: даже при использовании самого лучшего оборудования определение источников питания часто ограничивается всем устройством или, в лучшем случае, конкретной линией питания, что затрудняет выявление того, какие программные потоки отвечают за потребление энергии.
Уотсон: анализ мощности с помощью программного обеспечения
Wattson решает эти проблемы анализа энергопотребления, перенося анализ с аппаратного обеспечения на программное. Wattson построен на основе Perfetto, общесистемного инструмента трассировки Android, для анализа активности аппаратных блоков и предоставления высокоточных оценок энергопотребления без какого-либо внешнего измерительного оборудования.
Как работает Wattson
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, 9 Pro Fold и 9a
- Pixel 10, 10 Pro, 10 Pro XL и 10 Pro Fold
- Pixel Watch 2 и 3
- Galaxy XR (SXR2230P)
Если ваше устройство использует тот же SoC, что и одно из поддерживаемых устройств, вы можете использовать Wattson, если свойство Android ro.soc.model соответствует поддерживаемому SoC.
Для запроса поддержки дополнительных устройств обращайтесь по адресу wattson-external@google.com .
Что дальше?
- Для анализа энергопотребления вашего приложения см. раздел «Сбор и анализ трассировок» .
- По вопросам или для обратной связи обращайтесь к команде разработчиков по адресу wattson-external@google.com .