HPC/UCPH
   
 

MPI

MPI on multiple nodes

You need to allow passwordless ssh between nodes, for MPI to run on multiple nodes:

% ssh-keygen
#don't enter a password, just return,return,return
% cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys

You can test it by ssh'ing from one frontend to another.

Please, read about "ssh keys" for more information.

mpi-selector

mpi-selector is a tool to control which MPI implementation and compiler to use for your MPI programs. After selection you must use mpicc to compile and mpirun to run your program.

Usage: call mpi-selector-menu and select one of the listed MPI implementations. Note, you can only change the per-user MPI implementation. When done with the selection, the changes will not be visible until you start a new shell (re-login).

Alternatively, you can also use the non-interactive tool mpi-selector. See 'man mpi-selector' for more information.

NOTE: mpi-selector will change the MPI implementation on a cluster-wide basis. This means, you cannot have multiple jobs using different MPI implementations. To do this, you need to setup the required environment variables in your job describtions.

Known catches

The /dev/hfi1_0 device failed to appear after 15.0 seconds: Connection timed out

Try adding:

export I_MPI_FABRICS=shm:ofa
You can read about different setting for "I_MPI_FABRICS" here