Skip to content

BSM compilation instructions

Bartosz Kostrzewa edited this page May 12, 2016 · 4 revisions

Jureca

The build system on Jureca has become sufficiently complicated to warrant this section. As of 2016-05-12, these steps produce a high-performance version of the code for Jureca.

Required Modules

module load Intel/2016.2.181-GCC-4.9.3-2.25
module load ParaStationMPI/5.1.5-1-mt  ## required by other dependencies
module load imkl/11.3.2.181-mt
module load flex

Configuration

CC=icc LDFLAGS="-qopenmp -static" \ 
CFLAGS="-O3 -static -qopenmp -std=c99 -mtune=core-avx2 -march=core-avx2" \
$PATH_TO_TMLQCD_SOURCES/configure \
--disable-halfspinor --disable-gaugecopy \
--with-limedir=$PATH_TO_LIME_INSTALL_OR_BUILD_DIRECTORY \
--disable-mpi --enable-omp --disable-sse2 --disable-sse3 --enable-alignment=32 \
--with-lapack=" -Wl,--start-group ${MKLROOT}/lib/intel64/libmkl_intel_lp64.a ${MKLROOT}/lib/intel64/libmkl_core.a ${MKLROOT}/lib/intel64/libmkl_intel_thread.a -Wl,--end-group -lpthread -lm -ldl"