Upload
oriel
View
50
Download
0
Embed Size (px)
DESCRIPTION
CluBORun : средство использования свободных ресурсов вычислительных кластеров для BOINC -расчетов. Манзюк М.О . , Заикин О.С. ИДСТУ СО РАН, Иркутск. BOINC + кластер ы. BOINC – платформа для организации грид -вычислений и добровольных вычислений. BOINC на кластерах – 2 подхода. - PowerPoint PPT Presentation
Citation preview
CluBORun: средство использованиясвободных
ресурсоввычислительных кластеровдляBOINC-расчетов
Манзюк М.О., Заикин О.С.
ИДСТУ СО РАН, Иркутск
BOINC + кластеры
BOINC – платформа для организации грид-вычислений и добровольных вычислений.
BOINC на кластерах – 2 подхода.
1. С использованием платформы BOINC создается гетерогенный грид, в него добавляются кластеры.
Пример – грид*, созданный в ИПМИ КарНЦ РАН. В состав этого грида входят серверы, ПК сотрудников, а также вычислительный кластер ЦКП КарНЦ РАН.
* Ивашко Е.Е., Никитина Н.Н. Использование BOINC-грид в вычислительноемких научных исследованиях // Вестник НГУ. Серия: Информационные технологии. 2013. Т. 11, Вып. 1. С. 53–57.
2
BOINC + кластеры
2. Узлы кластера напрямую подключаются к проекту добровольных вычислений на основе BOINC. При этом каждый узел кластера будет рассматриваться как отдельный компьютер (хост) в проекте.
В проекте Einstein@home впервые кластер был подключен в 2007 году. Благодаря этому производительность проекта выросла с 64 до 89 TFLOPs. С тех пор в проекте Einstein@home постоянно используются кластеры.
В 2011-2012 гг. к проекту SAT@home был подключен кластер ИМЭИ ИГУ, на котором не проводились другие расчеты.
3
BOINC + кластерыДля реализации обоих подходов необходимы права администратора на использование кластера.
На узлах кластера запускается BOINC-клиент в обход очереди заданий.
Если на узле запускаются процессы пользователей кластера (через очередь заданий), то BOINC-клиент ставит свои вычисления на паузу (как на обычном ПК).
+ простой и надежный способ
– неприменим без прав администратора
4
КластерывBOINC- проектах : актуальность
• Прирост производительности от кластеров может быть весьма значительным.
• Вычислительные мощности кластеров могут простаивать, а запуск BOINC-расчетов решит эту проблему.
• Кластер – надежное устройство. Результаты расчетов на кластере можно принять как эталонные при проверке результатов копий заданий.
• Важно для репутации проекта – если не задействуются имеющиеся у научного сообщества вычислительные мощности, то почему они запрашиваются у мирового сообщества?
• Одна единица задействованных мощностей может привлечь еще несколько единиц благодаря конкуренции среди команд за лидирующие позиции в рейтингах статистики.
5
Предлагаемыйподход
Требования:• Использовать только права обычного пользователя
кластера.• Использовать только свободные ресурсы кластера.
Решение:• Периодически анализировать очередь заданий
кластера. • Если есть свободные ресурсы, запускать на них
MPI-задачи, которые в качестве промежуточного ПО используют BOINC.
• Если в очереди появляются задачи других пользователей, прерывать MPI-задачи с BOINC.
6
Реализация
Cluster for BOINC Run (CluBORun) – средство для запуска BOINC-расчетов на кластерах.
Аналог BOINC-менеджера, который управляет процессом вычислений на ПК добровольцев – только вместо свободных ресурсов ПК предлагается использовать свободные ресурсы кластера.
Использован awk - интерпретируемый скриптовый C-подобный язык, работает в bash (sh) скриптах.
7
. Реализация Компоненты
• Каталоги с экземплярами BOINC-клиента – для каждого узла свой каталог.
• Файлы-флаги, соответствующие экземплярам BOINC-клиентов. При запуске BOINC-клиента создается start-флаг, в случае необходимости его остановки – stop-флаг.
• Скрипт start_boinc.sh, который запускает BOINC-клиент на выделенном ему узле кластера
• Скрипт catch_node.sh, предназначенный для анализа загрузки кластера, запуска скриптов start_boinc.sh и для остановки BOINC-клиентов.
8
. Реализация Скрипт catch_node.sh
• Каждые 5 минут (через crontab) выполняется скрипт анализа очереди catch_node.sh
• catch_node.sh запрашивает список задач, запущенных на кластере и стоящих в очереди.
• параметр clusterNodes определяет максимальное допустимое количество узлов кластера, на которых может быть запущен BOINC.
• при обнаружении свободных узлов запускаются BOINC-задачи, используя скрипт запуска start_boinc.sh.
• если в очереди появились задания других пользователей, которые могли бы начать выполняться на высвобождаемых узлах, то BOINC-задачи останавливаются.
9
. Реализация Скрипт start_boinc.sh
• скрипт start_boinc.h на выделенном ему узле запускает BOINC-клиент с использованием MPI через очередь заданий.
• MPI используется как оболочка – управление передается BOINC-клиенту который использует узел кластера как обычный ПК.
• главный MPI-процесс отсчитывает время работы и выполняет своевременную остановку BOINC-клиента при достижении лимита на время работы.
• параметр timelimit определяет на какое время запускается BOINC-задача. Рекомендуемое минимальное значение для SAT@home – 1 час.
10
Общаясхемавычислений
11
Связьсинтернетом
На кластере может быть открыт доступ в интернет:• только с управляющего узла• со всех узлов
На кластере blackford ИДСТУ СО РАН доступ был открыт со всех узлов.
CluBORun запускает на каждом узле BOINC-клиент,
который связывается с сервером проекта.
TODO
Настроить прокси, чтобы связь была только через управляющий узел. Для этого тоже не нужны
права администратора.
12
ПроектдобровольныхвычисленийSAT@home
Совместный проект ИДСТУ СО РАН и ИППИ РАН. Предназначен для решения вычислительно сложных задач, эффективно сводимых к SAT-задачам.
29.09.2011 – запуск проекта.
Успешно решены задачи логического криптоанализа генератора A5/1, а также задачи поиска систем ортогональных латинских квадратов.
С помощью CluBORun ресурсы кластера Blackford ИДСТУ СО РАН были использованы в SAT@home 13
ЗагрузкакластераBlackford 12.04 с по13.05
14
2013
.04.
12 1
3:40
2013
.04.
13 0
7:40
2013
.04.
14 1
8:40
2013
.04.
15 1
2:40
2013
.04.
16 0
6:40
2013
.04.
17 0
0:40
2013
.04.
17 1
8:45
2013
.04.
18 1
2:45
2013
.04.
19 0
6:45
2013
.04.
20 0
0:45
2013
.04.
20 1
8:45
2013
.04.
21 1
2:45
2013
.04.
22 0
6:45
2013
.04.
23 0
6:20
2013
.04.
24 0
0:20
2013
.04.
24 1
8:20
2013
.04.
25 1
2:20
2013
.04.
26 0
6:20
2013
.04.
27 0
0:20
2013
.04.
27 1
8:20
2013
.04.
28 1
2:20
2013
.04.
29 0
6:20
2013
.04.
30 0
0:20
2013
.04.
30 1
8:20
2013
.05.
01 1
2:20
2013
.05.
02 0
6:20
2013
.05.
03 0
0:20
2013
.05.
03 1
8:20
2013
.05.
04 1
2:20
2013
.05.
05 0
6:20
2013
.05.
06 0
0:20
2013
.05.
06 1
8:20
2013
.05.
07 1
2:20
2013
.05.
08 0
6:20
2013
.05.
09 0
0:20
2013
.05.
09 1
8:20
2013
.05.
10 1
2:20
2013
.05.
11 0
6:20
2013
.05.
12 0
0:20
2013
.05.
12 1
8:20
2013
.05.
13 1
2:20
0
16
32
48
64
80
96
112
128
144
160
176
192
208
224
Заблокировано Приложения BOINC Свободно Очередь
Время
Чи
сл
о я
де
р
Вариантыиспользования
• Использовать все свободные ресурсы кластера
• Использовать не более определенного числа ресурсов
15
Перспективы
• Связь с сервером проекта с только с главного узла через прокси.
• Поддержка различных систем очередей.
• Выделение в SAT@home доверенных хостов, подключенных через CluBORun.
• Попасть в список дополнений BOINC, чтобы разработанным средством пользовались в других проектах.
http://boinc.berkeley.edu/addons.php
16
Перспективы
17
Спасибо за внимание!
18