Building an MPI library
De LMDZPedia
Révision de 5 janvier 2023 à 16:23 par Emillour (discussion | contributions)
There are a few freely available MPI libraries around; among the most widely spread are the OpenMPI and MPICH libraries
Sommaire
Checking if you have an Fortran enabled MPI library already installed and at hand
This can easily be done by checking if the MPI wrapper mpif90 is available, i.e. that
which mpif90
returns something meaningful
using a package manager
If you have sudo privileges and are on an Ubuntu or Linux Mint machine you should be able to install the OpenMPI library with
sudo apt install libopenmpi-dev openmpi-bin
Example of personal installation of the the OpenMPI library
To adapt to fit your onw needs and system specificities, obviously. In the example below the installation is done in the $HOME/LMDZ directory (for convenience this path is stored in the PATH_OPENMPI variable.
PATH_OPENMPI=$HOME/LMDZ/
mkdir -p $PATH_OPENMPI
cd $PATH_OPENMPI
wget https://www.open-mpi.org/software/ompi/v1.10/downloads/openmpi-1.10.3.tar.gz
gunzip openmpi-1.10.3.tar.gz
tar xvf openmpi-1.10.3.tar
cd openmpi-1.10.3
./configure --prefix $PATH_OPENMPI/openmpi-1.10.3
make all install
To check that the install went well check that
$PATH_OPENMPI/openmpi-1.10.3/bin/mpif90 -V
returns something meaningful
Worth knowing about
- mpif90 is just a wrapper around a given compiler which could be gfortran, ifort, pgfortran, etc. to know more about that run
mpif90 --version
- in some cases (e.g. with ifort) the Fortran wrapper is called mpiifort , not mpif90
- It is vital to use the mpirun command from the same package than the mpif90 compilation wrapper use to compile. Otherwise one can get some really weird results...
03/01/2022