Commit 3ff5e46d authored by Andreas Gocht's avatar Andreas Gocht

add openmpi version

parent d1fe910c
Bootstrap: docker
From: debian:testing
%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
apt-get -y install openmpi-bin openmpi-common
###################################
# setup infiniband on taurus
###################################
apt-get -y install libibverbs1 ibverbs-providers
mv /tmp/mca-btl-openib-device-params.ini /usr/share/openmpi/
if [ ! -d /apps ]; then
mkdir /apps
mkdir /scratch
mkdir /sw
mkdir /projects
fi
###################################
# install scorep
###################################
# scorep requirements
apt-get -y install libopenmpi-dev zlib1g-dev autotools-dev automake autoconf gcc-7-plugin-dev flex bison texinfo
apt-get -y install libpmi2-0-dev
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 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 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
###################################
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