Аннотация:
В работе рассмотрена задача разработки энергоэффективного программного обеспечения. Основное внимание уделено программированию для мобильных устройств. Предложен новый программный инструмент для анализа энергоэффективности приложений для мобильных устройств. Инструмент позволяет собирать и обрабатывать экспериментальную информацию, характеризующую энергоэффективность приложений на используемой платформе. Приведено сравнение аналогичных инструментов. Описаны основная функциональность, метод использования и результаты применения на примере задачи матричного умножения. Проведен анализ энергоэффективности реализаций алгоритма с использованием набора команд SSE, а также технологий параллельного программирования OpenMP и Cilk Plus. Исследованы зависимость энергоэффективности от числа использованных потоков, количества кэш-промахов, количества переходов между C-State-состояниями процессора. Сформулированы выводы по результатам проведенного анализа. Приведены планы по дальнейшему развитию функциональности инструмента.
Ключевые слова:мобильные системы, оптимизация энергопотребления, инструменты для анализа энергоэффективности, метрики для оценки энергопотребления, C-State-состояния.