История изменений
Исправление AlexVR, (текущая версия) :
Есть рабочая группа из четырех человек включая меня, занимающихся различным числодроблением.
Во первых: нужна потоковая или пакетная обработка?
Если потоковая
Т.е. несколько задач, которые работают месяцами, передавая данные друг другу.
Мне хотелось бы сделать все стильно, модно и молодежно, с отдельными виртуальными машинами (KVM) на каждую задачу.
Сейчас «стильно, модно и молодежно» - это контейнеры в Docker.
Для HPC есть даже спец проект: Singularity
Если пакетная
Суммарно много задач, каждая из которых работает часы или дни.
Особо не вижу смысла в своём узле вне кластера. Но.
На нашем вычислительном кластере виртуализация не используется. Как мне ответил его администратор, в том числе, по причинам производительности.
Всё верно он ответил. На HPC-кластере совершенно не нужна виртуализация. Как правило вычислительный узел базируется на минимальной установке ОС, с выпиливанием всех лишних служб и библиотек. Тем самым максимально отдаётся процессорное время пользовательским программам. Даже сотые доли процента процессорного времени на ядро, могут уменьшить на несколько процентов суммарное время работы активно синхронизирующегося MPI-приложения на нескольких узлах.
От сюда вывод. Все библиотеки и программы работающие на вычислительном кластере к ОС не имеют отношения, хранятся и выполняются в пользовательском окружении. Никого не смущает на кластере с Centos 6.x использовать последние версии компиляторов.
Отсюда и мода к environment modules на кластерах.
Ищё одно сильное место нормального кластера: Кластерная ФС. Таже Люстра спокойно обходит локальный SSD. А про объём и говорить нечего.
Хорошим подспорием при работе на кластерах является EasyBuild
Так что:
При использовании кластера есть некоторые административные и технические ограничения, которые усложняют работу.
Скорее смахивает на неумение работы на нём.
Исходная версия AlexVR, :
Есть рабочая группа из четырех человек включая меня, занимающихся различным числодроблением.
Во первых: нужна потоковая или пакетная обработка?
Если потоковая
Т.е. несколько задач, которые работают месяцами, передавая данные друг другу.
Мне хотелось бы сделать все стильно, модно и молодежно, с отдельными виртуальными машинами (KVM) на каждую задачу.
Сейчас «стильно, модно и молодежно» - это контейнеры в Docker.
Для HPC есть даже спец проект: Singularity
Если пакетная
Суммарно много задач, каждая из которых работает часы или дни.
Особо не вижу смысла в своём узле вне кластера. Но.
На нашем вычислительном кластере виртуализация не используется. Как мне ответил его администратор, в том числе, по причинам производительности.
Всё верно он ответил. На HPC-кластере совершенно не нужна виртуализация. Как правило вычислительный узел базируется на минимальной установке ОС, с выпиливанием всех лишних служб и библиотек. Тем самым максимально отдаётся процессорное время пользовательским программам. Даже сотые доли процента процессорного времени на ядро, могут уменьшить на несколько процентов суммарное время работы активно синхронизирующегося MPI-приложения на нескольких узлах.
От сюда вывод. Все библиотеки и программы работающие на вычислительном кластере к ОС не имеют отношения, хранятся и выполняются в пользовательском окружении. Никого не смущает на кластере с Centos 6.x использовать последние версии компиляторов.
Отсюда и мода к environment modules на кластерах.
Ищё одно сильное место нормального кластера: Кластерная ФС. Таже Люстра спокойно обходит локальный SSD. А про объём и говорить нечего.
Хорошим подспорием при работе на кластерах является https://easybuild.readthedocs.io/en/latest/
Так что:
При использовании кластера есть некоторые административные и технические ограничения, которые усложняют работу.
Скорее смахивает на неумение работы на нём.