использование qsub (sge) с многопоточными приложениями - PullRequest
4 голосов
/ 30 ноября 2011

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

Кто-нибудь знает, как этого добиться?Благодарю.

Система пакетного сервера - sge.

Ответы [ 2 ]

4 голосов
/ 04 сентября 2012

В SGE / UGE конфигурация задается администратором, поэтому вы должны проверить, что они называли параллельными средами

qconf -spl 
make
our_paraq

. Ищите одну с $pe_slots в конфигурации

*.1006 *

qsub с этой средой и количеством ядер, которые вы хотите использовать

qsub -pe our_paraq 8 -cwd ./myscript

Если вы используете mpi, у вас есть больше вариантов для правила выделения конфигурации ($pe_slots выше), например $round_robin и $fill_up, но это должно помочь вам.

0 голосов
/ 26 января 2012

Если ваша работа многопоточная, вы можете использовать преимущество многопоточности даже в SGE.В SGE для одного задания можно использовать один или несколько процессоров.Если вы отправляете задание, которое использует один процессор, и у вас есть программа, которая имеет много потоков, которые не может обработать один процессор, возникает проблема.Проверьте, сколько процессоров использует ваша работа и сколько потоков на процессор создает ваша программа.

В моем случае у меня есть Java-программа, которая использует один процессор с двумя потоками, она работает довольно эффективно.Я отправляю одну и ту же Java-программу для выполнения многим процессорам с двумя потоками каждый, чтобы сделать ее параллельной, поскольку я не использовал MPI.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...