Разработка программного комплекса для анализа энергоэффективности программного обеспечения

Артем Валерьевич Калачев
Нижегородский государственный университет им. Н.И. Лобачевского

Александр Сергеевич Карсаков
Нижегородский государственный университет им. Н.И. Лобачевского

Иосиф Борисович Мееров
Нижегородский государственный университет им. Н.И. Лобачевского

Яна Александровна Напыльникова
Нижегородский государственный университет им. Н.И. Лобачевского

Андрей Ювенальевич Овсюхно
Нижегородский государственный университет им. Н.И. Лобачевского


Аннотация


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

Полный текст:

PDF

Литература


Scheduling for Reduced CPU Energy / M. Weiser, B. Welch, A. Demers et al. // Proceedings of the 1st USENICS Symposium on Operating Systems Design and Implementation (Monterey, CA). – Nov. 1994. – P. 13–23.

Bekas, C. A new energy aware performance metric / C. Bekas, A. Curioni // Computer Science – R&D. – 2010. –Vol. 25. – P. 187–195.

Benini, L. Dynamic Power Management: Design Techniques and Cad Tools / L. Benini, G. De Micheli – Kluwer Academic Publishers, 1998. –231 p.

Dynamic Voltage Scaling and Power Management for Portable Systems / T. Simunic, L. Benini, A. Acquaviva et al. // Proceedings of the 38th

conference on Design automation (Las Vegas, Nevada). – Jun. 2001. – P. 524–529

Simunic, T. Energy efficient system design and utilization: PhD Thesis / T. Simunic – Stanford University (Stanford, CA), 2001. – 128 p.

Snowdon, D. Power Management and Dynamic Voltage Scaling: Myths and Facts / D. Snowdon, S. Ruocco, G. Heiser // Proceedings of the 7th ACM & IEEE International conference on Embedded software (Salzburg). – Sep. 2007. – P. 84–93.

Kappiah, N. Just In Time Dynamic Voltage Scaling: Exploiting Inter–Node Slack to Save Energy in MPI Programs / N. Kappiah, V.W. Freeh, D.K. Lowenthal // Proceedings of the ACM/IEEE SC 2005 Conference (Seattle, Washington). – Nov. 2005. – P. 33.

Reducing power with performance constraints for parallel sparse applications / G. Chen, K. Malkowski, M.T. Kandemir et al. // Proceedings of the 19th

International Parallel & Distributed Processing Symposium (Denver, Colorado). – Apr. 2005. – P. 8.

Intel Corp., Intel 64 and IA-32 Architectures Optimization Reference Manual / URL: http://www.intel.com/content/dam/doc/manual/64-ia-32-architectures-optimization-manual.pdf (дата обращения: 10.1.2013), Chapter 11. P. 423–430.

Energy-Efficient Platforms – Considerations for Application Software and Services / URL: http://download.intel.com/technology/pdf/322304.pdf (дата обращения: 05.09.2012).

Tiwari, V. Power Analysis of Embedded Software: A First Step / V. Tiwari, S. Malik, A. Wolfe // IEEE Transactions on VLSI Systems. – 1994. –Vol. 2, No. 4. – P. 437–445.

Instruction Level Power Analysis and Optimization of Software / V. Tiwari, S. Malik,

A. Wolfe et al. // Proceedings of the 9th International Conference VLSI Design (Bangalore, India). – Jan. 1996. – P. 326–328.

Instruction scheduling for power reduction in processor–based system design / H.H. Tomiyama, T. Ishihara, A. Inoue et al. // Proceedingsof the Conference Design, Automation ant Test in Europe (Paris, France). – Feb. 1998. – P. 855–860.

Simunic, T. Energy–Efficient Design of Battery–Powered Embedded Systems / T. Simunic, L. Benini, G. De Micheli // IEEE Transactions on VLSI Systems. – 2001. –Vol. 9, No. 1. – P. 15–28.

The impact of source code transformations on software power and energy consumption / C. Brandoles, W. Fornaciari, F. Salice et al. // World Scientific Journal of Circuits Systems and Computers. – 2002. – Vol. 11, No. 5 – P. 477–502.

Power Checker Web Site / URL: http://software.intel.com/en-us/blogs/2011/06/27/intel-power-checker/ (дата обращения: 10.10.2012).

Power Informer Web Site / URL: http://software.intel.com/en-us/articles/intel-powerinformer/ (дата обращения: 10.10.2012).

Joulemeter Web Site / URL: http://research.microsoft.com/en-us/downloads/fe9e10c5-5c5b-450c-a674-daf55565f794/ (дата обращения: 10.10.2012).

Perfmon Web Site / URL: http://technet.microsoft.com/en-us/library/bb490957.aspx (дата обращения: 10.10.2010).

Power Checker Web Site / URL: https://01.org/powertop/ (дата обращения: 10.10.2012).




DOI: http://dx.doi.org/10.14529/cmse130203