diff --git a/README.md b/README.md index 2a05045d63b7b1aab12be097c6e2c9a24471512f..d9d6c38f9d63943b16574cd41831c3276d3cbcb8 100644 --- a/README.md +++ b/README.md @@ -60,7 +60,7 @@ University of California, San Diego ## Version -1.9.5 +1.9.6 ## Last Updated diff --git a/definition-files/ubuntu/Singularity.ubuntu-18.04-cuda-11.2 b/definition-files/ubuntu/Singularity.ubuntu-18.04-cuda-11.2 index 521d581ed57adcfb6713e37f57e7feedf438219b..be54c8bd56cf9e53193ce7c0cbbd7255e137a564 100644 --- a/definition-files/ubuntu/Singularity.ubuntu-18.04-cuda-11.2 +++ b/definition-files/ubuntu/Singularity.ubuntu-18.04-cuda-11.2 @@ -10,30 +10,55 @@ From: ghcr.io/mkandes/naked-singularity:ubuntu-18.04 AUTHOR_NAME Marty Kandes AUTHOR_EMAIL mkandes@sdsc.edu - LAST_UPDATED 20210831 + LAST_UPDATED 20211002 %setup %environment # Set NVIDIA driver and CUDA versions - export CUDA_DRIVER_VERSION='460' + export CUDA_DRIVER_MAJOR='460' + export CUDA_DRIVER_MINOR='32' + export CUDA_DRIVER_REVISION='03' + export CUDA_DRIVER_VERSION="${CUDA_DRIVER_MAJOR}.${CUDA_DRIVER_MINOR}.${CUDA_DRIVER_REVISION}" + export CUDA_MAJOR='11' - export CUDA_MINOR='2' - export CUDA_VERSION="${CUDA_MAJOR}.${CUDA_MINOR}" + export CUDA_MINOR='2' + export CUDA_REVISION='2' + export CUDA_VERSION="${CUDA_MAJOR}.${CUDA_MINOR}.${CUDA_REVISION}" + export CUDNN_MAJOR='8' export CUDNN_MINOR='1' export CUDNN_REVISION='1.33' export CUDNN_VERSION="${CUDNN_MAJOR}.${CUDNN_MINOR}.${CUDNN_REVISION}" + export NCCL_MAJOR='2' export NCCL_MINOR='8' export NCCL_REVISION='4' export NCCL_VERSION="${NCCL_MAJOR}.${NCCL_MINOR}.${NCCL_REVISION}" + export TENSORRT_MAJOR='8' + export TENSORRT_MINOR='0' + export TENSORRT_REVISION='3' + export TENSORRT_VERSION="${TENSORRT_MAJOR}.${TENSORRT_MINOR}.${TENSORRT_REVISION}" + # Set paths to CUDA binaries and libraries - export CUDA_HOME="/usr/local/cuda-${CUDA_VERSION}" + export CUDA_HOME="/usr/local/cuda-${CUDA_MAJOR}.${CUDA_MINOR}" + + export CUDNN_INCLUDE='/usr/include' + export CUDNN_LIB='/usr/lib/x86_64-linux-gnu' + + export NCCL_INCLUDE='/usr/include' + export NCCL_LIB='/usr/lib/x86_64-linux-gnu' + + export TENSORRT_INCLUDE='/usr/include' + export TENSORRT_LIB='/usr/lib/x86_64-linux-gnu' + export PATH="${CUDA_HOME}/bin${PATH:+:${PATH}}" export LD_LIBRARY_PATH="${CUDA_HOME}/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}" + export LD_LIBRARY_PATH="${CUDNN_LIB}:${LD_LIBRARY_PATH}" + export LD_LIBRARY_PATH="${NCCL_LIB}:${LD_LIBRARY_PATH}" + export LD_LIBRARY_PATH="${TENSORRT_LIB}:${LD_LIBRARY_PATH}" %post -c /bin/bash @@ -60,19 +85,31 @@ From: ghcr.io/mkandes/naked-singularity:ubuntu-18.04 export CUDA_GPG_PUBKEY='7fa2af80.pub' # Set NVIDIA driver and CUDA versions - export CUDA_DRIVER_VERSION='460' + export CUDA_DRIVER_MAJOR='460' + export CUDA_DRIVER_MINOR='32' + export CUDA_DRIVER_REVISION='03' + export CUDA_DRIVER_VERSION="${CUDA_DRIVER_MAJOR}.${CUDA_DRIVER_MINOR}.${CUDA_DRIVER_REVISION}" + export CUDA_MAJOR='11' export CUDA_MINOR='2' - export CUDA_VERSION="${CUDA_MAJOR}.${CUDA_MINOR}" + export CUDA_REVISION='2' + export CUDA_VERSION="${CUDA_MAJOR}.${CUDA_MINOR}.${CUDA_REVISION}" + export CUDNN_MAJOR='8' export CUDNN_MINOR='1' export CUDNN_REVISION='1.33' export CUDNN_VERSION="${CUDNN_MAJOR}.${CUDNN_MINOR}.${CUDNN_REVISION}" + export NCCL_MAJOR='2' export NCCL_MINOR='8' export NCCL_REVISION='4' export NCCL_VERSION="${NCCL_MAJOR}.${NCCL_MINOR}.${NCCL_REVISION}" + export TENSORRT_MAJOR='8' + export TENSORRT_MINOR='0' + export TENSORRT_REVISION='3' + export TENSORRT_VERSION="${TENSORRT_MAJOR}.${TENSORRT_MINOR}.${TENSORRT_REVISION}" + cd /tmp # Install kernel headers and development packages @@ -95,29 +132,41 @@ From: ghcr.io/mkandes/naked-singularity:ubuntu-18.04 # Install NVIDIA driver meta-package # https://docs.nvidia.com/cuda/cuda-installation-guide-linux/index.html#package-manager-metas - apt-get -y install "cuda-drivers-${CUDA_DRIVER_VERSION}" + apt-get -y install "cuda-drivers-${CUDA_DRIVER_MAJOR}=${CUDA_DRIVER_VERSION}-1" # Install CUDA toolkit meta-package - apt-get -y install "cuda-toolkit-$(echo ${CUDA_VERSION} | sed 's/\./-/g')" + apt-get -y install "cuda-toolkit-${CUDA_MAJOR}-${CUDA_MINOR}=${CUDA_VERSION}-1" # Install the cuDNN library - apt-get -y install "libcudnn${CUDNN_MAJOR}=${CUDNN_VERSION}-1+cuda${CUDA_VERSION}" - apt-get -y install "libcudnn${CUDNN_MAJOR}-dev=${CUDNN_VERSION}-1+cuda${CUDA_VERSION}" + apt-get -y install "libcudnn${CUDNN_MAJOR}=${CUDNN_VERSION}-1+cuda${CUDA_MAJOR}.${CUDA_MINOR}" + apt-get -y install "libcudnn${CUDNN_MAJOR}-dev=${CUDNN_VERSION}-1+cuda${CUDA_MAJOR}.${CUDA_MINOR}" # Install NCCL - apt-get -y install "libnccl${NCCL_MAJOR}=${NCCL_VERSION}-1+cuda${CUDA_VERSION}" - apt-get -y install "libnccl-dev=${NCCL_VERSION}-1+cuda${CUDA_VERSION}" + apt-get -y install "libnccl${NCCL_MAJOR}=${NCCL_VERSION}-1+cuda${CUDA_MAJOR}.${CUDA_MINOR}" + apt-get -y install "libnccl-dev=${NCCL_VERSION}-1+cuda${CUDA_MAJOR}.${CUDA_MINOR}" + + # Install TensorRT + apt-get -y install "libnvinfer${TENSORRT_MAJOR}=${TENSORRT_VERSION}-1+cuda${CUDA_MAJOR}.${CUDA_MINOR}" + apt-get -y install "libnvinfer-dev=${TENSORRT_VERSION}-1+cuda${CUDA_MAJOR}.${CUDA_MINOR}" + apt-get -y install "libnvinfer-plugin${TENSORRT_MAJOR}=${TENSORRT_VERSION}-1+cuda${CUDA_MAJOR}.${CUDA_MINOR}" + apt-get -y install "libnvinfer-plugin-dev=${TENSORRT_VERSION}-1+cuda${CUDA_MAJOR}.${CUDA_MINOR}" + apt-get -y install "libnvonnxparsers${TENSORRT_MAJOR}=${TENSORRT_VERSION}-1+cuda${CUDA_MAJOR}.${CUDA_MINOR}" + apt-get -y install "libnvonnxparsers-dev=${TENSORRT_VERSION}-1+cuda${CUDA_MAJOR}.${CUDA_MINOR}" + apt-get -y install "libnvparsers${TENSORRT_MAJOR}=${TENSORRT_VERSION}-1+cuda${CUDA_MAJOR}.${CUDA_MINOR}" + apt-get -y install "libnvparsers-dev=${TENSORRT_VERSION}-1+cuda${CUDA_MAJOR}.${CUDA_MINOR}" + apt-get -y install "python3-libnvinfer=${TENSORRT_VERSION}-1+cuda${CUDA_MAJOR}.${CUDA_MINOR}" + apt-get -y install "python3-libnvinfer-dev=${TENSORRT_VERSION}-1+cuda${CUDA_MAJOR}.${CUDA_MINOR}" # Install third-party libraries required for CUDA samples # https://docs.nvidia.com/cuda/cuda-installation-guide-linux/index.html#install-libraries apt-get -y install g++ apt-get -y install freeglut3-dev - apt-get -y build-essential - apt-get -y libx11-dev - apt-get -y libxmu-dev - apt-get -y libxi-dev - apt-get -y libglu1-mesa - apt-get -y libglu1-mesa-dev + apt-get -y install build-essential + apt-get -y install libx11-dev + apt-get -y install libxmu-dev + apt-get -y install libxi-dev + apt-get -y install libglu1-mesa + apt-get -y install libglu1-mesa-dev # Cleanup apt-get -y autoremove --purge diff --git a/definition-files/ubuntu/Singularity.ubuntu-18.04-cuda-11.2-mlnx-ofed-4.7-3.2.9.0 b/definition-files/ubuntu/Singularity.ubuntu-18.04-cuda-11.2-mlnx-ofed-4.7-3.2.9.0 index 07adb50a43ddc5d74b91c8b893f4adc57b6fe168..610ab427016ccdbcc2374e0296dccc6234ff3e19 100644 --- a/definition-files/ubuntu/Singularity.ubuntu-18.04-cuda-11.2-mlnx-ofed-4.7-3.2.9.0 +++ b/definition-files/ubuntu/Singularity.ubuntu-18.04-cuda-11.2-mlnx-ofed-4.7-3.2.9.0 @@ -10,7 +10,7 @@ From: ghcr.io/mkandes/naked-singularity:ubuntu-18.04-cuda-11.2 AUTHOR_NAME Marty Kandes AUTHOR_EMAIL mkandes@sdsc.edu - LAST_UPDATED 20210903 + LAST_UPDATED 20211002 %setup @@ -35,8 +35,8 @@ From: ghcr.io/mkandes/naked-singularity:ubuntu-18.04-cuda-11.2 # Set debian frontend interface export DEBIAN_FRONTEND='noninteractive' - # Upgrade all software packages to their latest versions - apt-get -y update && apt-get -y upgrade + # DO NOT 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 diff --git a/definition-files/ubuntu/Singularity.ubuntu-18.04-cuda-11.2-mlnx-ofed-4.7-3.2.9.0-openmpi-4.0.5 b/definition-files/ubuntu/Singularity.ubuntu-18.04-cuda-11.2-mlnx-ofed-4.7-3.2.9.0-openmpi-4.0.5 index 62163a226b70b283662aae29c08e663cc2171b85..703631d7fa014ac8a351f8018ae482ebeb3da5db 100644 --- a/definition-files/ubuntu/Singularity.ubuntu-18.04-cuda-11.2-mlnx-ofed-4.7-3.2.9.0-openmpi-4.0.5 +++ b/definition-files/ubuntu/Singularity.ubuntu-18.04-cuda-11.2-mlnx-ofed-4.7-3.2.9.0-openmpi-4.0.5 @@ -10,7 +10,7 @@ From: ghcr.io/mkandes/naked-singularity:ubuntu-18.04-cuda-11.2-mlnx-ofed-4.7-3.2 AUTHOR_NAME Marty Kandes AUTHOR_EMAIL mkandes@sdsc.edu - LAST_UPDATED 20210924 + LAST_UPDATED 20211003 %setup @@ -43,18 +43,52 @@ From: ghcr.io/mkandes/naked-singularity:ubuntu-18.04-cuda-11.2-mlnx-ofed-4.7-3.2 # Set debian frontend interface export DEBIAN_FRONTEND='noninteractive' - # Set NVIDIA CUDA version + # Set NVIDIA driver and CUDA versions + export CUDA_DRIVER_MAJOR='460' + export CUDA_DRIVER_MINOR='32' + export CUDA_DRIVER_REVISION='03' + export CUDA_DRIVER_VERSION="${CUDA_DRIVER_MAJOR}.${CUDA_DRIVER_MINOR}.${CUDA_DRIVER_REVISION}" + export CUDA_MAJOR='11' export CUDA_MINOR='2' - export CUDA_VERSION="${CUDA_MAJOR}.${CUDA_MINOR}" + export CUDA_REVISION='2' + export CUDA_VERSION="${CUDA_MAJOR}.${CUDA_MINOR}.${CUDA_REVISION}" + + export CUDNN_MAJOR='8' + export CUDNN_MINOR='1' + export CUDNN_REVISION='1.33' + export CUDNN_VERSION="${CUDNN_MAJOR}.${CUDNN_MINOR}.${CUDNN_REVISION}" + + export NCCL_MAJOR='2' + export NCCL_MINOR='8' + export NCCL_REVISION='4' + export NCCL_VERSION="${NCCL_MAJOR}.${NCCL_MINOR}.${NCCL_REVISION}" + + export TENSORRT_MAJOR='8' + export TENSORRT_MINOR='0' + export TENSORRT_REVISION='3' + export TENSORRT_VERSION="${TENSORRT_MAJOR}.${TENSORRT_MINOR}.${TENSORRT_REVISION}" # Set paths to CUDA binaries and libraries - export CUDA_HOME="/usr/local/cuda-${CUDA_VERSION}" + export CUDA_HOME="/usr/local/cuda-${CUDA_MAJOR}.${CUDA_MINOR}" + + export CUDNN_INCLUDE='/usr/include' + export CUDNN_LIB='/usr/lib/x86_64-linux-gnu' + + export NCCL_INCLUDE='/usr/include' + export NCCL_LIB='/usr/lib/x86_64-linux-gnu' + + export TENSORRT_INCLUDE='/usr/include' + export TENSORRT_LIB='/usr/lib/x86_64-linux-gnu' + export PATH="${CUDA_HOME}/bin${PATH:+:${PATH}}" export LD_LIBRARY_PATH="${CUDA_HOME}/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}" + export LD_LIBRARY_PATH="${CUDNN_LIB}:${LD_LIBRARY_PATH}" + export LD_LIBRARY_PATH="${NCCL_LIB}:${LD_LIBRARY_PATH}" + export LD_LIBRARY_PATH="${TENSORRT_LIB}:${LD_LIBRARY_PATH}" - # Upgrade all software packages to their latest versions - apt-get -y update && apt-get -y upgrade + # DO NOT Upgrade all software packages to their latest versions + # apt-get -y update && apt-get -y upgrade # Install OpenMPI dependencies apt-get -y install zlib1g-dev @@ -82,8 +116,8 @@ From: ghcr.io/mkandes/naked-singularity:ubuntu-18.04-cuda-11.2-mlnx-ofed-4.7-3.2 --without-xpmem --without-ucx --without-cma --without-slurm \ --without-tm --without-loadleveler --without-alps --without-lsf \ --without-sge --disable-memchecker --disable-java \ - --disable-mpi-java --with-cuda --enable-mpi-cxx \ - --enable-cxx-exceptions + --disable-mpi-java --with-cuda --disable-mpi-cxx \ + --disable-cxx-exceptions make all install cd /tmp