MPI (Message Passing Interface)
What is MPI?
MPI also known as message passing interface is a set of standards that define a way to exchange data between processes. Most CPU parallel programming languages use MPI for communication.
What MPI implementations are available on Sharanga?
Currently, we support the following MPI implementations:
Type the following command in the terminal to view the list of available MPI modules:
$ spack find mpi
We request the users to use these modules as they are optimised to run on Sharanga. To compile a MPI based CPU parallel job on Sharanga, use any of the following MPI commands. We have also provided an equivalent GNU Compiler command for the same.
MPI Compiler Collection | GNU Compiler Collection |
---|---|
mpicc | gcc |
mpic++, mpicxx | g++ |
mpifort | gfortran |
For example to compile a C++ MPI application sample.cxx
using MPI C++ compiler mpic++
:
$ mpic++ sample.cxx