Skip to content

DIRAC ITT 2020 ICEXA

Peter Boyle edited this page Oct 21, 2020 · 4 revisions
####################################
# Grid directory and support directory
####################################
export prefix=$HOME/ITT/prefix
export grid=$HOME//ITT/GridCompile
mkdir -p $prefix
mkdir -p $grid

##################
#LIME
##################
cd $prefix
wget http://usqcd-software.github.io/downloads/c-lime/lime-1.3.2.tar.gz
tar xvzf lime-1.3.2.tar.gz
cd lime-1.3.2
./configure --prefix $prefix
make all install

##################
#GMP - tesseract is badly configured
##################
cd $prefix
wget https://ftp.gnu.org/gnu/gmp/gmp-6.1.2.tar.bz2
tar xvjf gmp-6.1.2.tar.bz2
cd gmp-6.1.2
./configure --prefix $prefix
make all install

##################
#MPFR - summit is badly configured
##################
cd $prefix
wget https://www.mpfr.org/mpfr-current/mpfr-4.0.2.tar.gz
tar xvzf mpfr-4.0.2.tar.gz
cd mpfr-4.0.2
./configure --prefix $prefix --with-gmp=$prefix
make all install

###############
# FFTW
###############
cd $prefix
wget http://www.fftw.org/fftw-3.3.8.tar.gz
tar xvzf fftw-3.3.8.tar.gz
cd fftw-3.3.8
./configure --prefix $prefix  --enable-avx2 

##################
#OpenSSL
##################
cd $prefix
wget  https://www.openssl.org/source/openssl-1.1.0l.tar.gz
tar xvzf openssl-1.1.0l.tar.gz
cd openssl-1.1.0l
./config --prefix=$prefix
make all install

##################
#Obtain Grid and support codes
##################
cd $grid
git clone https://paboyle@github.com/paboyle/Grid
cd Grid
./bootstrap.sh

source /home/dp008/dp008/paboyle/Modules/hdf5/module.sh
module load intel-tools-18
#########################
# build for CPU
#########################
cd $grid
cd Grid
mkdir build-nc3
cd build-nc3

../configure --enable-comms=mpi-auto     \
             --enable-simd=AVX2          \
             --prefix $HOME/prefix-cpu   \
             CXX=g++                     \
             MPICXX=mpiicpc              \
             LDFLAGS=-L$HOME/prefix/lib/ \
             CXXFLAGS="-I$HOME/prefix/include/ -std=c++11 -fpermissive"
make -j 24

#########################
# build for CPU
#########################
cd $grid
cd Grid
mkdir build-nc4
cd build-nc4

../configure --enable-comms=mpi-auto     \
             --enable-simd=AVX2          \
             --enable-Nc=4          \
             --prefix $HOME/prefix-cpu   \
             CXX=g++                     \
             MPICXX=mpiicpc              \
             LDFLAGS=-L$HOME/prefix/lib/ \
             CXXFLAGS="-I$HOME/prefix/include/ -std=c++11 -fpermissive"
make -j 24