Опубликован: 24.10.2012 | Уровень: специалист | Доступ: свободно | ВУЗ: Санкт-Петербургский государственный университет
Лекция 2:

Инструменты Intel для оптимизации и отладки Android-приложений

3.3. Intel Power Monitoring Tool

Инструмент Intel Power Monitoring Tool отслеживает данные о производительности и энергопотреблении на Android-устройствах и помогает упростить следующие задачи для разработчиков и проектировщиков Android:

  • Выявление проблем энергопотребления и производительности с использованием мониторинга в режиме реального времени.
  • Организация автономной диагностики любых проблем с помощью файла журнала.

При создании энергоэффективных систем или приложений разработчики программного обеспечения должны собирать статистические данные для выявления и диагностики проблем с энергопотреблением и производительностью. К несчастью, на изучение ключевых данных об энергопотреблении среди огромных массивов имеющихся данных тратится слишком много времени. Инструмент Intel Power Monitoring Tool позволяет собирать необходимые данные об энергопотреблении через определенные интервалы времени. При этом состояния энергопотребления системы и приложений записываются в файл журнала. Затем разработчик программного обеспечения может использовать данные из журнала для выявления и диагностики проблем с энергопотреблением и производительностью.

Для операционной системы Android характерно то, что большинство приложений работают в полноэкранном режиме, чтобы обеспечить более удобное взаимодействие пользователя с устройствами. Из-за этого разработчикам программного обеспечения труднее отслеживать статистические данные системы и приложений в режиме реального времени. Intel Power Monitoring Tool помогает преодолеть эти трудности, обеспечивая в режиме реального времени мониторинг ключевых данных об энергопотреблении из системы и приложений.

Intel Power Monitoring Tool собирает минимальный набор данных об энергопотреблении в фоновом режиме, не вмешиваясь в работу системы. Дополнительная загрузка процессора при использовании инструмента Intel Power Monitoring Tool достаточно мала (не более 3%).

Intel Power Monitoring Tool предоставляет опытным и начинающим Android-разработчикам три основные возможности:

  • Данные об энергопотреблении на уровне компонентов

    Следующие компоненты мобильных устройств потребляют большую часть энергии и сильнее всего влияют на продолжительность работы устройства от аккумулятора:

    • Процессор
    • Экран
    • Wi-Fi модуль
    • Модемы
    • Основное запоминающее устройство
    • Внешнее запоминающее устройство
    • Аккумулятор

    Поведение операционной системы и приложений также оказывает большое влияние на общее энергопотребление устройства и время работы от аккумулятора. С помощью инструмента Intel Power Monitoring Tool разработчики могут оценить характеристики энергопотребления устройства в режиме ожидания (когда выполняются только операционная система и службы) и отследить влияние определенного приложения на общее энергопотребление устройства.

    Помимо данных об энергопотреблении на уровне компонентов Intel Power Monitoring Tool собирает данные об энергопотреблении для выполняемого приложения

  • Мониторинг системы и приложения в режиме реального времени

    Intel Power Monitoring Tool позволяет отслеживать работу системы и приложения в режиме реального времени через настраиваемые интервалы выборки. Во время работы системы Android или приложения этот инструмент отображает небольшое окно (Рис. 3.5) в правой части строки состояния, где показаны ключевые данные об энергопотреблении. Данные в окне обновляются практически в режиме реального времени и представлены в следующем формате:

    • Отметка времени;
    • BP: battery discharged power;
    • CPU: общая частота процессора, загрузка процессора 0, загрузка процессора 1;
    • Wifi: число переданных пакетов Wifi, число полученных пакетов Wifi;
    • App: состояние приложения, число потоков приложения, загрузка приложения.
      Мониторинг системы и приложения в режиме реального времени

      Рис. 3.5. Мониторинг системы и приложения в режиме реального времени
  • Профилирование в фоновом режиме с минимальной дополнительной нагрузкой

    Во время выполнения системы Android и приложений Power Monitoring Tool запускает в фоновом режиме службу профилирования, которая очень незначительно влияет на использование ресурсов.

    Служба профилирования запускается и останавливается нажатием на значок приложения Intel Power Monitoring Tool. Когда пользователь останавливает службу профилирования энергопотребления, во внутренней памяти или на внешнем запоминающем устройстве создается файл журнала с именем "powermonitor.log". В этом файле содержатся все данные об энергопотреблении, которые были получены в течение интервала выборки между запуском и остановкой службы профилирования.

    Частота выборки может настраиваться пользователем. В следующей таблице показано, какой объем дополнительных ресурсов использует инструмент при разных частотах выборки:

    Sampling Rate CPU Utilization overhead
    1 seconds 2,83%
    2 seconds 1,07%
    3 seconds 0,06%
    5 seconds 0,05%
    10 seconds 0,02%

    Согласно этой таблице при интервале выборки, равном 1 секунде, дополнительная нагрузка составляет не более 3 %.

    Также можно включить функцию электронной почты, чтобы после остановки службы профилирования файл "powermonitor.log" отправлялся на указанный почтовый адрес. Это упрощает сбор и извлечение данных с устройства на компьютер.

    Инструмент Intel Power Monitoring Tool позволяет опытным разработчикам программного обеспечения и обычным пользователям отслеживать, выявлять и диагностировать проблемы с энергопотреблением и производительностью на уровне системы. Благодаря функции мониторинга в режиме реального времени разработчики получают простую и понятную информацию, помогающую найти проблему. Функция записи в журнал позволяет отслеживать данные за определенные периоды для более глубокого анализа. Разработчики программного обеспечения экономят свое время, поскольку собирается минимальный набор данных об энергопотреблении и не нужно просматривать большие массивы данных, чтобы найти ключевую информацию об энергопотреблении и производительности. При этом дополнительная нагрузка, связанная с профилированием данных, очень мала.

    Приложение было выпущено через портал Google Market в середине января 2012 года и поддерживает следующие версии Android: GingerBread, HoneyComb, IceCreamSandwich.

    Установить приложение можно с помощью портала Android Market или с помощью команды adb_install -r com.intel.PowerMonitoringTool.apk

    После установки будут доступны три основные возможности Intel Power Monitoring Tool.

  • Использование функции профилирования и отправка журнала по электронной почте
    1. Откройте приложение Intel Power Monitoring Tool, выберите время выборки и запустите профилирование, нажав кнопку "Start profiling" (Рис. 3.6).
      Запуск функции профилирования

      Рис. 3.6. Запуск функции профилирования
    2. Запустите целевое приложение или используйте устройство как обычно.
    3. Откройте приложение Intel Power Monitoring Tool и остановите профилирование, нажав на кнопку "Stop profiling".
    4. >Введите свой адрес электронной почты в текстовом поле и нажмите кнопку "Send out log" (Отправить журнал). После выберите в списке приложение электронной почты. Файл "powermonitor.log" автоматически добавится в качестве вложения.
  • Использование функции мониторинга в режиме реального времени
    1. Откройте приложение Intel Power Monitoring Tool и запустите профилирование, нажав на кнопку "Start profiling".
    2. Чтобы отображать данные, нажмите "Display data".
    3. Нажмите кнопку "Set data notify" (Настроить уведомление о данных). В правом нижнем углу экрана появится уведомление с обновляемой информацией (Рис. 3.7).
      Мониторинг в режиме реального времени

      Рис. 3.7. Мониторинг в режиме реального времени
    4. В дополнение к работающему приложению можно запустить другие приложения, информация в уведомлении будет обновляться с заданной частотой.
  • Использование функции мониторинга приложения
    1. Запустите профилирование, нажав на кнопку "Start profiling".
    2. Введите в поле "Enter app name" (Рис. 3.8) имя приложения или его часть. Например, для мониторинга приложения "browser", можно ввести текст "browser" или "browse". Инструмент Intel Power Monitoring Tool выполнит поиск приложения, в имени которого содержится введенное слово.
      Мониторинг приложения

      Рис. 3.8. Мониторинг приложения
    3. Данные о приложении будут отображаться в текстовой области на экране и добавляться в файл журнала "powermonitor.log
Несипбай Сагыныш
Несипбай Сагыныш
Сергей Петров
Сергей Петров