Как уведомить SGE о работе с несколькими процессами - PullRequest
0 голосов
/ 09 октября 2018

Мы строим наше программное обеспечение на SGE, работающем на ведомых устройствах CentOS, и оно работает хорошо.Мой вопрос заключается в том, как сказать SGE, что задание занимает несколько ядер на данном ведомом, запустив несколько процессов?

Объяснение:
Процесс включает в себя модели обучения, которые влекут за собой множество последовательных небольших изменений (относительно)большие файлы данных с количеством заданий более 10 тыс.Большинство инструментов, которые мы используем, поддерживают чтение и запись из stdin / out.Это позволило бы нам передавать данные из одного инструмента в другой (тесты показывают, что это также будет хорошо работать).

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

Пример:
2 вычислительных узла, NodeA и NodeB, каждый с 10 слотами, настроенных для назначения заданийв режиме «заполнения».
Job1 "tool1 -a A -b B | tool2 -c C | tool3 -d D"

Когда я запускаю «Job1» и он назначается узлу NodeAтам выполняются три процесса ('tool1', 'tool2', 'tool3').Но SGE знает только об одном задании и все еще думает, что может назначить еще 9 заданий узлу A вместо 7, что может привести к перегрузке узла.

Я посмотрел на pe_range, но, похоже,ссылаются на несколько заданий, а не задание с несколькими процессами.

Спасибо.

1 Ответ

0 голосов
/ 24 октября 2018

Ваш кластер SGE должен быть сконфигурирован с так называемой «параллельной средой».Поговорите с системным администратором, чтобы убедиться, что параллельная среда существует и как она называется.Затем отправьте свою работу с помощью qsub, указав имя параллельной среды и количество ядер ЦП, которые вам нужны на узле.Например, если ваша параллельная среда называется «foo» и вам нужно 8 ядер ЦП, добавьте эти параметры в командную строку qsub:

-pe foo 8

...