Запретить выполнение не-SGE программ

С точки зрения системного администрирования узла SGE, возможно ли заставить пользователей запускать долго выполняющиеся программы через qsub вместо того, чтобы запускать его автономно?

Проблема в том, что одна и та же машина действует как управляющий узел и вычислительный узел. Итак, я не могу отличить долго работающую программу от пользователя, который компилирует с помощью "gcc". В идеале я хотел бы заставить пользователей отправлять длительные задания (т. Е. Более часа) через qsub. Я даже не против быть немного скупым и убивать задания, которые выполнялись дольше часа, но не были отправлены через qsub.

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

Я просмотрел конфигурацию SGE и, похоже, ничего не актуально. Но, может быть, я что-то пропустил... любая помощь будет оценена! Спасибо!

1 ответ

Я немного озадачен вашей настройкой, но я предполагаю, что пользователи отправляют задания, войдя в систему, которая также является вычислительным узлом. Вот несколько идей, от лучших к худшим:

  1. Очевидно, что лучше всего иметь отдельный узел управления для пользователей.

  2. За исключением этого, запустите виртуальную машину с ограниченными ресурсами в качестве управляющего узла.

  3. Настройте ограничения ресурсов уровня пользователя (например, ulimit) на узлах. Вы можете ограничить использование процессора, памяти и процессов, что, скорее всего, то, что вам нужно, а не время.

Похоже, что последний может быть лучшим для вас. Это тоже не сложно.

Другие вопросы по тегам