Шалимов Александр / Леонид Андреевский, 3 курс, mod-sem

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

Модератор: staff

Закрыто
Бычков Иван
Аспирант
Сообщения: 179
Зарегистрирован: 23 сен 2008 01:19 pm

Шалимов Александр / Леонид Андреевский, 3 курс, mod-sem

Сообщение Бычков Иван »

Тема работы
Исследование методов энергосберегающего выполнения программ.

Данная тема расчитана на 3 года.

Актуальность
Постоянное увеличение производительности ЭВМ (Закон Мура) несет с собой постоянное повышение энергопотребления. Как следствие, высокое тепловыделение ведет к уменьшению времени работы и надежности управляющих элементов компьютера, а также к необходимости дополнительного охлаждения.
Ещё более актуальна проблема энергопотребления во встроенных системах. Для таких систем важно время работы в автономном режиме с использованием автономных источников питания. Мощность этих источников, как правило, весьма ограничена из-за требований на массо-габаритные параметры системы. В этих условиях важной характеристикой программы становится уровень её энергопотребления.
Вышесказанное объясняет важность методов энергосберегающего выполнения программ (методы ЭВП) в современных условиях.

Целью курсовой работы на 3 курсе является
Изучение методов энергосберегающего выполнения программ и написание обзора. Выбор одного из методов и постановка задачи для исследования этого метода. Критерии выбора метода диктуются областью предполагаемого применения – встроенные системы.

План работы
1. Изучить литературу по методам энергосберегающего выполнения программ.
2. Изучение специфики встроенных систем.
3. Сформулировать требования к методам энергосберегающего выполнения программ, вытекающие из специфики области встроенных систем.
4. Построить классификацию методов энергосберегающего выполнения программ. Для этого необходимо сформулировать критерии, на основе их провести классификацию изученных методов.
5. Написать обзор с целью определения наиболее перспективных методов энергосберегающего выполнения программ для применения во встроенных системах.
6. Выбор, формирование методики исследования и реализация одного из существующих методов энергосберегающего выполнения программ.
7. Постановка задачи на исследование выбранного метода.

Ожидаемые результаты
1. Обзор методов энергосберегающего выполнения программ, критерии сравнения и классификация.
2. Методика исследования выбранного метода энергосберегающего выполнения программ.
3. Текст курсовой работы с обзором и отчетом о результатами исследования.
Андриевский Леонид
Выпускник
Сообщения: 3
Зарегистрирован: 31 авг 2008 03:06 pm

Сообщение Андриевский Леонид »

Отчет о работе в осеннем семестре 2008-2009 учебного года

Андриевский Леонид, 322 гр.
Научные руководители: Шалимов А.В., Смелянский Р.Л.


Тема работы
Исследование методов энергосберегающего выполнения программ.

Актуальность
Постоянное увеличение производительности ЭВМ (Закон Мура) несет с собой постоянное повышение энергопотребления. Как следствие, высокое тепловыделение ведет к уменьшению времени работы и надежности управляющих элементов компьютера, а также к необходимости дополнительного охлаждения.
Ещё более актуальна проблема энергопотребления во встроенных системах. Для таких систем важно время работы в автономном режиме с использованием автономных источников питания. Мощность этих источников, как правило, весьма ограничена из-за требований на массо-габаритные параметры системы. В этих условиях важной характеристикой программы становится уровень её энергопотребления.
Вышесказанное объясняет важность методов энергосберегающего выполнения программ (методы ЭВП) в современных условиях.

Целью курсовой работы на 3 курсе является
Изучение методов энергосберегающего выполнения программ и написание обзора. Выбор одного из методов и постановка задачи для исследования этого метода. Критерии выбора метода диктуются областью предполагаемого применения – встроенные системы.

Результаты работы в текущем семестре:
• Изучена проблемматика энергопотребления в компьютерах (в чем и как измеряется энергопотребление, откуда берется энергия и на что тратится).
• Изучены методы уменьшения энергопотребления компьютера (от транзисторов до уровня компилятора и приложений).
• Изучены ряд методов энергосберегающего выполнения программ на уровне компилятора и приложений:
  • Преобразование циклов
  • Подстановка данных
  • Сжатие кода
  • Уменьшение количества обращений к памяти
  • Управление распараллеливанием
  • Векторизация сообщений
  • Миграция вычислений
  • Использование нескольких наборов машинных команд
  • The best-effort energy minimization (BEEM)
  • Completion Ratio Guaranteed Energy Minimization (QGEM)
• Сделан доклад на спецсеминаре на тему “Методы снижения энергопотребления компьютера”.

Дальнейшая деятельность:
• Завершение накопления методов энергосберегающего выполнения программ.
• Изучение специфики встроенных систем.
• Формулировка требований к методам энергосберегающего выполнения программ, вытекающих из специфики области встроенных систем.
• Написание обзора с целью определения наиболее перспективных методов энергосберегающего выполнения программ для применения во встроенных системах.
• Выбор, формирование методики исследования и реализация одного из существующих методов энергосберегающего выполнения программ.

Список литературы:
1. V. Venkatachalam, M. Franz Power Reduction Techniques For Microprocessor Systems // ACM Computing Surveys, Vol. 37, No. 3, September 2005, pp. 195–237
2. Y. Fei, S. Ravi, A. Raghunathan, N. Jha Energy-optimizing source code transformations for operating system-driven embedded software // ACM Transactions on Embedded Computing Systems (TECS), Volume 7, Issue 1, December 2007, pp.26
3. A. Shrivastava, N. Dutt Energy Efficient Code Generation Exploiting Reduced bit-width Instruction Set Architectures (rISA) // IEEE, 2004
4. Y. Fei, L. Zhong, N. Jha An energy-aware framework for dynamic software management in mobile computing systems // ACM Transactions on Embedded Computing Systems (TECS), April 2008
5. S. Hua, S. Bhattacharyya Energy-efficient embedded software implementation on multiprocessor system-on-chip with multiple voltages // ACM Transactions on Embedded Computing Systems (TECS), May 2006
6. Aristides Efthymiou Energy Aware Computing - 2008/2009 (http://www.inf.ed.ac.uk/teaching/courses/eac/)
7. Kin, J.,Gupta, M., Andmangione-Smith, W. H. The filter cache: An energy efficient memory structure. //In Proceedings of the 30th Annual ACM/IEEE International Symposium on Microarchitecture. IEEE Computer Society, 184–193. 1997.
8. С.С. Гайсарян, В.П. Иванников, А.И. Аветисян "Анализ и трансформация программ"// Институт системного программирования РАН[/list]
Игорь Коннов
Сотрудник
Сообщения: 25
Зарегистрирован: 14 сен 2005 11:45 am
Откуда: ЛВК
Контактная информация:

Сообщение Игорь Коннов »

Леонид, у меня есть несколько вопросов.
Завершение накопления методов энергосберегающего выполнения программ.
Каково соотношение (примерно, в процентах) накопленных методов и тех методов, которые требуется накопить. Список последних и источники уже известны?

Верно ли, что на данный момент выполнен (частично) только первый пункт? Есть ли у Вас какое-то понимание второго пункта плана (Изучение специфики встроенных систем)?
• Изучены ряд методов энергосберегающего выполнения программ на уровне компилятора и приложений:

* Преобразование циклов
* Подстановка данных
* Сжатие кода
* Уменьшение количества обращений к памяти
* Управление распараллеливанием
* Векторизация сообщений
* Миграция вычислений
* Использование нескольких наборов машинных команд
* The best-effort energy minimization (BEEM)
* Completion Ratio Guaranteed Energy Minimization (QGEM)
Что такое "Метод энергосберегающего выполнения программ на уровне компилятора" я могу понять, а что такое "Метод энергосберегающего выполнения программ на уровне приложения"? Можно отделить методы первого от второго в списке?
Андриевский Леонид
Выпускник
Сообщения: 3
Зарегистрирован: 31 авг 2008 03:06 pm

Сообщение Андриевский Леонид »

Игорь Коннов писал(а):Леонид, у меня есть несколько вопросов.
Без проблем.
Игорь Коннов писал(а):Каково соотношение (примерно, в процентах) накопленных методов и тех методов, которые требуется накопить. Список последних и источники уже известны?
Тут вопрос сложный - ужно учитывать, что результатом работы должен быть список перспективных методов.
Научный руководитель предложил мне набрать около 10-20 методов. На данный момент их 12. Но об их перспективности можно будет судить только после окончательной формулировки требований к методам (пункт 3 плана научного руководителя)
Верно ли, что на данный момент выполнен (частично) только первый пункт? Есть ли у Вас какое-то понимание второго пункта плана (Изучение специфики встроенных систем)?
Если считать частично выполненные задачи - то, по списку научного руководителя частично выполнены пункты:
1 - без комментариев.
5 - для каждого изученного метода (за исключением уменьшения количества обращений к памяти) имеется краткий перевод статьи, в которой данный метод описан. Для формирования обзора нужны только критерии выбора.
6 - во время доклада на спецсеминаре были озвучены методы исследования энергопотребления компьютера.
Игорь Коннов писал(а):
• Изучены ряд методов энергосберегающего выполнения программ на уровне компилятора и приложений:

* Преобразование циклов
* Подстановка данных
* Сжатие кода
* Уменьшение количества обращений к памяти
* Управление распараллеливанием
* Векторизация сообщений
* Миграция вычислений
* Использование нескольких наборов машинных команд
* The best-effort energy minimization (BEEM)
* Completion Ratio Guaranteed Energy Minimization (QGEM)
Что такое "Метод энергосберегающего выполнения программ на уровне компилятора" я могу понять, а что такое "Метод энергосберегающего выполнения программ на уровне приложения"?Можно отделить методы первого от второго в списке?
Прошу прощения за неточность в обзоре, но в данном списке методы энергосберегающего выполнения программ на уровне приложения не представлены.
На докладе было рассказано о двух направлениях развития этой области - это "подсказки приложения" (приложение сообщает ОС о требуемой скорости выполнения отдельных участков кода) и "адаптация приложения" (программа снижает нагрузку приложений за счет снижения объёма вычислений).
Поясню второй пункт: например программа работает с какими-то данными, которые хранятся в сети и их копия есть на HDD. В зависимости от того, что менее энергозатратно (возможно, с ущербом для скорости), приложение может выбирать локальные или сетевые данные для работы. Или другой пример - видеокодек при воспроизведении может пропускать некоторые шаги (deblocking, postprocessing) для уменьшения энергопотребления за счет качества результирующей картинки.

На данный момент из располагаемой литературы есть лишь несколько статей по методике создания фреймворка для "подсказок приложения". Собственно, поэтому я и не стал добавлять их в список.
Закрыто