Тема: Энергосбережение в Android OS путём динамического изменения частоты процессора
Закажите новую по вашим требованиям
Представленный материал является образцом учебного исследования, примером структуры и содержания учебного исследования по заявленной теме. Размещён исключительно в информационных и ознакомительных целях.
Workspay.ru оказывает информационные услуги по сбору, обработке и структурированию материалов в соответствии с требованиями заказчика.
Размещение материала не означает публикацию произведения впервые и не предполагает передачу исключительных авторских прав третьим лицам.
Материал не предназначен для дословной сдачи в образовательные организации и требует самостоятельной переработки с соблюдением законодательства Российской Федерации об авторском праве и принципов академической добросовестности.
Авторские права на исходные материалы принадлежат их законным правообладателям. В случае возникновения вопросов, связанных с размещённым материалом, просим направить обращение через форму обратной связи.
📋 Содержание
1. Постановка задачи 7
2. Обзор предметной области 8
2.1. Система CPUFreq 8
2.2. Стандартные регуляторы частоты 8
2.3. Современные регуляторы частоты 10
2.4. Обзор системы EAS 11
2.5. Обзор регулятора schedutil 12
2.6. Алгоритмы стохастической аппроксимации со
случайными направлениями 13
3. Подготовка тестового стенда 16
3.1. Описание тестового стенда SM-G930F 16
3.2. Необходимые изменения тестового стенда 16
4. Разработка методики для сравнения
DVFS-регуляторов 18
4.1. Инструменты для сравнения
DVFS-регуляторов 18
4.2. Определение способов измерения энергопотребления . . 18
4.3. Определение сценариев тестирования 19
4.4. Особенности реализации 20
5. Создание регулятора частоты 22
5.1. Выбор функционала качества 22
5.2. Реализация DVFS-регуляторов на основе SPSA с двумя
измерениями 23
6. Сравнение существующих
DVFS-регуляторов с разработанным 28
6.1. Android 11 28
6.2. Android 10 35
6.3. Анализ результатов 42
Заключение 45
Список литературы 47
📖 Введение
Во время эксплуатации смартфона возникают ситуации, когда некоторые задачи не требуют большого количества вычислительных ресурсов. При правильном соотношении производительности и энергопотребления в текущий момент времени можно увеличить время автономной работы устройства и при этом сохранить комфортную для пользователя производительность.
В этой работе используется ОС Android по причине того, что Android является одной из трех наиболее распространенных операционных систем для мобильных устройств и имеет открытый исходный код.
Существует подход к управлению частотой и напряжением процессора — Dynamic Voltage and Frequency Scaling (DVFS). Он позволяет оптимизировать энергопотребление и производительность процессора.
В OC Android имеется система CPUFreq, которая позволяет использовать алгоритмы динамического масштабирования напряжения и частоты (DVFS), исходя из тех или иных критериев оптимизации и стратегий их достижения.
В настоящее время активно исследуются вопросы, связанные с разработкой DVFS-регуляторов. Существует множество подходов их реализации. Так как нагрузку на процессор трудно предсказать и физические средства наблюдения вносят помехи в измерения, стохастические алгоритмы становятся всё более популярными. SPSA (Simultaneous perturbation stochastic approximation) [17] является одним из таких стохастических алгоритмов, который может использоваться для решения задачи трекинга оптимальной точки с почти произвольными помехами.
Ранее был разработан DVFS-регулятор, основанный на SPSA с одним измерением [9]. Данная работа посвящена разработке
DVFS-регулятора, основанного на алгоритме SPSA с двумя измерениями, и его апробации на реальном устройстве.
1. Постановка задачи
Целью данной работы является разработка DVFS-регулятора на основе алгоритма SPSA с двумя измерениями и сравнение его с существующими аналогами на реальном смартфоне.
Для достижения данной цели были сформулированы следующие задачи:
1. Провести обзор существующих DVFS-регуляторов.
2. Подготовить тестовый стенд для сравнения DVFS-регуляторов.
3. Создать методику тестирования для сравнения DVFS-регуляторов.
4. Разработать DVFS-регулятор на основе SPSA с двумя измерениями и встроить его в ОС Android.
5. Разработать модифицированную версию DVFS-регулятора на основе SPSA с двумя измерениями и интегрированную с EAS и встроить его в ОС Android.
6. Провести тестирование полученных регуляторов.
✅ Заключение
Проведен обзор существующих DVFS-регуляторов:
• изучены стандартные регуляторы - Schedutil, OnDemand, Interactive;
• рассмотрены подходы к созданию новых регуляторов: добавление возможности перевода ядер в сон, добавление анализа характера выполняемых инструкций, использование стохастической аппроксимации.
Подготовлен тестовый стенд:
• выбран Samsung SM-G930F;
• подобрано, установлено и настроено соответствующее ПО для проведения дальнейшей работы.
Создана методика тестирования энергопотребления смартфона:
• выбраны способ взаимодействия со смартфоном, способ оценки энергопотребления, сценарии тестирования;
• создан комплекс утилит для тестирования энергопотребления процессора смартфона.
Разработан регулятор частоты на основе алгоритма SPSA с двумя измерениями. В процессе разработки было создано несколько алгоритмов: spsa2_1_solid, spsa2_1_highFreq, spsa2_2, spsa2_3, spsa2_1_EAS, которые отличаются друг от друга количеством необходимых вызовов для одного шага алгоритма, способом измерения, алгоритмом выбора следующей оптимальной оценки.
Проведено сравнение разработанных DVFS-регуляторов с существующими Schedutil, Interactive, OnDemand. Исходя из полученных результатов, алгоритм spsa2_3 показал меньшее энергопотребление (на 12% — 52%) и малое отставание производительности (на 5% — 11%) относительно schedutil, а алгоритм spsa2_2 более высокую производительность и более высокое энергопотребление относительно spsa2_3. Алгоритм spsa2_1_solid и spsa2_1_highFreq показали энергопотребление и производительность ниже, чем schedutil. Производительность spsa2_1_highFreq выше, чем у остальных разработанных DVFS-регуляторов, в то время как производительность spsa2_1_solid в 11 раз ниже относительно schedutil при использовании высокой целевой нагрузки. При повышении целевой нагрузки у всех разработанных DVFS-регуляторов снижается производительность и энергопотребление.



