Проблема отправки заданий на SGE для запуска на полных узлах уже рассматривалась на этом форуме. Было предложено несколько решений, одно из которых - настроить SGE для использования параметра -l excl = TRUE, другое решение - запросить у SGE жесткую память или ограничения нагрузки.
Я использую кластер из мой университет для моей магистерской диссертации, параллельная среда openmpi настроена со стратегией заполнения. Обычно узлы кластера содержат по 16 или 20 ядер, проблема в том, что некоторые пользователи вместо запуска вычислений с числом ядер, кратным 16 (или 20), они запускают свои задания с произвольным числом ядер. . В результате, когда я запускаю задание с -pe openmpi 16, иногда SGE резервирует процессоры на 3 узлах (например, 6 + 1 + 10), что очень замедляет вычисления.
Я попросил администратора настроить кластер чтобы разрешить -l excl = TRUE, но он отказался изменять конфигурацию перед выполнением тестов (я не знаю, как долго).
Теперь у меня есть новая идея, которая может позволить мне получить результат, аналогичный (- l excl = TRUE), но без изменения кластера:
Кто-нибудь может предоставить мне пример такого кода?