Обзор профилирования системы

С помощью Android GPU Inspector (AGI) вы можете выполнять профилирование системы, включающее широкий спектр параметров трассировки и измерения производительности графического процессора для вашего приложения Android. По сравнению с инструментами профилирования Android Studio , AGI объединяет многие из этих возможностей в один инструмент, а затем обеспечивает более глубокий охват и анализ графического процессора. Доступные данные профилирования системы включают следующее:

  • Данные трассировки приложения, включая маркеры ATrace
  • Данные планирования ЦП и процессов
  • Информация о производительности графического процессора, такая как счетчики, активность и данные жизненного цикла.
  • Данные трассировки для вызовов API Vulkan
  • Статистика использования памяти
  • Статистика использования батареи

System Profiler — это компонент AGI, который управляет пользовательским интерфейсом и инструментами для профилирования системы по нескольким фреймам приложения. Он построен на основе системы отслеживания Perfetto . Информацию о компоненте AGI для профилирования отдельных кадров приложения см. в обзоре профилировщика кадров .

Начать

Краткое руководство по AGI описывает, как настроить AGI, записать профиль системы и затем открыть полученный файл трассировки. В следующем разделе параметры конфигурации описаны более подробно.

Параметры профилирования

В этом разделе описаны основные параметры, доступные при профилировании приложения .

Настройки приложения

Настройки приложения определяют приложение Android, которое будет запускаться и отслеживаться во время профилирования системы. Выбор приложения Android для отслеживания во время профилирования системы не является обязательным, но рекомендуется, поскольку без него результирующий файл трассировки не будет включать маркеры ATrace и активность графического процессора для приложения.

Параметры трассировки

Параметры трассировки определяют данные профилирования, которые необходимо собрать. Кнопка Настроить отображает доступные источники данных.

Чтобы свести к минимуму влияние на производительность вашего устройства Android при профилировании системы, мы рекомендуем вам выбирать меньше источников данных, если вы установили продолжительность трассировки более минуты. Однако для трассировок продолжительностью менее минуты можно выбрать все источники данных с минимальным влиянием.

Опции процессора

Опция CPU позволяет собирать данные о процессоре и планировании процессов через ftrace . Это позволяет вам увидеть, какой процесс и поток выполняются на каждом ядре ЦП. Вы также можете включить эти параметры:

  • Состояния частоты и простоя : собирает события изменения частоты ядра ЦП и состояния простоя, что позволяет проверить, как процессор увеличивается или уменьшается в зависимости от нагрузки.
  • Планирование цепочек/задержек : собирает дополнительные данные о состоянии потока о задержках и вытеснении планирования потоков.
  • Фрагменты потока : собирает маркеры ATrace в представлениях процесса.

Опции графического процессора

Параметры графического процессора позволяют профилировать использование графического процессора вашим приложением, например собирать данные о частоте графического процессора и использовании памяти. Для сбора этих данных необходимо указать приложение для отслеживания в настройках приложения . Опции включают следующее:

  • Счетчики : собирает образцы счетчиков графического процессора. Эти данные используются для определения загруженности графического процессора и обнаружения узких мест, поэтому мы рекомендуем вам настроить эти параметры.

    Счетчики зависят от аппаратного обеспечения. Например, минимальная частота сбора образцов ( Частота опроса ) может отличаться в зависимости от типа счетчика. Информацию о поддерживаемых счетчиках см. в разделе «Счетчики производительности графического процессора» .

  • Жизненный цикл кадра : отслеживает события SufaceFlinger , которые помогают определить, как буферы кадров перемещаются через ваше приложение, композитор и оконный менеджер. Эти события позволяют вам находить пропущенные кадры приложения и определять источники задержек в конвейере рендеринга.

  • Срезы Renderstage Собирают данные, которые помогают определить, как ваше приложение использует графический процессор.

Опции Вулкана

Параметры Vulkan позволяют отслеживать вызовы API Vulkan, которые затем можно включить по типу функции. Вы можете использовать эти данные для определения нагрузки на ЦП при вызовах API Vulkan. Трассировка записывает продолжительность каждого вызова функции, которая отображается в срезах потока вашего приложения при анализе данных в дорожке событий Vulkan .

Другие варианты

Дополнительные параметры профилирования системы включают в себя:

  • Память : собирайте важную статистику использования памяти как глобально, так и для каждого процесса.

  • Батарея : собирает статистику батареи. Это может дать вам приблизительную оценку энергопотребления вашего приложения.

  • Принудительное сохранение трассировки в файле на устройстве : данные трассировки обычно передаются через USB во время захвата трассировки, что требует наименьших затрат и позволяет создавать длинные трассировки. Однако если вы столкнулись с проблемами или потеряли данные профилирования из-за задержки USB, вы можете выбрать эту опцию, чтобы сохранить файл трассировки на устройстве, который AGI затем загружает после завершения трассировки. Для хранения файла трассировки требуется достаточно места во внутренней памяти вашего устройства.

Расширенный режим

Ссылка «Переключиться в расширенный режим» запускает режим расширенной конфигурации, который позволяет вручную редактировать конфигурацию трассировки Pefetto , в которой хранятся параметры профилирования.

Просмотр и анализ результатов

Когда вы открываете файл трассировки, содержащий данные профилирования системы, AGI отображает данные в пользовательском интерфейсе профилировщика системы для анализа. Информацию о просмотре данных см. в разделе Просмотр профиля системы .

В этих темах описывается, как анализировать данные профилирования системы с помощью AGI: