Научная статья на тему 'Диспетчер энергосберегающего параллельного вычислительного процесса'

Диспетчер энергосберегающего параллельного вычислительного процесса Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
64
17
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
ДИСПЕТЧЕР / MANAGER / ВЫЧИСЛИТЕЛЬНАЯ СИСТЕМА / COMPUTER SYSTEM / ПАРАЛЛЕЛЬНЫЙ ВЫЧИСЛИТЕЛЬНЫЙ ПРОЦЕСС / PARALLEL COMPUTING / ЭНЕРГОЭФФЕКТИВНОСТЬ / ENERGY EFFICIENCY

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Данеев Алексей Васильевич, Басыров Александр Геннадьевич, Мастин Александр Борисович

Рассматривается подход к построению диспетчера стохастических параллельных вычислительных процессов, направленный на снижение энергопотребления высокопроизводительной вычислительной системы. Приведены оценки энергосбережения в вычислительных системах при использовании предлагаемого диспетчера.

i Надоели баннеры? Вы всегда можете отключить рекламу.

Похожие темы научных работ по компьютерным и информационным наукам , автор научной работы — Данеев Алексей Васильевич, Басыров Александр Геннадьевич, Мастин Александр Борисович

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

MANAGER OF ENERGY-SAVING PARALLEL COMPUTING

The approach to construction of the manager of the stochastic parallel computing processe, directed on decrease in power consumption of the high-efficiency computing system is considered.. Evaluation of energy saving in computing systems using the proposed approach to the construction manager is given.

Текст научной работы на тему «Диспетчер энергосберегающего параллельного вычислительного процесса»

Информатика, вычислительная техника и управление. Приборостроение. Метрология. Информационно-измерительные приборы и системы

УДК 004.272.2 Данеев Алексей Васильевич,

д-р техн. наук, профессор, заведующий кафедрой «Информатика», ИрГУПС,

тел. (3952) 410-112, e-mail: daneev@mail.ru Басыров Александр Геннадьевич, канд. техн. наук, доцент, преподаватель кафедры электронной вычислительной техники. Военно-космическая академия имени А.Ф. Можайского (г. Санкт-Петербург), e-mail: alexanderbas@mail.ru

Мастин Александр Борисович, канд. техн. наук, зам. начальника отдела, НИЦ БТС 12 ЦНИИ МО РФ. (г. Санкт-Петербург)

ДИСПЕТЧЕР ЭНЕРГОСБЕРЕГАЮЩЕГО ПАРАЛЛЕЛЬНОГО ВЫЧИСЛИТЕЛЬНОГО ПРОЦЕССА

A. V. Daneev, A. G. Basyrov, A.B. Mastin

MANAGER OF ENERGY-SAVING PARALLEL COMPUTING

Аннотация. Рассматривается подход к построению диспетчера стохастических параллельных вычислительных процессов, направленный на снижение энергопотребления высокопроизводительной вычислительной системы. Приведены оценки энергосбережения в вычислительных системах при использовании предлагаемого диспетчера.

Ключевые слова: диспетчер, вычислительная система, параллельный вычислительный процесс, энергоэффективность.

Abstract. The approach to construction of the manager of the stochastic parallel computing processe, directed on decrease in power consumption of the high-efficiency computing system is considered.. Evaluation of energy saving in computing systems using the proposed approach to the construction manager is given.

Keywords: manager, computer system, parallel computing, energy efficiency.

На рынке бортовых (встроенных) вычислительных систем (БВС), на которых строятся мобильные компьютеры, коммуникаторы, автономные системы управления различными технологическими объектами и т. д., отчетливо просматривается тенденция к реализации многопроцессорных решений для обработки постоянно усложняющихся целевых задач. Одной из основных проблем, ограничивающих возможности широкого применения технологий параллельных вычисле-

ний в таких системах, является ограничение энергоресурса бортовых источников питания. «Многоядерная революция» в создании современных микропроцессоров позволяет повышать их производительность при одновременной оптимизации энергопотребления. Потребности современных задач в вычислительных ресурсах свидетельствуют о том, что технологического решения проблемы энергоэффективности явно не достаточно и необходимы новые подходы к организации энергосберегающих вычислений.

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

- проблема энергосберегающего функционирования вычислительных систем является актуальной по причине как экономического, так и технического характера;

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

Организация энергосберегающих вычислительных процессов основывается на методологии, реализуемой через соответствующее математическое, алгоритмическое и программное обеспече-

иркутским государственный университет путей сообщения

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

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

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

Особенностью диспетчера стохастического вычислительного процесса является отсутствие априорно известных моментов времени начала выполнения заданий. Известен лишь порядок следования заданий на каждом ВМ. В связи с этим при возникновении события, связанного с завершением задания, встает необходимость анализа готовности очередного задания к выполнению.

Актуальность диспетчирования параллельных вычислительных процессов с целью снижения энергоемкости функционирования вычислительной системы вызвана тем, что при наличии отношений частичного порядка между заданиями целевой задачи возникают вынужденные простои в работе ВМ, вызванные проблемой синхронизации заданий. Как будет показано ниже, при увеличении связности графа целевой задачи, т. е. количества связей между заданиями, время вынужденного простоя ВМ весьма значительно.

Большинство современных микропроцессоров обеспечивают возможность их перевода в ре-

жим пониженного энергопотребления (режим «сна», дежурный режим). Это позволяет реализовать в вычислительной системе задачи диспетчера энергосберегающего вычислительного процесса.

Пусть заданы

1) матрица

смежности заданий [1],

N, N

определяющая отношения частичного порядка между заданиями, причем

0, если между заданиями нет связи, Аы = \ 1, если заданиеI может выполняться только после выполнения задания ^

2) индикаторная переменная (флаг) а г, 7 = 1, N, готовности к выполнению задания 7

10, если задание г готово начать выполнение,

а:

1 - в противном случае;

3) индикаторная переменная р завершения выполнения задания 7

10, если задание г завершено,

Р, = ■

1 - в противном случае.

Данные параметры связаны между собой N логическими уравнениями:

а1 = 0, а2 = А 1,2' аз = А 1,3 ■ р1 V А2,3' р2, а4 = А1,4 ■ р1 V А2,4 ■ р2 V Аз,4 ■ Рз,

...... (1)

I-1

а1 = и Ак ,1 ■ рк.

к=1

N-1

аы = и Ак,N ■ Рг.

к=1

4) индикаторная переменная признака активной работы ВМ у , ] = 1,М, где М - число ВМ:

|0, если ВМ ] в пассивном режиме (выключен), [1 - если ВМ ] в активном режиме (включен).

Отметим, что элементы Аг, ] матрицы смежности являются константами, а индикаторные

У / = '

Информатика, вычислительная техника и управление. Приборостроение. Метрология. Информационно-измерительные приборы и системы

переменные аi, ^ изменяют свои значения в

ходе реализации вычислительного процесса. Пересчет индикаторных переменных производится после завершения выполнения каждого задания.

Пусть также известен план (расписание) вычислительного процесса, определяющий последовательность выполнения заданий на каждом вычислительном модуле вычислительной системы. Определим этот план прямоугольной матрицей

ы

Ш, N

каждая строка ] = 1,М которой содер-

жит последовательность заданий для выполнения на ВМ

Пример матрицы-расписания |ы|38, определяющий план вычислительного процесса из восьми заданий, выполняющийся на трех ВМ: 1 4 5 0 0 0 0 0 '' 26000000 , 37800000

ы =

I 13,8

пренебрежительно малы, то целесообразно отключать ВМ в любом случае, когда очередное задание не готово к запуску. Если время т является достаточно большим, то его необходимо учитывать при принятии решения на выключение ВМ.

Рассмотрим последовательность выполнения заданий, представленную на рис. 1.

Пусть в момент времени /0 на ВМ2 завершилось выполнение задания X 0. В этот же момент на ВМ1 и ВМ3 продолжают выполняться задания X1 и X3 соответственно. Моменты времени ^ и / 3 завершения этих заданий являются случайными величинами. Пусть в соответствии с планом вычислительного процесса по завершении заданий X1 и X3 на ВМ2 должно начаться выполнение задания. Тогда момент времени /2 начала выполнения X2 также является случайной величиной, зависящей от /1 и /3, а /2 = тах{/ь /3} .

где «нулевой» элемент означает отсутствие задания.

Тогда работа диспетчера в общем виде выглядит следующим образом:

- формирование для каждого ВМ очереди заданий в соответствии с их расположением в строках матрицы-расписания;

- при завершении любого задания i выполняется сброс (обнуление) соответствующей индикаторной переменной ^ и производится пересчет всех индикаторных переменных аь 1 = 1, N, в соответствии с уравнениями (1);

- выбор из очереди и выполнение очередного задания к при условии, что ак = 0, или, в противном случае, перевод ВМ в состояние ожидания.

При нахождении ВМ в состоянии ожидания возможен его перевод в режим пониженного энергопотребления или даже полное отключение питания. Очевидно, что если очередь заданий ВМ пуста, целесообразно с точки зрения минимизации энергопотребления вычислительной системы отключать соответствующий ВМ. Если предположить, что время т на перевод ВМ в режим пониженного энергопотребления (или выключение) для ожидания загрузки и вывод его в «полноценный» режим для выполнения вычислительной работы

Рис. 1. Диаграмма реализации вычислительного процесса

Если после завершения задания X 0 ВМ2 перевести в режим ожидания с пониженным энергопотреблением или выключить, а потом, при готовности к выполнению задания X 2, включить, то на переходные процессы потребуется некоторое время и ВМ2 будет готов к решению очередного задания в момент времени т (т> /0). Целесообразность выключения ВМ2 в этом случае будет иметь место только в случае, когда т < /2.

Очевидно, что при наступлении готовности к выполнению задания X 2 включение ВМ2 должно инициироваться диспетчером, функционирующим на ВМ, отличном от ВМ2. Отсюда следует возможность функционирования диспетчера либо на выделенном ВМ, который не отключается на всем интервале выполнения целевой задачи, либо применение децентрализованного диспетчирова-ния, т. е. запуск копии программы-диспетчера на каждом ВМ при завершении выполнения на нем очередного задания.

иркутский государственный университет путей сообщения

Рассмотрим алгоритм работы диспетчера энергосберегающего параллельного вычислительного процесса в соответствии с расписанием ^м,N , где М - число вычислительных модулей, а

N - число заданий. Программа-диспетчер запускается на каждом ВМ при начале решения целевой задачи, а также при завершении выполнения очередного задания и имеет одинаковый алгоритм функционирования, представленный на рис. 2. Бу-

дем считать, что перед началом реализации ПВП в общей памяти вычислительной системы расположены:

матрица

N, N

смежности заданий;

- матрица-расписание ^м,ы ПВП;

- индикаторные переменные а7, и у .

В начале выполнения целевых задач устанавливаются в единицу все индикаторные пере-

Рис. 2. Алгоритм работы диспетчера

Информатика, вычислительная техника и управление. Приборостроение. Метрология. Информационно-измерительные приборы и системы

менные Р ■, что означает незавершенность выполнения всех заданий, и все индикаторные переменные у ■, что означает активное (включенное) состояние всех ВМ.

Указатель очереди заданий для каждого ВМ отмечает первое задание, номер очередного задания запоминается в переменной Xг . Пересчиты-

ваются значения всех индикаторных переменных

а1. Проверяется готовность к выполнению заданий, назначенных на каждый ВМ, находящийся в пассивном состоянии (выключенный). При наличии таких заданий для у-го ВМ он переводится в активное состояние (включается), а соответствующая ему индикаторная переменная у ■ переводится в единицу. Если очередное задание готово к выполнению, оно запускается на решение. В противном случае ВМ переводится в состояние ожидания (пассивный режим, выключается). По завершении выполнения любого 7-го задания индикаторная переменная Р- устанавливается в

единицу, означая факт окончания работы задания, выбирается из очереди следующее задание и описанные действия продолжаются с пересчета индикаторных переменных а г. Решение целевых

задач завершается выключением каждого ВМ при отсутствии в его очереди невыполненных заданий. При нахождении ВМ в пассивном (выключенном) состоянии в нем должна оставаться возможность перевода в активный лежим (включение) по внешнему сигналу, генерируемому другим ВМ.

Для анализа эффективности диспетчирова-ния энергосберегающих вычислительных процессов рассмотрим результаты имитационного моделирования процесса планирования параллельных вычислений и оценим временные затраты на непроизводительные простои ВМ, вызванные необходимостью синхронизации параллельно выполняемых заданий. Простой в работе ВМ возникает в случае, когда при реализации плана ПВП ВМ освобождается от выполнения задания, а для очередного задания, которое должно начать свое выполнение на данном ВМ, еще не готовы исходные данные. Подобная ситуация имеет место в случае, когда задания, являющиеся источниками этих данных, еще не выполнены.

Моделирование проводилось для вычислительных систем, содержащих от двух ВМ до числа ВМ, соответствующего ширине ярусно-параллельной формы графа [2] целевых задач. При моделировании целевых задач генерировались графы с числом вершин 10-50 и коэффициентом связности [3] 0-0,3.

В качестве показателя простоев ВМ была выбрана относительная доля времени простоя ВМ, определяемая из соотношения

(

8 =

Т р

Л

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

-1

V Т з

■100%,

У

где Т р - общее время работы всех ВМ вычислительной системы;

Тз - общее время выполнения всех заданий.

На рис. 3 графически показаны выявленные закономерности изменения среднего значения 8 простоев вычислительных модулей от коэффициента связности к$ графа целевой задачи для трех

значений числа заданий - 10, 30 и 50. Приведенные зависимости наглядно демонстрируют, что как с ростом числа заданий, так и с повышением их связности простои ВМ увеличиваются, достигая 40 % (при N = 50). Следовательно, управляя режимами энергопотребления ВМ во время их простоев, можно существенно повысить энергоэффективность вычислительного процесса.

Рис. 3. Структура БЗ ЭС для наладки синхронных машин

Результаты моделирования процесса дис-петчирования параллельных вычислений в перспективной бортовой вычислительной системе малого космического аппарата свидетельствуют о возможном снижении потребления энергоресурса

иркутским государственный университет путей сообщения

бортовых источников питания до 30 % при решении широкого круга целевых задач.

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

числа процессоров в вычислительной системе, числа обрабатываемых программ и взаимосвязей между ними и может заключаться в экономии энергоресурса на 30-40 %.

БИБЛИОГРАФИЧЕСКИЙ СПИСОК

1. Барский А. Б. Параллельные информационные технологии : учеб. пособие. - М. : Интернет-университет информационных технологий ; БИНОМ. Лаборатория знаний, 2007. - 503 с.

2. Оре О. Теория графов. - М. : Наука, 1968. - 336 с.

3. Кустов В. Н. Основы теории ограниченного структурного параллелизма. - М. : МО РФ, 1992. - 246 с.

i Надоели баннеры? Вы всегда можете отключить рекламу.