Мы планируем развернуть систему очередей, и, похоже, SGE удовлетворит почти все наши пожелания. Однако у нас была идея поддерживать как синхронную, так и асинхронную модель организации очередей. Другими словами:
Мы бы связали все наши рабочие узлы с синхронной очередью, чтобы назначенные им задания ставились в очередь как обычно - то есть задание выполняется, когда оно завершается, другое принимается и запускается.
Мы также хотели иметь возможность назначать узлам «асинхронные» задания. Это могут быть задачи, которые можно выполнять параллельно с другими задачами, обычно это задачи по обслуживанию самих машин.
В документации SGE я вижу, что можно определить несколько очередей между узлами, но это не совсем то же самое, что иметь очередь, которая берет любое задание, которое ему передается, запускает его в фоновом режиме, а затем принимает другое. Я не совсем в курсе всех параметров конфигурации в SGE, но похоже, что это возможно. Может ли кто-нибудь указать мне на некоторую информацию о том, как это можно настроить?
Вы можете определить количество слотов в очереди. Таким образом, для вашей «синхронной» очереди заданий вы можете установить количество слотов на хост равным 1. Таким образом, только одно задание будет приниматься в очередь хоста за раз, а после его завершения может выполняться другое. Для «асинхронной» очереди просто установите для количества слотов какое-то большое число, чтобы любое количество заданий, которое вам нужно, могло выполняться одновременно на хосте.
Теперь, когда у вас есть две очереди, вам нужно каким-то образом назначать для них задания. Простой способ сделать это - просто использовать -q
переключитесь на qsub, чтобы явно выбрать очередь, например: qsub -q 'sync.q@*'
.
Однако желательно разрешить gridengine решать, в какую очередь помещать задание. Для этого вы можете определить комплекс, скажем sync
и установите forced
атрибут к истине. Затем вы ставите этот комплекс в очередь. Сейчас вакансии отправлены с qsub -l sync
будет помещен в очередь только с этим доступным атрибутом. Преимущество этого заключается в некоторой дополнительной гибкости, если вы решите реорганизовать свои очереди, а также в несколько более простой процедуре отправки.