-
Notifications
You must be signed in to change notification settings - Fork 47
Compiling on Jureca
Bartosz Kostrzewa edited this page May 19, 2017
·
7 revisions
As of May 15th 2017, compilation on Jureca works well as follows.
There were issues with Intel MPI in the past, so Parastation MPI is recommended right now. The required set of modules may be loaded via:
$ module load intel-para flex
which should result in the following list of modules being loaded:
1) GCCcore/.5.4.0 (H) 4) icc/.2017.2.174-GCC-5.4.0 (H) 7) pscom/.Default (H) 10) intel-para/2017a
2) binutils/.2.28 (H) 5) ifort/.2017.2.174-GCC-5.4.0 (H) 8) ParaStationMPI/5.1.9-1 11) Bison/.3.0.4 (H)
3) StdEnv (H) 6) Intel/2017.2.174-GCC-5.4.0 9) imkl/2017.2.174 12) flex/2.6.3
Having compiled and installed lime and lemon with the above module set, one can proceed to configure and compile tmLQCD.
tmLQCD is generally fastest on (Intel Xeon & [fat,pruned]-tree network) without multi-threading, although threads can be used to significantly extend the strong-scaling region, if necessary.
$ cd ${path_to_tmlqcd_sources}
$ autoconf
$ mkdir build
$ cd build
$ ../configure --with-limedir=${lime_install_dir} --with-lemondir=${lemon_install_dir} \
--with-mpidimension=4 --disable-omp --enable-mpi --disable-sse2 --disable-sse3 \
--with-lapack="-Wl,--start-group ${MKLROOT}/lib/intel64/libmkl_intel_lp64.a ${MKLROOT}/lib/intel64/libmkl_sequential.a ${MKLROOT}/lib/intel64/libmkl_core.a -Wl,--end-group -lpthread -lm -ldl" \
--enable-halfspinor --enable-gaugecopy \
CC=mpicc CFLAGS="-O3 -xCORE-AVX2 -fma -std=c99"
$ make -j8
$ cd ${path_to_tmlqcd_sources}
$ autoconf
$ mkdir build
$ cd build
$ ../configure --with-limedir=${lime_install_dir} --with-lemondir=${lemon_install_dir} \
--with-mpidimension=4 --enable-omp --enable-mpi --disable-sse2 --disable-sse3 \
--with-lapack="-Wl,--start-group ${MKLROOT}/lib/intel64/libmkl_intel_lp64.a ${MKLROOT}/lib/intel64/libmkl_intel_thread.a ${MKLROOT}/lib/intel64/libmkl_core.a -Wl,--end-group -liomp5 -lpthread -lm -ldl" \
--enable-halfspinor --enable-gaugecopy \
CC=mpicc CFLAGS="-O3 -xCORE-AVX2 -fma -std=c99"
$ make -j8