Я пытаюсь заставить код работать параллельно, используя mpirun
, в очереди PBS. Сценарий, который я использую ниже:
#!/bin/bash
#PBS -S /bin/bash
#PBS -l nodes=1:ppn=4
#PBS -l walltime=4:10:00
#PBS -N job
#PBS -j oe
/usr/bin/mpirun -np 4 a.out
, где a.out
- исполняемый файл. Проблема в том, что mpirun
, который я использую, находится на главном узле кластера. Я хочу использовать mpirun
, установленный на моих собственных вычислительных узлах, который также находится в / usr / bin / mpirun.
Я попытался просто скопировать mpirun
в папку и запустить со строкой
./mpirun -np 4 hello.out
и это сработало для некоторой простой программы "hello world", но она не работает для более сложного кода. Это также работает с моего вычислительного узла, если я просто наберу
/usr/bin/mpirun -np 4 a.out
Как использовать mpirun
вычислительного узла в сценарии PBS? Я просто не могу использовать материал на главном узле, потому что это старая версия Linux, которую я не готов изменить.