2013-10-26 2 views
0

Перед отправкой одного задания я могу запросить статус одного узла, если узел свободен, а затем отправить его в узел; если нет, то отправьте задание в другой свободный узел. Я хочу, чтобы задание выполнялось на общем узле, а не на других заданиях. Там в любом случае?Есть ли способ запросить статус узла перед отправкой одного задания?

ответ

0

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

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

+0

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

+0

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

+0

Спасибо. Но я обычный пользователь, я думаю, что администратор кластера не согласился со мной. – mining

Смежные вопросы