MPI

MPI

MPI (Message Passing Inerface)[1] is a library specification for message passing standardized by committee of vendors, implementors, and users

Important Notes

Please note that sometimes the MPI job has trouble gathering the child processes on-time if the code is really short. One way to make sure that the mpi code waits up until all the child processes come through and then proceeds with the next step in the PBS script is to include these lines in the PBS script:

mpiexec a.out & pid=$!

wait ${pid}

or to use the mpirun instead of mpiexec:

cp $PBS_NODEFILE hostfile

mpirun -np 4 -machinefile hostfile a.out

MPI Standards in HPC

References:

[1] MPI Standard: http://www.mcs.anl.gov/research/projects/mpi/