123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102 |
- Bootstrap: docker
- From: nvidia/cuda:11.4.2-cudnn8-devel-ubuntu18.04
- Stage: spython-base
- %post
- export SINGULARITY_BINDPATH=$SINGULARITY_BINDPATH,$(echo /usr/bin/ | sed -e 's/ /,/g')
- MLNX_ARCH=ubuntu18.04-x86_64
- MLNX_VERSION=5.2-1.0.4.0
- # Python 3.7 is supported by Ubuntu Bionic out of the box
- python=3.7
- PYTHON_VERSION=${python}
- # Set default shell to /bin/bash
- #SHELL ["/bin/bash", "-cu"]
- TZ="Europe/London"
- RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone
- apt-get update && DEBIAN_FRONTEND=noninteractive apt-get install -y --allow-downgrades --allow-change-held-packages --no-install-recommends \
- build-essential \
- cmake \
- g++-7 \
- git \
- curl \
- vim \
- wget \
- ca-certificates \
- python${PYTHON_VERSION} \
- python${PYTHON_VERSION}-dev \
- python${PYTHON_VERSION}-distutils \
- libpython-stdlib \
- python \
- udev \
- automake \
- gfortran \
- autotools-dev \
- chrpath \
- pkg-config \
- libnl-3-dev \
- tcl \
- pciutils \
- tk \
- libnl-route-3-dev \
- libltdl-dev \
- bison \
- autoconf \
- flex \
- graphviz \
- libssl1.0.0 \
- kmod \
- debhelper \
- libgfortran4 \
- ethtool \
- swig \
- lsof \
- libnl-route-3-200 \
- m4 \
- libnl-3-200 \
- dpatch \
- libnuma-dev \
- iputils-ping \
- iproute2 \
- apt-utils
- ln -sf /usr/bin/python${PYTHON_VERSION} /usr/bin/python
- curl -O https://bootstrap.pypa.io/get-pip.py && \
- python get-pip.py && \
- rm get-pip.py
- wget http://www.mellanox.com/downloads/ofed/MLNX_OFED-${MLNX_VERSION}/MLNX_OFED_LINUX-${MLNX_VERSION}-${MLNX_ARCH}.tgz && \
- tar -xzvf MLNX_OFED_LINUX-${MLNX_VERSION}-${MLNX_ARCH}.tgz --no-same-owner && \
- cd MLNX_OFED_LINUX-${MLNX_VERSION}-${MLNX_ARCH} && \
- ./mlnxofedinstall --user-space-only --without-fw-update --skip-repo --force && \
- cd .. && \
- rm -rf MLNX_OFED-LINUX-${MLNX_VERSION}-${MLNX_ARCH} && \
- rm -rf *.tgz
- # Install Open MPI version 4.1
- wget https://www.open-mpi.org/software/ompi/v4.1/downloads/openmpi-4.1.0.tar.gz && \
- tar zxf openmpi-4.1.0.tar.gz && \
- cd openmpi-4.1.0 && \
- ./configure --enable-mpirun-prefix-by-default \
- --enable-shared \
- --without-verbs && \
- make -j $(nproc) all && \
- make install && \
- ldconfig && \
- rm -rf /tmp/openmpi
- cd /
- pip --no-cache-dir --disable-pip-version-check install mpi4py
- LD_LIBRARY_PATH=/usr/local/lib/:/usr/local/lib/openmpi:$LD_LIBRARY_PATH
- %environment
- %runscript
|