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

naked-singularity-v0.9.3 :: updated pytorch-cpu.def and pytorch-gpu.def

to PyTorch v1.4.0; both builds utilize OpenMPI v3.1.4; CUDA 10 is used
in pytorch-gpu.def; also made some minor updates to Ubuntu definition
files
parent 3c85cc34
No related branches found
No related tags found
No related merge requests found
Bootstrap: debootstrap Bootstrap: debootstrap
MirrorURL: http://us.archive.ubuntu.com/ubuntu MirrorURL: http://us.archive.ubuntu.com/ubuntu
OSVersion: xenial OSVersion: bionic
%labels %labels
APPLICATION_NAME pytorch APPLICATION_NAME pytorch
APPLICATION_VERSION 1.2.0 APPLICATION_VERSION 1.4.0
APPLICATION_URL http://pytorch.org/ APPLICATION_URL http://pytorch.org
SYSTEM_NAME comet
SYSTEM_SINGULARITY_VERSION 2.6.1
SYSTEM_URL http://www.sdsc.edu/support/user_guides/comet.html
SINGULARITY_VERSION 2.6.1
SINGULARITY_IMAGE_SIZE 16384 SINGULARITY_IMAGE_SIZE 16384
AUTHOR_NAME Marty Kandes AUTHOR_NAME Marty Kandes
AUTHOR_EMAIL mkandes@sdsc.edu AUTHOR_EMAIL mkandes@sdsc.edu
LAST_UPDATED 20191015 LAST_UPDATED 20200225
%setup %setup
...@@ -27,8 +24,8 @@ OSVersion: xenial ...@@ -27,8 +24,8 @@ OSVersion: xenial
export LC_ALL=C export LC_ALL=C
# Set paths to OpenMPI binaries and libraries # Set paths to OpenMPI binaries and libraries
export PATH="/opt/openmpi-1.8.4/bin:${PATH}" export PATH="/opt/openmpi-3.1.4/bin:${PATH}"
export LD_LIBRARY_PATH="/opt/openmpi-1.8.4/lib:${LD_LIBRARY_PATH}" export LD_LIBRARY_PATH="/opt/openmpi-3.1.4/lib:${LD_LIBRARY_PATH}"
# Set default miniconda environment # Set default miniconda environment
export PATH="/opt/miniconda3/bin:${PATH}" export PATH="/opt/miniconda3/bin:${PATH}"
...@@ -72,26 +69,18 @@ OSVersion: xenial ...@@ -72,26 +69,18 @@ OSVersion: xenial
apt-get -y install build-essential apt-get -y install build-essential
apt-get -y install cmake apt-get -y install cmake
apt-get -y install libtool apt-get -y install libtool
apt-get -y install gfortran
apt-get -y install pkg-config apt-get -y install pkg-config
apt-get -y install wget apt-get -y install wget
apt-get -y install gfortran
apt-get -y install zip apt-get -y install zip
# Install expect to automate responses for interactive build questions # Install expect to automate responses for interactive build questions
apt-get -y install expect apt-get -y install expect
# Make filesystem mount points
mkdir /cvmfs /oasis /projects /scratch
# Use /tmp to store temporary files within the container during the # Use /tmp to store temporary files within the container during the
# bootstraping process # bootstraping process
cd /tmp cd /tmp
# Install miniconda2
wget https://repo.continuum.io/miniconda/Miniconda2-latest-Linux-x86_64.sh
chmod +x Miniconda2-latest-Linux-x86_64.sh
./Miniconda2-latest-Linux-x86_64.sh -b -p /opt/miniconda2
# Install miniconda3 # Install miniconda3
wget https://repo.continuum.io/miniconda/Miniconda3-latest-Linux-x86_64.sh wget https://repo.continuum.io/miniconda/Miniconda3-latest-Linux-x86_64.sh
chmod +x Miniconda3-latest-Linux-x86_64.sh chmod +x Miniconda3-latest-Linux-x86_64.sh
...@@ -131,19 +120,44 @@ OSVersion: xenial ...@@ -131,19 +120,44 @@ OSVersion: xenial
apt-get -y install zlib1g-dev apt-get -y install zlib1g-dev
# Download, build, and install OpenMPI # Download, build, and install OpenMPI
wget https://www.open-mpi.org/software/ompi/v1.8/downloads/openmpi-1.8.4.tar.gz wget https://download.open-mpi.org/release/open-mpi/v3.1/openmpi-3.1.4.tar.gz
tar -xzvf openmpi-1.8.4.tar.gz tar -xzvf openmpi-3.1.4.tar.gz
cd openmpi-1.8.4 cd openmpi-3.1.4
./configure --prefix=/opt/openmpi-1.8.4 ./configure --prefix=/opt/openmpi-3.1.4
make all install make all install
# Set paths to OpenMPI binaries and libraries # Set paths to OpenMPI binaries and libraries
export PATH="/opt/openmpi-1.8.4/bin:${PATH}" export PATH="/opt/openmpi-3.1.4/bin:${PATH}"
export LD_LIBRARY_PATH="/opt/openmpi-1.8.4/lib:${LD_LIBRARY_PATH}" export LD_LIBRARY_PATH="/opt/openmpi-3.1.4/lib:${LD_LIBRARY_PATH}"
# Install PyTorch dependencies for python(2) # Setup conda environment
export PATH="/opt/miniconda2/bin:${PATH}" export PATH="/opt/miniconda3/bin:${PATH}"
export CMAKE_PREFIX_PATH=${CONDA_PREFIX:-"$(dirname $(which conda))/../"} export CMAKE_PREFIX_PATH=${CONDA_PREFIX:-"$(dirname $(which conda))/../"}
# Install common python packages
conda install -y jupyterlab
conda install -y numpy
conda install -y matplotlib
conda install -y pandas
conda install -y plotly
conda install -y scipy
conda install -y scikit-learn
conda install -y scikit-image
conda install -y seaborn
conda install -y statsmodels
conda install -y opencv
# Install GPU-accelerated python packages
conda install -y numba
# Install additional python packages
conda install -y astropy
conda install -y biopython
conda install -y h5py
conda install -y nltk
conda install -y sympy
# Install PyTorch dependencies
conda install -y numpy conda install -y numpy
conda install -y ninja conda install -y ninja
conda install -y pyyaml conda install -y pyyaml
...@@ -152,115 +166,97 @@ OSVersion: xenial ...@@ -152,115 +166,97 @@ OSVersion: xenial
conda install -y setuptools conda install -y setuptools
conda install -y cmake conda install -y cmake
conda install -y cffi conda install -y cffi
conda install -y typing
conda install -y mkldnn -c mingfeima
conda install -y future
# Install common python packages for data science and machine
# learning applications
conda install -y pandas
conda install -y matplotlib
conda install -y ipython
conda install -y jupyter
conda install -y sympy
conda install -y nose
conda install -y scikit-learn
conda install -y scikit-image
conda install -y nltk
conda install -y statsmodels
conda install -y opencv
cd /opt cd /opt
# Download, build, and install PyTorch for python(2) # Download, build, and install PyTorch
git clone --recursive https://github.com/pytorch/pytorch
cd pytorch
git checkout v1.4.0
git submodule sync
git submodule update --init --recursive
export CC='mpicc' export CC='mpicc'
export CXX='mpicxx' export CXX='mpicxx'
export CFLAGS='-march=haswell -mmmx -mno-3dnow -msse -msse2 -msse3 -mssse3 -mno-sse4a -mcx16 -msahf -mmovbe -maes -mno-sha -mpclmul -mpopcnt -mabm -mno-lwp -mfma -mno-fma4 -mno-xop -mbmi -mbmi2 -mno-tbm -mavx -mavx2 -msse4.2 -msse4.1 -mlzcnt -mno-rtm -mno-hle -mrdrnd -mf16c -mfsgsbase -mno-rdseed -mno-prfchw -mno-adx -mfxsr -mxsave -mxsaveopt -mno-avx512f -mno-avx512er -mno-avx512cd -mno-avx512pf -mno-prefetchwt1 -mtune=haswell' export CFLAGS='-mtune=generic'
export USE_OPENMP=1
export BLAS='MKL'
export USE_FBGEMM=1
export USE_MKLDNN=1
export USE_NNPACK=1 export USE_NNPACK=1
export USE_NUMPY=1
export USE_QNNPACK=1 export USE_QNNPACK=1
export USE_MKLDNN=1
export USE_DISTRIBUTED=1 export USE_DISTRIBUTED=1
export USE_GLOO=1
export USE_GLOO_IBVERBS=1
export USE_IBVERBS=1 export USE_IBVERBS=1
export USE_GLOO=1
export USE_MPI=1 export USE_MPI=1
export USE_C10D_MPI=1 export USE_C10D_MPI=1
export USE_NCCL=0
export USE_SYSTEM_NCCL=0
export NCCL_INCLUDE_DIR='/usr/include'
export USE_OPENMP=1
export ATEN_THREADING='OMP'
export MKL_THREADING='OMP'
export TORCH_CUDA_ARCH_LIST='NONE'
export USE_CUDA=0 export USE_CUDA=0
export USE_CUDNN=0 export USE_CUDNN=0
export USE_NCCL=0
export USE_FFMPEG=0
export USE_OPENCV=1 export USE_OPENCV=1
export USE_FBGEMM=0
export TORCH_CUDA_ARCH_LIST="NONE"
git clone --recursive https://github.com/pytorch/pytorch
cd /opt/pytorch
git checkout v1.2.0
git submodule sync
git submodule update --init
python setup.py install python setup.py install
# Download and install PyTorch Vision package for python(2) # Download and install vision package for PyTorch
git clone https://github.com/pytorch/vision.git git clone https://github.com/pytorch/vision.git
cd /opt/pytorch/vision cd vision
git checkout v0.3.0 git checkout v0.5.0
python setup.py install python setup.py install
# Install PyTorch dependencies for python3 cd ../
export PATH="/opt/miniconda3/bin:${PATH}"
export CMAKE_PREFIX_PATH=${CONDA_PREFIX:-"$(dirname $(which conda))/../"}
conda install -y numpy
conda install -y ninja
conda install -y pyyaml
conda install -y mkl
conda install -y mkl-include
conda install -y setuptools
conda install -y cmake
conda install -y cffi
conda install -y typing
conda install -y mkldnn -c mingfeima
conda install -y future
# Install common python3 packages for data science and machine # Download and install text package for PyTorch
# learning applications git clone https://github.com/pytorch/text.git
conda install -y pandas cd text
conda install -y matplotlib git checkout 0.5.0
conda install -y ipython
conda install -y jupyter
conda install -y sympy
conda install -y nose
conda install -y scikit-learn
conda install -y scikit-image
conda install -y nltk
conda install -y statsmodels
conda install -y opencv
# Download, build, and install PyTorch for python3
cd /opt/pytorch
python setup.py clean --all
python setup.py install python setup.py install
# Download and install PyTorch Vision package for python3 cd ../
cd /opt/pytorch/vision
python setup.py clean --all # Download and install audio package for PyTorch
git clone https://github.com/pytorch/audio.git
cd audio
git checkout v0.4.0
python setup.py install python setup.py install
# Download the PyTorch examples repository cd ../
cd /opt/pytorch
# Download examples for PyTorch
git clone https://github.com/pytorch/examples.git git clone https://github.com/pytorch/examples.git
cd /opt
# Install fastai for PyTorch
git clone https://github.com/fastai/fastai
cd fastai
git checkout 1.0.60
tools/run-after-git-clone
pip install -e ".[dev]"
# Clean up /tmp directory
cd /tmp
rm Miniconda3-latest-Linux-x86_64.sh
rm *.deb
rm -rf openmpi-3.1.4*
# Update database for mlocate # Update database for mlocate
updatedb updatedb
%files %files
%runscript %runscript
echo " "
echo " __________________ __ _______________ "
echo " -----/ ____/ __ \/ |/ / ____/_ __/ "
echo " --/ / / / / / /|_/ / __/ / / "
echo " / /___/ /_/ / / / / /___ / / "
echo " \____/\____/_/ /_/_____/ /_/ "
echo " "
%test %test
This diff is collapsed.
...@@ -14,7 +14,7 @@ OSVersion: bionic ...@@ -14,7 +14,7 @@ OSVersion: bionic
AUTHOR_NAME Marty Kandes AUTHOR_NAME Marty Kandes
AUTHOR_EMAIL mkandes@sdsc.edu AUTHOR_EMAIL mkandes@sdsc.edu
LAST_UPDATED 20200211 LAST_UPDATED 20200225
%setup %setup
...@@ -26,7 +26,6 @@ OSVersion: bionic ...@@ -26,7 +26,6 @@ OSVersion: bionic
# Set paths to CUDA binaries and libraries # Set paths to CUDA binaries and libraries
export PATH="/usr/local/cuda-10.1/bin${PATH:+:${PATH}}" export PATH="/usr/local/cuda-10.1/bin${PATH:+:${PATH}}"
export LD_LIBRARY_PATH="/usr/local/cuda-10.1/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}" export LD_LIBRARY_PATH="/usr/local/cuda-10.1/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}"
export LD_LIBRARY_PATH="${LD_LIBRARY_PATH}:/usr/local/cuda/extras/CUPTI/lib64"
# Set paths to OpenMPI binaries and libraries # Set paths to OpenMPI binaries and libraries
export PATH="/opt/openmpi-3.1.4/bin:${PATH}" export PATH="/opt/openmpi-3.1.4/bin:${PATH}"
...@@ -337,24 +336,9 @@ OSVersion: bionic ...@@ -337,24 +336,9 @@ OSVersion: bionic
dpkg -i python3-libnvinfer_6.0.1-1+cuda10.1_amd64.deb dpkg -i python3-libnvinfer_6.0.1-1+cuda10.1_amd64.deb
dpkg -i python3-libnvinfer-dev_6.0.1-1+cuda10.1_amd64.deb dpkg -i python3-libnvinfer-dev_6.0.1-1+cuda10.1_amd64.deb
# Fixing some path-related issues associated with deb-based install of libcudnn and libnccl ...
mv /usr/lib/x86_64-linux-gnu/libcudnn_static.a /usr/local/cuda-10.1/lib64/libcudnn_static.a
mv /usr/lib/x86_64-linux-gnu/libcudnn_static_v7.a /usr/local/cuda-10.1/lib64/libcudnn_static_v7.a
mv /usr/lib/x86_64-linux-gnu/libcudnn.so.7.6.5 /usr/local/cuda-10.1/lib64/libcudnn.so.7.6.5
ln -s /usr/local/cuda-10.1/lib64/libcudnn.so.7.6.5 /usr/local/cuda-10.1/lib64/libcudnn.so.7
ln -s /usr/local/cuda-10.1/lib64/libcudnn.so.7 /usr/local/cuda-10.1/lib64/libcudnn.so
mv /usr/lib/x86_64-linux-gnu/libnccl_static.a /usr/local/cuda-10.1/lib64/libnccl_static.a
mv /usr/lib/x86_64-linux-gnu/libnccl.so.2.5.6 /usr/local/cuda-10.1/lib64/libnccl.so.2.5.6
ln -s /usr/local/cuda-10.1/lib64/libnccl.so.2.5.6 /usr/local/cuda-10.1/lib64/libnccl.so.2
ln -s /usr/local/cuda-10.1/lib64/libnccl.so.2 /usr/local/cuda-10.1/lib64/libnccl.so
mv /usr/include/nccl.h /usr/local/cuda-10.1/include/nccl.h
ln -s /usr/local/cuda-10.1/lib64 /usr/local/cuda-10.1/lib
mv /usr/share/doc/libnccl2/NCCL-SLA.txt.gz /usr/local/cuda-10.1/NCCL-SLA.txt
# Set paths to CUDA binaries and libraries # Set paths to CUDA binaries and libraries
export PATH="/usr/local/cuda-10.1/bin${PATH:+:${PATH}}" export PATH="/usr/local/cuda-10.1/bin${PATH:+:${PATH}}"
export LD_LIBRARY_PATH="/usr/local/cuda-10.1/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}" export LD_LIBRARY_PATH="/usr/local/cuda-10.1/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}"
export LD_LIBRARY_PATH="${LD_LIBRARY_PATH}:/usr/local/cuda/extras/CUPTI/lib64"
# Install basic drivers for user space access to Ethernet, RDMA, # Install basic drivers for user space access to Ethernet, RDMA,
# and Infiniband. See https://community.mellanox.com/docs/DOC-2431 # and Infiniband. See https://community.mellanox.com/docs/DOC-2431
......
...@@ -14,7 +14,7 @@ OSVersion: bionic ...@@ -14,7 +14,7 @@ OSVersion: bionic
AUTHOR_NAME Marty Kandes AUTHOR_NAME Marty Kandes
AUTHOR_EMAIL mkandes@sdsc.edu AUTHOR_EMAIL mkandes@sdsc.edu
LAST_UPDATED 20200210 LAST_UPDATED 20200225
%setup %setup
...@@ -26,7 +26,6 @@ OSVersion: bionic ...@@ -26,7 +26,6 @@ OSVersion: bionic
# Set paths to CUDA binaries and libraries # Set paths to CUDA binaries and libraries
export PATH="/usr/local/cuda-10.1/bin${PATH:+:${PATH}}" export PATH="/usr/local/cuda-10.1/bin${PATH:+:${PATH}}"
export LD_LIBRARY_PATH="/usr/local/cuda-10.1/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}" export LD_LIBRARY_PATH="/usr/local/cuda-10.1/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}"
export LD_LIBRARY_PATH="${LD_LIBRARY_PATH}:/usr/local/cuda/extras/CUPTI/lib64"
# Set default miniconda environment # Set default miniconda environment
export PATH="/opt/miniconda3/bin:${PATH}" export PATH="/opt/miniconda3/bin:${PATH}"
...@@ -333,24 +332,14 @@ OSVersion: bionic ...@@ -333,24 +332,14 @@ OSVersion: bionic
dpkg -i python3-libnvinfer_6.0.1-1+cuda10.1_amd64.deb dpkg -i python3-libnvinfer_6.0.1-1+cuda10.1_amd64.deb
dpkg -i python3-libnvinfer-dev_6.0.1-1+cuda10.1_amd64.deb dpkg -i python3-libnvinfer-dev_6.0.1-1+cuda10.1_amd64.deb
# Fixing some path-related issues associated with deb-based install of libcudnn and libnccl ...
mv /usr/lib/x86_64-linux-gnu/libcudnn_static.a /usr/local/cuda-10.1/lib64/libcudnn_static.a
mv /usr/lib/x86_64-linux-gnu/libcudnn_static_v7.a /usr/local/cuda-10.1/lib64/libcudnn_static_v7.a
mv /usr/lib/x86_64-linux-gnu/libcudnn.so.7.6.5 /usr/local/cuda-10.1/lib64/libcudnn.so.7.6.5
ln -s /usr/local/cuda-10.1/lib64/libcudnn.so.7.6.5 /usr/local/cuda-10.1/lib64/libcudnn.so.7
ln -s /usr/local/cuda-10.1/lib64/libcudnn.so.7 /usr/local/cuda-10.1/lib64/libcudnn.so
mv /usr/lib/x86_64-linux-gnu/libnccl_static.a /usr/local/cuda-10.1/lib64/libnccl_static.a
mv /usr/lib/x86_64-linux-gnu/libnccl.so.2.5.6 /usr/local/cuda-10.1/lib64/libnccl.so.2.5.6
ln -s /usr/local/cuda-10.1/lib64/libnccl.so.2.5.6 /usr/local/cuda-10.1/lib64/libnccl.so.2
ln -s /usr/local/cuda-10.1/lib64/libnccl.so.2 /usr/local/cuda-10.1/lib64/libnccl.so
mv /usr/include/nccl.h /usr/local/cuda-10.1/include/nccl.h
ln -s /usr/local/cuda-10.1/lib64 /usr/local/cuda-10.1/lib
mv /usr/share/doc/libnccl2/NCCL-SLA.txt.gz /usr/local/cuda-10.1/NCCL-SLA.txt
# Set paths to CUDA binaries and libraries # Set paths to CUDA binaries and libraries
export PATH="/usr/local/cuda-10.1/bin${PATH:+:${PATH}}" export PATH="/usr/local/cuda-10.1/bin${PATH:+:${PATH}}"
export LD_LIBRARY_PATH="/usr/local/cuda-10.1/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}" export LD_LIBRARY_PATH="/usr/local/cuda-10.1/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}"
export LD_LIBRARY_PATH="${LD_LIBRARY_PATH}:/usr/local/cuda/extras/CUPTI/lib64"
# Clean up /tmp directory
cd /tmp
rm Miniconda3-latest-Linux-x86_64.sh
rm *.deb
# Update database for mlocate # Update database for mlocate
updatedb updatedb
......
...@@ -14,7 +14,7 @@ OSVersion: bionic ...@@ -14,7 +14,7 @@ OSVersion: bionic
AUTHOR_NAME Marty Kandes AUTHOR_NAME Marty Kandes
AUTHOR_EMAIL mkandes@sdsc.edu AUTHOR_EMAIL mkandes@sdsc.edu
LAST_UPDATED 20200213 LAST_UPDATED 20200225
%setup %setup
...@@ -130,6 +130,12 @@ OSVersion: bionic ...@@ -130,6 +130,12 @@ OSVersion: bionic
export PATH="/opt/openmpi-3.1.4/bin:${PATH}" export PATH="/opt/openmpi-3.1.4/bin:${PATH}"
export LD_LIBRARY_PATH="/opt/openmpi-3.1.4/lib:${LD_LIBRARY_PATH}" export LD_LIBRARY_PATH="/opt/openmpi-3.1.4/lib:${LD_LIBRARY_PATH}"
# Clean up /tmp directory
cd /tmp
rm Miniconda3-latest-Linux-x86_64.sh
rm *.deb
rm -rf openmpi-3.1.4*
# Update database for mlocate # Update database for mlocate
updatedb updatedb
......
...@@ -14,7 +14,7 @@ OSVersion: bionic ...@@ -14,7 +14,7 @@ OSVersion: bionic
AUTHOR_NAME Marty Kandes AUTHOR_NAME Marty Kandes
AUTHOR_EMAIL mkandes@sdsc.edu AUTHOR_EMAIL mkandes@sdsc.edu
LAST_UPDATED 20200210 LAST_UPDATED 20200225
%setup %setup
...@@ -82,6 +82,10 @@ OSVersion: bionic ...@@ -82,6 +82,10 @@ OSVersion: bionic
chmod +x Miniconda3-latest-Linux-x86_64.sh chmod +x Miniconda3-latest-Linux-x86_64.sh
./Miniconda3-latest-Linux-x86_64.sh -b -p /opt/miniconda3 ./Miniconda3-latest-Linux-x86_64.sh -b -p /opt/miniconda3
# Clean up /tmp directory
cd /tmp
rm Miniconda3-latest-Linux-x86_64.sh
# Update database for mlocate # Update database for mlocate
updatedb updatedb
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment