SunGridEngine, Condor, Torque как менеджеры ресурсов для PVM - PullRequest
6 голосов
/ 23 февраля 2010

Кто-нибудь знает, какой менеджер ресурсов хорош для PVM? Или я не должен был использовать PVM и вместо этого полагаться на MPI (или любую его версию, такую ​​как MPICH-2 [есть ли другие, которые лучше?]). Основная причина использования PVM заключалась в том, что человек до меня, который начал этот проект, предполагал использовать PVM. Однако теперь, когда этот проект принадлежит мне (он не выполнил какой-либо значительной работы, основанной на PVM), это можно легко изменить, желательно на что-то, что легко установить, поскольку установка и настройка PVM была большой проблемой.

Я склоняюсь к SunGridEngine, видя, как у меня выделенное оборудование, и после прочтения еще одного поста, который лучше подходит для выделенного оборудования, SGE кажется победителем. Однако я не уверен в его производительности с использованием PVM. Хотите знать, есть ли у кого-нибудь опыт работы с PVM и SGE?

Если люди используют SGE, что вы используете для связи с компьютера на компьютер (или с виртуальной машины на виртуальную машину)

О, и я буду запускать приложения / строки Perl, если это имеет значение.

Есть предложения или идеи?

Заранее спасибо всем комментариям,

  • ТЮГ

1 Ответ

2 голосов
/ 23 февраля 2010

Я запускаю PVM в системах Linux, используя Torque, SGE и LSF без проблем. Вы спрашиваете: «Можно ли использовать SGE, Torque и т. Д. Для запуска приложений PVM?»?

Если это так, ознакомьтесь с моими примерами сценариев заданий Linux c-shell ниже. Обратите внимание, что сценарии практически идентичны, за исключением заголовка каждого сценария, который соответствует соответствующему формату для каждого менеджера ресурсов.

Сценарий задания SGE:

#!/bin/csh
#$ -N LTR-001
#$ -o LTR-001.output
#$ -e LTR-001.error
#$ -pe comp 24
#$ -l h_rt=04:00:00
#$ -A cmit2
#$ -cwd
#$ -V

# Setup envirnoment
setenv LD_LIBRARY_PATH /lfs0/projects/cmit2/opt-intel/overture-noX/lib:${LD_LIBRARY_PATH}
setenv PVM_ARCH LINUX
setenv PVM_ROOT /lfs0/projects/cmit2/opt-intel/pvm3
setenv PVM_BIN ${PVM_ROOT}/bin
setenv PVM_RSH /usr/bin/ssh
setenv MY_HOSTS pvm_hostfile

rm -f ~/.pvmprofile
env | grep PVM_ > ~/.pvmprofile

# Create file containing _unique_ host names.  Note that there are two possible sources of available hosts
sort -k 1,1 -u ${MACHINE_FILE} >! ${MY_HOSTS}

# Start PVM & add nodes
printf "%s\n%s\n" conf quit|${PVM_ROOT}/lib/pvm ${MY_HOSTS}
wait
sleep 2

#
# Run apps requiring PVM.
#

wait
# Exit PVM daemon
echo "reset" | $PVM_ROOT/lib/pvm
echo "halt" | $PVM_ROOT/lib/pvm

Скрипт задания крутящего момента:

#!/bin/csh
#PBS -N LTR-001
#PBS -o LTR-001.output
#PBS -e LTR-001.error
#PBS -l nodes=3:ppn=8
#PBS -l walltime=04:00:00
#PBS -q compute
#PBS -d .

# Setup envirnoment
setenv LD_LIBRARY_PATH /users/ps14/opt-intel/overture/lib:${LD_LIBRARY_PATH}
setenv PVM_ARCH LINUX64
setenv PVM_ROOT /users/ps14/opt-intel/pvm3
setenv PVM_BIN ${PVM_ROOT}/bin
setenv PVM_RSH ${PVM_ROOT}/ssh
setenv MY_HOSTS pvm_hostfile

rm -f ~/.pvmprofile
env | grep PVM_ > ~/.pvmprofile

# Create file containing _unique_ host names.  Note that there are two possible sources of available hosts
sort -k 1,1 -u ${PBS_NODEFILE} >! ${MY_HOSTS}

# Start PVM & add nodes
printf "%s\n%s\n" conf quit|${PVM_ROOT}/lib/pvm ${MY_HOSTS}
wait
sleep 2

#
# Run apps requiring PVM.
#

wait
# Exit PVM daemon
echo "reset" | $PVM_ROOT/lib/pvm
echo "halt" | $PVM_ROOT/lib/pvm
...