Commit 597e4cf7 authored by Andreas Gocht's avatar Andreas Gocht

add ubuntu again

parent 3ff5e46d
Bootstrap: docker
From: ubuntu:xenial
%help
"This container uses debian testing with OpenMPI and mpi4py. It has a build-in Score-P support."
"Building and tracing apps using Score-P for gcc, g++, gfortran and python2/3 should work."
"For scorep have a look to http://www.vi-hps.org/projects/score-p/ ."
"For python tracing, please have a look to https://github.com/score-p/scorep_binding_python ."
%runscript
echo "This is what happens when you run the container..."
%files
mca-btl-openib-device-params.ini /tmp/
%post
apt-get update
apt-get dist-upgrade -y
apt-get -y install vim
# build environment
apt-get -y install wget curl build-essential make g++ gfortran git subversion cmake python python3 python-pip python3-pip git
###################################
# setup infiniband on taurus
###################################
# apt-get -y install libibverbs1 ibverbs-providers
#
if [ ! -d /apps ]; then
mkdir /apps
mkdir /scratch
mkdir /sw
mkdir /projects
fi
apt-get -y install libmlx4-1 libmlx4-dev libmlx5-1 libmlx5-dev libibverbs1 apt libibverbs-dev
###################################
# Slurm .... why not ...
# https://wiki.zih.tu-dresden.de/foswiki/bin/view/Main/BuildSlurmTaurus
###################################
apt-get -y install autotools-dev automake autoconf libtool
cd /apps
if [ ! -d slurm ]; then
mkdir slurm
cd slurm
git clone https://github.com/SchedMD/slurm.git
cd slurm
git checkout slurm-17-02-9-1
./configure --prefix=/usr/ --sysconfdir=/etc/slurm --localstatedir=/var --disable-debug
make -C contribs/pmi2 install
fi
###################################
# OpenMPI caus we can
###################################
cd /apps
if [ ! -d openmpi ]; then
mkdir openmpi
cd openmpi
wget https://www.open-mpi.org/software/ompi/v3.0/downloads/openmpi-3.0.0.tar.gz
tar -xf openmpi-3.0.0.tar.gz
cd openmpi-3.0.0/
./configure --prefix=/usr/ --with-pmi --with-verbs --with-slurm
# likely no infinband as --with-mxm is not specified
make -j 4
make install
mv /tmp/mca-btl-openib-device-params.ini /usr/share/openmpi/
fi
###################################
# install scorep
###################################
# scorep requirements
apt-get -y install zlib1g-dev autotools-dev automake autoconf gcc-5-plugin-dev flex bison texinfo
cd /apps
if [ ! -d scorep ]; then
#get a recent Score-P from trunk (the only one that have the gcc-7 patch)
svn co --username scorep --password foo42bar --non-interactive https://silc.zih.tu-dresden.de/svn/hooks-root/afs-dev/tags/REL-06/
cd REL-06/
./install-scorep-dev.06.sh --prefix=/usr/local
export PATH=/usr/local/bin:$PATH
m4 --version
autoconf --version
libtool --version
cd /apps
svn co --username scorep --password foo42bar --non-interactive https://silc.zih.tu-dresden.de/svn/silc-root/trunk scorep
cd scorep
./bootstrap
mkdir build
cd build
../configure '--prefix=/usr/' \
'--with-libbfd=no' \
'--with-libhdf5=no'\
'--with-nocross-compiler-suite=gcc' \
'--with-mpi=openmpi' \
'--without-gui' \
'--disable-silent-rules' \
'--enable-backend-test-runs' \
'--enable-static=no' \
'--enable-shared=yes' \
'--enable-debug' \
'CFLAGS=-g' \
'CXXFLAGS=-g'
make -j 4 # just for my notebook, you might want to use a higher number
make install
fi
###################################
# scorep python tracing
###################################
apt-get -y install python-dev
apt-get -y install python3-dev
cd /apps
if [ ! -d scorep_binding_python ]; then
git clone https://github.com/score-p/scorep_binding_python
cd scorep_binding_python
python setup.py install
python3 setup.py install
fi
###################################
# mpi4py
###################################
cd /apps
pip install mpi4py
pip3 install mpi4py
###################################
# espressopp
###################################
## need to build own libboost
# apt-get -y install libfftw3-dev
# apt-get -y install libboost-dev libboost-mpi-dev libboost-python-dev libboost-serialization-dev libboost-system-dev libboost-filesystem-dev
# apt-get -y install python-numpy
#
# cd /apps
#
# if [ ! -d espressopp ]; then
# git clone https://github.com/espressopp/espressopp.git
# cd espressopp
# mkdir build
# cd build
# SCOREP_WRAPPER=off cmake -DEXTERNAL_BOOST=ON -DEXTERNAL_MPI4PY=ON -DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_CXX_COMPILER='scorep-mpicxx' -DCMAKE_Fortran_COMPILER='scorep-mpif90' -DCMAKE_C_COMPILER='scorep-mpicc' ..
# make -j 4
# make install
# fi
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment