Open MPI 3.1.6 (GCC)

Webpage

https://www.open-mpi.org/

Version

  • 3.1.6

Build Environment

  • gcc 8.5.0, 9.2.1, 10.3.1, 11.2.1
  • OpenPBS 22.05.11

Files Required

  • openmpi-3.1.6.tar.bz2

Build Procedure

#!/bin/sh

VERSION=3.1.6
WORKDIR=/gwork/users/${USER}
TARBALL=/home/users/${USER}/Software/OpenMPI/3.1.6/openmpi-${VERSION}.tar.bz2
PBSROOT=/apl/pbs/22.05.11

PARALLEL=12

#-----------------------------------------------------------------------
umask 0022

cd ${WORKDIR}
if [ -d openmpi-${VERSION} ]; then
  mv openmpi-${VERSION} openmpi-erase
  rm -rf openmpi-erase &
fi

tar jxf ${TARBALL}
cd openmpi-${VERSION}

# GCC 8
module purge
INSTALLDIR=/apl/openmpi/${VERSION}/gcc8
mkdir rccs-gcc8 && cd rccs-gcc8
../configure --prefix=${INSTALLDIR} \
             --with-tm=${PBSROOT} \
             --enable-mpi-cxx \
             --with-ucx
make -j ${PARALLEL} && make install && make check
cd ../

# GCC 9
module purge
module load gcc-toolset/9
INSTALLDIR=/apl/openmpi/${VERSION}/gcc9
mkdir rccs-gcc9 && cd rccs-gcc9
../configure --prefix=${INSTALLDIR} \
             --with-tm=${PBSROOT} \
             --enable-mpi-cxx \
             --with-ucx
make -j ${PARALLEL} && make install && make check
cd ../

# GCC 10
module purge
module load gcc-toolset/10
INSTALLDIR=/apl/openmpi/${VERSION}/gcc10
mkdir rccs-gcc10 && cd rccs-gcc10
../configure --prefix=${INSTALLDIR} \
             --with-tm=${PBSROOT} \
             --enable-mpi-cxx \
             --with-ucx
make -j ${PARALLEL} && make install && make check
cd ../

# GCC 11
module purge
module load gcc-toolset/11
INSTALLDIR=/apl/openmpi/${VERSION}/gcc11
mkdir rccs-gcc11 && cd rccs-gcc11
../configure --prefix=${INSTALLDIR} \
             --with-tm=${PBSROOT} \
             --enable-mpi-cxx \
             --with-ucx
make -j ${PARALLEL} && make install && make check
cd ../