From 98ddcb526a339e855f709ade98d3de67f8085e14 Mon Sep 17 00:00:00 2001 From: Marty Kandes <mkandes@sdsc.edu> Date: Sun, 21 Mar 2021 22:31:50 +0000 Subject: [PATCH] Update OMB 5.7 def file to use OpenMPI 4.0.5 Also removed Singularity.ubuntu-18.04-openmpi-4.1.0 as it is not needed at this time. --- ...ularity.omb-5.7-ubuntu-18.04-openmpi-4.0.5 | 115 +++++++++++++++ .../Singularity.ubuntu-18.04-openmpi-4.1.0 | 134 ------------------ 2 files changed, 115 insertions(+), 134 deletions(-) create mode 100644 definition-files/omb/Singularity.omb-5.7-ubuntu-18.04-openmpi-4.0.5 delete mode 100644 definition-files/ubuntu/Singularity.ubuntu-18.04-openmpi-4.1.0 diff --git a/definition-files/omb/Singularity.omb-5.7-ubuntu-18.04-openmpi-4.0.5 b/definition-files/omb/Singularity.omb-5.7-ubuntu-18.04-openmpi-4.0.5 new file mode 100644 index 0000000..c4511bb --- /dev/null +++ b/definition-files/omb/Singularity.omb-5.7-ubuntu-18.04-openmpi-4.0.5 @@ -0,0 +1,115 @@ +Bootstrap: shub +From: mkandes/naked-singularity:ubuntu-18.04-openmpi-4.0.5 + +%labels + + APPLICATION_NAME OSU Micro-Benchmarks + APPLICATION_VERSION 5.7 + APPLICATION_URL http://mvapich.cse.ohio-state.edu/benchmarks + + AUTHOR_NAME Marty Kandes + AUTHOR_EMAIL mkandes@sdsc.edu + + LAST_UPDATED 20210321 + +%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='http://us.archive.ubuntu.com/ubuntu' + + # Set operating system version + export OSVERSION='bionic' + + # Set system locale + export LC_ALL='C' + + # Set debian frontend interface + export DEBIAN_FRONTEND='noninteractive' + + # 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='ubuntu18.04' + 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='4' + export OMPI_MINOR='0' + export OMPI_REVISION='5' + 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}" + + # Upgrade all software packages to their latest versions + apt-get -y update && apt-get -y upgrade + + 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 + apt-get -y autoremove --purge + apt-get -y clean + + # Update database for mlocate + updatedb + +%files + +%runscript + +%test diff --git a/definition-files/ubuntu/Singularity.ubuntu-18.04-openmpi-4.1.0 b/definition-files/ubuntu/Singularity.ubuntu-18.04-openmpi-4.1.0 deleted file mode 100644 index cb0c679..0000000 --- a/definition-files/ubuntu/Singularity.ubuntu-18.04-openmpi-4.1.0 +++ /dev/null @@ -1,134 +0,0 @@ -Bootstrap: shub -From: mkandes/naked-singularity:ubuntu-18.04 - -%labels - - APPLICATION_NAME ubuntu + openmpi - APPLICATION_VERSION 18.04 + 4.1.0 - APPLICATION_URL https://www.open-mpi.org - - AUTHOR_NAME Marty Kandes - AUTHOR_EMAIL mkandes@sdsc.edu - - LAST_UPDATED 20210319 - -%setup - -%environment - - # 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='ubuntu18.04' - 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='4' - export OMPI_MINOR='1' - export OMPI_REVISION='0' - 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}" - -%post -c /bin/bash - - # Set operating system mirror URL - export MIRRORURL='http://us.archive.ubuntu.com/ubuntu' - - # Set operating system version - export OSVERSION='bionic' - - # Set system locale - export LC_ALL='C' - - # Set debian frontend interface - export DEBIAN_FRONTEND='noninteractive' - - # Upgrade all software packages to their latest versions - apt-get -y update && apt-get -y upgrade - - # Install all dependencies and/or prerequisites for Mellanox OFED - apt-get -y install bison - apt-get -y install chrpath - apt-get -y install debhelper - apt-get -y install dpatch - apt-get -y install flex - apt-get -y install graphviz - apt-get -y install libnl-3-dev - apt-get -y install libnl-route-3-200 - apt-get -y install tcl-dev - apt-get -y install tk-dev - apt-get -y install swig - - cd /tmp - - # 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='ubuntu18.04' - export MLNX_PLATFORM='x86_64' - - # Download and install Mellanox OFED drivers and supporting - # libraries for userspace access to Ethernet, RDMA, and Infiniband. - # https://docs.mellanox.com/pages/releaseview.action?pageId=15049785 - wget "${MLNX_ROOT_URL}/MLNX_OFED-${MLNX_OFED_VERSION}/MLNX_OFED_LINUX-${MLNX_OFED_VERSION}-${MLNX_OS_VERSION}-${MLNX_PLATFORM}.tgz" - tar -xf "MLNX_OFED_LINUX-${MLNX_OFED_VERSION}-${MLNX_OS_VERSION}-${MLNX_PLATFORM}.tgz" - cd "MLNX_OFED_LINUX-${MLNX_OFED_VERSION}-${MLNX_OS_VERSION}-${MLNX_PLATFORM}" - ./mlnxofedinstall --user-space-only --without-fw-update --force - - cd /tmp - - # Remove Mellanox OFED archive directory and tarball - rm -rf "MLNX_OFED_LINUX-${MLNX_OFED_VERSION}-${MLNX_OS_VERSION}-${MLNX_PLATFORM}" - rm "MLNX_OFED_LINUX-${MLNX_OFED_VERSION}-${MLNX_OS_VERSION}-${MLNX_PLATFORM}.tgz" - - # Install additional tools - apt-get -y install numactl - apt-get -y install libnuma-dev - - # Install OpenMPI dependencies - apt-get -y install zlib1g-dev - - cd /tmp - - # 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='4' - export OMPI_MINOR='1' - export OMPI_REVISION='0' - export OMPI_VERSION="${OMPI_MAJOR}.${OMPI_MINOR}.${OMPI_REVISION}" - export OMPI_ROOT_DIR='/opt/openmpi' - export OMPI_INSTALL_DIR="${OMPI_ROOT_DIR}/${OMPI_VERSION}" - - # Download, build, and install OpenMPI - wget "${OMPI_ROOT_URL}/v${OMPI_MAJOR}.${OMPI_MINOR}/openmpi-${OMPI_VERSION}.tar.gz" - tar -xf "openmpi-${OMPI_VERSION}.tar.gz" - cd "openmpi-${OMPI_VERSION}" - ./configure --prefix="${OMPI_INSTALL_DIR}" --without-verbs - make all install - - cd /tmp - - # Remove OpenMPI build directory and source tarball - rm -rf "openmpi-${OMPI_VERSION}" - rm "openmpi-${OMPI_VERSION}.tar.gz" - - # Cleanup - apt-get -y autoremove --purge - apt-get -y clean - - # Update database for mlocate - updatedb - -%files - -%runscript - -%test -- GitLab