Skip to content
Snippets Groups Projects
Commit 227f989b authored by Marty Kandes's avatar Marty Kandes
Browse files

Add Singularity.omb-5.7-centos-7.7.1908-openmpi-3.1.6

Used to test Infiniband support provided by new CentOS 7.7 + OpenMPI
3.1.6 container. Both osu_bw and osu_latency performance achieved
expected results on Expanse.
parent 5026ee42
No related branches found
No related tags found
No related merge requests found
Bootstrap: localimage
From: ../centos/centos-7.7.1908-openmpi-3.1.6.sif
%labels
APPLICATION_NAME OSU Microbenchmarks
APPLICATION_VERSION 5.6.3
APPLICATION_URL http://mvapich.cse.ohio-state.edu/benchmarks
AUTHOR_NAME Marty Kandes
AUTHOR_EMAIL mkandes@sdsc.edu
LAST_UPDATED 20210726
%setup
%environment
# Set OMB major and minor version numbers, root and
# installation directories
export OMB_ROOT_URL='http://mvapich.cse.ohio-state.edu/download/mvapich'
export OMB_MAJOR='5'
export OMB_MINOR='7'
export OMB_VERSION="${OMB_MAJOR}.${OMB_MINOR}"
export OMB_ROOT_DIR='/opt/omb'
export OMB_INSTALL_DIR="${OMB_ROOT_DIR}/${OMB_VERSION}"
# Set paths to OSU Microbenchmarks binaries
export PATH="${OMB_INSTALL_DIR}/collective:${PATH}"
export PATH="${OMB_INSTALL_DIR}/one-sided:${PATH}"
export PATH="${OMB_INSTALL_DIR}/pt2pt:${PATH}"
export PATH="${OMB_INSTALL_DIR}/startup:${PATH}"
%post -c /bin/bash
# Set operating system mirror URL
export MIRRORURL='https://vault.centos.org/7.7.1908/os/x86_64'
# Set operating system version
export OSVERSION='7'
# Set system locale
export LC_ALL=C
# Set Mellanox OFED version, operating system, and hardware platform
export MLNX_ROOT_URL='http://www.mellanox.com/downloads/ofed'
export MLNX_OFED_VERSION='4.7-3.2.9.0'
export MLNX_OS_VERSION='rhel7.7'
export MLNX_PLATFORM='x86_64'
# Set OpenMPI major, minor, and revision numbers, root and
# installation directories
export OMPI_ROOT_URL='https://download.open-mpi.org/release/open-mpi'
export OMPI_MAJOR='3'
export OMPI_MINOR='1'
export OMPI_REVISION='6'
export OMPI_VERSION="${OMPI_MAJOR}.${OMPI_MINOR}.${OMPI_REVISION}"
export OMPI_ROOT_DIR='/opt/openmpi'
export OMPI_INSTALL_DIR="${OMPI_ROOT_DIR}/${OMPI_VERSION}"
# Set paths to OpenMPI binaries and libraries
export PATH="${OMPI_INSTALL_DIR}/bin:${PATH}"
export LD_LIBRARY_PATH="${OMPI_INSTALL_DIR}/lib:${LD_LIBRARY_PATH}"
# Update all software packages to their latest versions
yum -y check-update && yum -y update
cd /tmp
# Set OMB major and minor version numbers, root and
# installation directories
export OMB_ROOT_URL='http://mvapich.cse.ohio-state.edu/download/mvapich'
export OMB_MAJOR='5'
export OMB_MINOR='7'
export OMB_VERSION="${OMB_MAJOR}.${OMB_MINOR}"
export OMB_ROOT_DIR='/opt/omb'
export OMB_INSTALL_DIR="${OMB_ROOT_DIR}/${OMB_VERSION}"
# Download, build, and install OSU Microbenchmarks
wget "${OMB_ROOT_URL}/osu-micro-benchmarks-${OMB_VERSION}.tar.gz"
tar -xf "osu-micro-benchmarks-${OMB_VERSION}.tar.gz"
cd "osu-micro-benchmarks-${OMB_VERSION}"
./configure --prefix="${OMB_INSTALL_DIR}" CC='mpicc' CXX='mpicxx'
make
make install
# Reorganize OSU Microbenchmarks directory structure
cd "${OMB_INSTALL_DIR}"
mv libexec/osu-micro-benchmarks/mpi/collective ./
mv libexec/osu-micro-benchmarks/mpi/one-sided ./
mv libexec/osu-micro-benchmarks/mpi/pt2pt ./
mv libexec/osu-micro-benchmarks/mpi/startup ./
rm -rf libexec
cd /tmp
# Remove OMB build directory and source tarball
rm -rf "osu-micro-benchmarks-${OMB_VERSION}"
rm "osu-micro-benchmarks-${OMB_VERSION}.tar.gz"
# Cleanup
package-cleanup -q --leaves | xargs -l1 yum -y remove
yum -y clean all
# Update database for mlocate
updatedb
%files
%runscript
%test
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment