научная статья по теме ЭНЕРГОЭФФЕКТИВНЫЕ ВЫЧИСЛЕНИЯ ДЛЯ ГРУППЫ КЛАСТЕРОВ Математика

Текст научной статьи на тему «ЭНЕРГОЭФФЕКТИВНЫЕ ВЫЧИСЛЕНИЯ ДЛЯ ГРУППЫ КЛАСТЕРОВ»

ПРОГРАММИРОВАНИЕ, 2013, No 6, с. 60 67

ОПЕРАЦИОННЫЕ СИСТЕМЫ -

УДК 681.3.06

ЭНЕРГОЭФФЕКТИВНЫЕ ВЫЧИСЛЕНИЯ ДЛЯ ГРУППЫ

КЛАСТЕРОВ *

© 2013 г. Д.А. Грушин, H.H. Кузюрин

Институт системного программирования РАН 109004 Москва, ул. А. Солженицына, 25 E-mail: grushin@ispras.ru, nnkuz@ispras.ru Поступила в редакцию 02.05.2013

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

1. ВВЕДЕНИЕ

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

Типичный вычислительный кластер (Beowulf кластер1) состоит из широко распространённого аппаратного обеспечения и работает под управлением операционной системы GNU/Linux или FreeBSD. Если кластер предназначен для использования многими пользователями, то управление кластером осуществляет менеджер ресурсов. Пользователи отправляют свои задания менеджеру, который ставит их в очередь и, по мере высвобождения вычислительных узлов, осуществляет запуск заданий.

От количества поступающих задач зависит

* Выполнено при финансовой поддержке Минобрнауки РФ, контракт 07.514.11.4001

1 Одна из типичных конфигураций - набор компьютеров, собранных из общедоступных компонентов, с установленной на них операционной системой Linux, и связанных сетью Ethernet, Myrinet, InfiniBand или другими относительно недорогими сетями. Такую систему принято называть кластером Beowulf.

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

В работе [1] мы показали, что временный перевод простаивающих узлов кластера в спящий режим приводит к существенной экономии электроэнергии. В данной работе мы хотим рассмотреть возможность снижения расхода электроэнергии для группы кластеров, находящихся под управлением одного менеджера ресурсов - брокера, который, получая поток заданий от пользователей, распределяет их между кластерами. В такой системе существует несколько возможностей для экономии электроэнергии (как в количественном смысле, так и в денежном - снижая стоимость энергии):

• Различная энергоэффективность (отношение производительности к энергопотреблению) кластеров;

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

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

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

2. ОПТИМИЗАЦИЯ ЭНЕРГОПОТРЕБЛЕНИЯ ОДНОГО КЛАСТЕРА

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

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

стью компонент вычислительной системы. Современные процессоры и оперативная память имеют возможность динамически из-

менять свою частоту и рабочее напряжение. Такой механизм носит название DVS (dynamic voltage and frequency scaling). Основной принцип данного механизма заключается в том, что при понижении напряжения процессора время вычислений увеличивается, однако общее количество энергии потраченной на вычисления уменьшается.

Важный аспект динамического управления энергопотреблением состоит в том, что смена состояния системы (включение, изменение производительности и т.п.) имеет стоимость, выраженную в дополнительном количестве потреблённой энергии, задержки или потери производительности, что, вообще говоря, не гарантирует снижения энергозатрат при переводе системы в спящий режим в отсутствие работы и обратно по мере надобности. Для того, чтобы компенсировать данные потери энергии, система должна находиться в спящем состоянии не менее определённого промежутка времени. Такой промежуток времени называется "минимальным временем сна" (таблица 1).

Так, не более чем в 2 раза худший результат по сравнению с оптимальным по критерию минимизации затраченной энергии гарантируется, если отключать устройство через время т = Tbe [8]. И не более чем в e/(e — 1) = 1, 58 раза если выключать устройство через время t с вероятностью pt = Ket/Ewu, где K = 1/(Ewu(e — 1)) [8], что является наилучшей возможной оценкой в классе онлайновых вероятностных алгоритмов [2].

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

• Каждая многопроцессорная задача требует одновременного включения нескольких узлов.

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

Из проведённых нами измерений [1] видно, что в состоянии простоя узел кластера потребляет в

Таблица 1. Основные обозначения

Величина Значение

E Ewu количество энергии, расходуемое при включении

Esd количество энергии, расходуемое при выключении

Tbe минимальное время сна, компенсирующее потери энергии от включения и выключения (break-even time)

Twu wakeup delay - задержка при включении

T время простоя

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

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

Результаты показывают, что при очень слабых потоках (примерно 10 задач в день в нашем эксперименте) отключение узлов снижает потребление энергии в 4-5 раз. При меньшем количестве задач эта величина будет ещё больше. Средние значения находятся в середине графика. Потребление энергии в данном случае сокращается на 20-80% в зависимости от интенсивности потока задач.

3. ОПТИМИЗАЦИЯ ЭНЕРГОПОТРЕБЛЕНИЯ ГРУППЫ КЛАСТЕРОВ

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

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

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

Для создания экспериментальной модели были выбраны несколько кластеров из списка ТОРбОО за 2011 год [9]. Для выбранных кластеров мы взяли из списка значения энергоэффективности и размера, минимальное значение каждого параметра было принято за единицу.

Для упрощения модели мы предположили, что все кластеры имеют одинаковую производительность вычислительных узлов. Базовую величину пикового энергопотребления одного узла кластера мы предположили равной 520 Вт, исходя из данных, полученных нами ранее для узла кластера установленного в ИСП РАН (HP ProLiant DL380 G3) [1]. Значения энергопотребления в состояниях простоя и сна составили 0,43 и 0,03 от пикового соответственно. Величина энергопотребления для каждого узла вычислялась как произведение базового энергопотребления и коэффициента энергоэффективности кластера.

Список кластеров представлен в таблице 2. Стоимость электроэнергии в представленных странах была взята из публично доступных данных [10].

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

Для дальнейшего прочтения статьи необходимо приобрести полный текст. Статьи высылаются в формате PDF на указанную при оплате почту. Время доставки составляет менее 10 минут. Стоимость одной статьи — 150 рублей.

Показать целиком