PARALLEL.RU

Дискуссионный клуб по параллельным вычислениям
Текущее время: 7 дек 19 22:48

Часовой пояс: UTC + 4 часа [ Летнее время ]




Начать новую тему Ответить на тему  [ Сообщений: 21 ]  На страницу 1, 2  След.
Автор Сообщение
 Заголовок сообщения: Создание diskless кластера
СообщениеДобавлено: 14 мар 06 20:29 
Не в сети

Зарегистрирован: 14 мар 06 20:03
Сообщения: 6
Откуда: Odessa, Ukraine
В один прекрасный момент пришел к выводу, что дальше развиваться получится только при использованиии распределенных вычислений. Занимаюсь газодинамикой. После продолжительных мытарств и безуспешных попыток построить кластерную систему пришел к выводу, что лучше всего (и проще) использовать OSCAR http://oscar.openclustergroup.org/.
Требования к кластеру: бездисковые клиенты, обязательное наличие компилятора Fortran90 (имеется интеловский 9.1 под Linux).
Обнаружил проект Thin-OSCAR http://thin-oscar.sourceforge.net/ , но судя по всему он благополучно канул в небытие... :(
Подскажите, пожалуйста, каким путем мне пойти? Спасибо.


Последний раз редактировалось Dragunovsky Nickolay 16 мар 06 15:44, всего редактировалось 1 раз.

Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 15 мар 06 12:56 
Не в сети

Зарегистрирован: 11 дек 02 19:37
Сообщения: 872
Откуда: НИВЦ МГУ
Dragunovsky Nickolay писал(а):
В один прекрасный момент пришел к выводу, что дальше развиваться получится только при использованиии распределенных вычислений. Занимаюсь газодинамикой.

А какие требования предъявляют задачи? Это однопроцессорные задачки, которых много, или это MPI-приложения или нечто аналогичное, или это задача, которую можно разбить на порции и отдавать счётным модулям на обработку? В зависимости от этого можно предложить разные варианты решения...


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: 15 мар 06 15:16 
Не в сети

Зарегистрирован: 14 мар 06 20:03
Сообщения: 6
Откуда: Odessa, Ukraine
Цитата:
А какие требования предъявляют задачи? Это однопроцессорные задачки, которых много, или это MPI-приложения или нечто аналогичное, или это задача, которую можно разбить на порции и отдавать счётным модулям на обработку? В зависимости от этого можно предложить разные варианты решения...


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


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: 16 мар 06 1:55 
Не в сети

Зарегистрирован: 27 апр 03 18:47
Сообщения: 41
Откуда: НЦ ПЭ, Петербург
Я в начале этого года пошел таким путем: (задачи электродинамики)
1. 4 бездисковые машины AMD64 + одна с дисками
2. На той, которая с дисками: DHCP, DNS, TFTP, NFS, загрузка по syslinux
3. Для каждой бездисковой машины: mpich2, acml, plapack

Грубо, это все. Понятно, есть куда развиваться, но и такая конфигурация вполне работоспособна.

Кажется, ничего не забыл... :roll:


Последний раз редактировалось Vladimir Krivenko 16 мар 06 11:50, всего редактировалось 1 раз.

Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: 16 мар 06 11:35 
Не в сети

Зарегистрирован: 11 дек 02 19:37
Сообщения: 872
Откуда: НИВЦ МГУ
Dragunovsky Nickolay писал(а):
Задачи в данный момент - MPI-приложения, реализующие метод Годунова (конечно-разностный метод). В обозримом будущем планируется привлечение множества сотрудников нашего университета с разнообразными задачами (химия, биология, физика, алгебра).


Если это mpi-приложения, то OSCAR поможет не сильно. Нужна система, хорошо работающая с параллельными программами. Большинство использует OpenPBS, но он изначально ориентирован на последовательные задачи, поэтому с параллельными работает не всегда хорошо.
Мы используем свою систему - можете зайти на http://cluster.parallel.ru, посмотреть как оно работает... Заинтересует - пишите на serg#parallel,ru. поможем.
В плане организации начальной загрузки кластера - в предыдущем посте изложен правильный подход. Единственное, что хочу отметить - если есть возможность добавить жёсткий диск и установить ОС туда, это стоит сделать. Могу поделиться способом как это сделать БЫСТРО. Добавив к стоимости узла 50-80 у.е., Вы избавите себя от многих неприятных моментов в будущем, поверьте.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: 16 мар 06 11:57 
Не в сети

Зарегистрирован: 27 апр 03 18:47
Сообщения: 41
Откуда: НЦ ПЭ, Петербург
Касательно начальной загрузки кластера с локальных винтов: у меня была такая возможность, но предпочел сетевую. Понятно, пришлось повозиться, но теперь гораздо проще - одну машину настроил, все остальные поняли. Есть конечно, системы рассылки конфигов на все узлы...

И потом, жалко на узлы ставить большие винты (а маленьких сейчас не продают). Дисковая емкость пропадает впустую. Или нужно распределенную ФС ставить, тоже проблемы с надежностью узлов.

Если есть аргументы против сетевой загрузки, буду рад услышать, равно как и ссылки на полезную информацию по теме.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: 16 мар 06 13:06 
Не в сети

Зарегистрирован: 11 дек 02 19:37
Сообщения: 872
Откуда: НИВЦ МГУ
Vladimir Krivenko писал(а):
Если есть аргументы против сетевой загрузки, буду рад услышать, равно как и ссылки на полезную информацию по теме.

Это, конечно, субъективно, но аргументы следующие:
1. Локальный swap бывает нужен обычно не так уж и часто, но когда он нужен это становится очевидно всем. Особенно nfs-серверу. Т.к. всё сразу загибается.
2. Даже небольшие сетевые проблемы отражаются на всём кластере. Особенно неприятно, когда возникает проблема с узлом, а вот диагностику провести уже сложно, т.к. он нормально не грузится...
3. СЕЙЧАС Вашим задачам локальный диск не нужен. А Вы уверены, что через год-два что он не потребуется? Я видел, как программы замедлялись в десятки (!) раз, когда хранили временные данные на nfs-диске. А точность расчётов с каждым годом растёт, учитываемых факторов тоже становится болше, объёмы данных увеличиваются... ;)
3. Цена вопроса просто смешная, по сравнению с ценой узла.
4. Обновление конфигов делается даже без всяких спец. систем - "for i in node1....nodeN; do scp /etc/{passwd,shadow,hosts,...} $i:/etc; done". Вот и вся синхронизация :) Обновление системы на узлах (а оно надо?) - тоже не шибко сложнее. В случае глобального обновления достаточно обновить один узел и раскопировать его образ на остальные, как при начальной установке.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: 16 мар 06 13:29 
Не в сети

Зарегистрирован: 27 апр 03 18:47
Сообщения: 41
Откуда: НЦ ПЭ, Петербург
Но ведь я и кластер не навсегда делаю, понадобится - добавлю функциональность. На ближайший год требования очерчены, никаких свопов и временных данных. По сути, задача только одна, загрузить в кластер матрицу и вектор правых частей, выдать решение. Когда нас будут бить, тогда и будем плакать, я решил не бежать впереди паравоза. Через год все может быть иначе, другая аппаратура, другие задачи.

Полагаю, резюме стоит иметь такое: в зависимости от задачи и надо выбирать вариант. Универсального ответа нет


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: 16 мар 06 13:34 
Не в сети

Зарегистрирован: 28 май 05 21:12
Сообщения: 217
Откуда: Москва
Serg_Zhum писал(а):
Если это mpi-приложения, то OSCAR поможет не сильно.

Полностью согласен.

Serg_Zhum писал(а):
Большинство использует OpenPBS, но он изначально ориентирован на последовательные задачи, поэтому с параллельными работает не всегда хорошо.

Это не очень правильное мнение. (В который раз нудным голосом повторю) Ипользуйте TorquePBS она отлично работает. Осoбенно в связке с LAM/OpenMPI. OpenPBS действительно не стоит использовать. Она устарела. ЕСли решитесь на PBS пишите на sapr#as.khb.ru поможем :twisted: .

Serg_Zhum писал(а):
Могу поделиться способом как это сделать БЫСТРО. Добавив к стоимости узла 50-80 у.е., Вы избавите себя от многих неприятных моментов в будущем, поверьте.

Способом уже делились в этой ветке: http://hp.parallel.ru/parBB/viewtopic.php?t=159
Там же обсуждали +/- этой технологии.

Мое мнение по поводу бездисковых узлов таково: если вы хотите простенький кластер не более чем из 16 узлов из десктопных компонентов для отладки, обучения, небольших расчетов, компьютерного класса то бездисковый вариант ИМХО вне конкуренции; если собирается production система с мощными узлами и серверными компонентами, то на этом действительно не стоит экономить: локальные SWAP, временные файлы, возможно сама система существенно разгрузят файл сервер.

По опыту администрирования могу сказать, что администрирование diskless, как это кажется на первый взгляд, как минимум не легче. Если перейти на пример со скриптом, то здесь цена вопроса буква "s" в команде "cp".

Но выбор diskless или нет зависит от целей кластера.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: 16 мар 06 14:48 
Не в сети

Зарегистрирован: 14 мар 06 20:03
Сообщения: 6
Откуда: Odessa, Ukraine
Цитата:
Мое мнение по поводу бездисковых узлов таково: если вы хотите простенький кластер не более чем из 16 узлов из десктопных компонентов для отладки, обучения, небольших расчетов, компьютерного класса то бездисковый вариант ИМХО вне конкуренции


Спасибо за советы!
Думаю, что действительно, временно подойдет простенький кластер из не более чем 16 узлов из десктопных компонентов - на этой системе вполне можно будет проводить эксперименты и учиться писать MPI-программы.
Я пробовал справиться с Thincluster (http://linux-cluster.org.ru), но там оказался старый дистрибутив для загрузки на нодах (Fortran90 я реализовать не мог) - попытка создать "свой" образ для загрузки провалилась, т.к. я не нестолько хорош в unix-администрировании :(
Я понимаю, насколько наивно это звучит, но есть ли готовые инструкции по установке и настройке diskless-кластеров? Единственное требование - на нем должны работать MPI-приложения, написанные на Fortran90.
Спасибо.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: 16 мар 06 15:34 
Не в сети

Зарегистрирован: 28 май 05 21:12
Сообщения: 217
Откуда: Москва
Dragunovsky Nickolay писал(а):
Я не нестолько хорош в unix-администрировании :(

Это фигня :)
Dragunovsky Nickolay писал(а):
Я понимаю, насколько наивно это звучит, но есть ли готовые инструкции по установке и настройке diskless-кластеров?

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

Если вы не специалист в Unix, то не стоит по началу "заморачиваться" на сложных вещах типа DNS и diskless. Купите узлы (одинаковые) с простенькими $50-100 винтами. Установите на один из них систему. Для простоты рекомендую RHEL и клоны (CentOS например) или SuSE. Установите реализацию MPI в базовом варианте. Попробуйте работоспособность MPI и программ на одном узле. Бессовестно воспользуйтесь командой dd и склонируйте диски. При добавлении клонов в кластер достаточно сменить им IP адрес и имя.
Поднимите NFS на сервере и для удобства монтируйте home на узлах по NFS. Это очень просто и очень полезно.

Dragunovsky Nickolay писал(а):
Единственное требование - на нем должны работать MPI-приложения, написанные на Fortran90.

Вот с этим уже сложнее. В линуксах с gcc4 есть fortran90, но он, говорят, сыроват. Сам я не пробовал. Можете попробовать. Если для Вас он подойдет, то используйте. В случае если нет, то рекомендую продукт от Intel. Но для этого mpi реализацию нужно собирать тоже с его помощью. Это достаточно просто, но + расходы на компилятор.

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

1. DHCP (нужен для дисклесс)
2. Diskless либо удаленная заливка образа.
3. PBS (если требуется диспетчеризация)
4. система мониторинга.

Думаю если где ошибся/не договорил меня поправят.

А прочитать про дисклесс можно здесь например: http://cluster.as.khb.ru/bdr3.doc . Дока правда не дописанная (но с примерами и ссылками). Да и в интернете много всего :roll:


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: 16 мар 06 15:38 
Не в сети

Зарегистрирован: 28 май 05 21:12
Сообщения: 217
Откуда: Москва
Их готовых и работающих можно посмотреть на parallel Knoppix:
http://pareto.uab.es/mcreel/ParallelKno ... orial.html
но я бы не рекомендовал использовать такие решения.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: 16 мар 06 15:55 
Не в сети

Зарегистрирован: 27 апр 03 18:47
Сообщения: 41
Откуда: НЦ ПЭ, Петербург
Я сам на Фортране не пишу, но знакомые прогеры говорят, что гнутый фортран90 еще очень далек от серьезного применения. По их просьбе я занимался этим вопросом и могу сообщить вот что: (я рассматривал Linux под amd64 )
1. Отправная точка - проц. Если это Intel, то их компилер вполне удовлетворит. Если amd, то на сайте amd.com в разделе для разработчиков есть ссылки на нескольких производителей, например, PathScale. Понятное дело, все это не бесплатно.
2.При выборе компилятора стоит обратить внимание на InstallGuide от библиотек, которые вы планируете использовать совместно с вашим софтом. Если там нет инструкций по их сборке для планируемого компилера, это может стать существенным тормозом. Как водится, все похоже, но дьявол, как известно, кроется в деталях. Актуальной русской документации очень мало.
3. Несколько раз встречал в инете обзоры, где утверждается, что использование интеловского компилятора (правда в контексте C++) на amd64 проце с учетом ограничений по наборам команд дает более производительный код, чем GCC.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: 16 мар 06 16:02 
Не в сети

Зарегистрирован: 27 апр 03 18:47
Сообщения: 41
Откуда: НЦ ПЭ, Петербург
Andrew Sapronov писал(а):
Их готовых и работающих можно посмотреть на parallel Knoppix:
http://pareto.uab.es/mcreel/ParallelKno ... orial.html
но я бы не рекомендовал использовать такие решения.


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

Mandrake и Gentoo вроде бы оба Линуксы, но почувствуйте разницу...
(нисколько не умаляя прелестей первого :roll: )


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: 17 мар 06 14:23 
Не в сети

Зарегистрирован: 14 мар 06 20:03
Сообщения: 6
Откуда: Odessa, Ukraine
А какой дистрибутив Linux предпочтительней при построении кластерных систем? Я понимаю, что вопрос весьма субъективен, но все же - Ваше личное мнение?


Последний раз редактировалось Dragunovsky Nickolay 17 мар 06 16:08, всего редактировалось 1 раз.

Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 21 ]  На страницу 1, 2  След.

Часовой пояс: UTC + 4 часа [ Летнее время ]


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 2


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
cron
Создано на основе phpBB® Forum Software © phpBB Group
Русская поддержка phpBB