Quantum ESPRESSO 6.3 for LX
Webpagehttps://www.quantum-espresso.org/Version6.3

Build EnvironmentIntel Parallel Studio 2017update4

Files Required
q-e-qe-6.3.tar.gz
want-latest.tar.gz(Previously downloaded one was used for installation, since WanT server was not responding (maybetemporary). Normally installation script can download the correct archive via wget.)

Build Procedure#!/bin/sh
VERSION=6.3
BASEDIR=/home/users/${USER}/Software/QE/${VERSION}TARBALL=${BASEDIR}/q-e-qe-${VERSION}.tar.gz
INSTDIR=/local/apl/lx/espresso63#LIBXC=${INSTDIR}/libxc-4.2.3
WANT_LATEST=${BASEDIR}/want-latest.tar.gz
PARALLEL=12# -------------------------------------------------------------------umask 0022
module purge
module load intel_parallelstudio/2017update4
export LANG=
export LC_ALL=C# from $MKLROOT/tools/mkl_link_tool
MKL_SCALAPACK_LIBS=-"L${MKLROOT}/lib/intel64 -lmkl_scalapack_lp64 -lmkl_blacs_intelmpi_lp64 -lmkl_intel_lp64 -lmkl_sequential -lmkl_core lpthread -lm -ldl"
cd ${INSTDIR}if [ -d q-e-qe-${VERSION} ]; then
mv q-e-qe-${VERSION} q-e-qe-erase
rm -rf q-e-qe-erase &fitar zxf ${TARBALL}
mv q-e-qe-${VERSION}/* .
mv q-e-qe-${VERSION}/.[a-z]* .
rmdir q-e-qe-${VERSION}
export MPIF90=mpiifort
export MPIFC=mpiifort
export MPIF77=mpiifort
export MPICC=mpiicc
export MPICXX=mpiicpc

FC=ifort F90=ifort F77=ifort CC=icc \FFLAGS="-O2 -assume byterecl -ip -g" BLAS_LIBS="-mkl=sequential" \LAPACK_LIBS="-mkl=sequential" FFT_LIBS="-mkl=sequential" \SCALAPACK_LIBS=$MKL_SCALAPACK_LIBS LDFLAGS="-static-intel" \./configure --with-scalapack# MKL instead of FFTW and add libxc#LIBXC_ESC=`echo ${LIBXC} | sed -e 's/\//\\\\\//g'`#sed -i -e "s/D__FFTW3/D__DFTI -D__LIBXC/" \#-e "/^LD_LIBS/s/$/ -L${LIBXC_ESC}\/lib -lxcf90 -lxc/" \##-e "/^IFLAGS/s/$/ -I${LIBXC_ESC}\/include/" \make.inc

sed -i -e "s/D__FFTW3/D__DFTI/" make.inc
cp ${WANT_LATEST} archiveecho "==== plumed ===="
make -j${PARALLEL} plumed
for i in pw cp neb ph pp pwcond ld1 xspectra upf tddfpt; doecho "==== $i ===="
make -j${PARALLEL} $idone
for i in want gipaw yambo gwl; doecho "==== $i ===="
make $idone# i couldn't understand the situation of west and d3q
WANNIER90_VER=2.1.0
cd install; make -f plugins_makefile uncompress-w90; cd ../PWD_ESC=`pwd | sed -e 's/\//\\\\\//g'`sed -i -e "/include/s/.*/include ${PWD_ESC}\/wannier90-${WANNIER90_VER}\/make.inc/" wannier90-${WANNIER90_VER}/src/Makefile.2
for i in epw w90 SternheimerGW couple; doecho "==== $i ===="
make -j${PARALLEL} $idone
cd test-suite
make run-tests-serial
make clean
make run-tests-parallel
cd ..

Tests
Built binaries passed all the tests.
(Error threshold is considerably loosened in this version.)

Notes
Optimization by "-O3 -xHost" does not yield performance improvement (according to some test calculations usingsmall-benchmarks/test_4).
OpenMP is NOT enabled.
Linking with libxc (tried with version 4.2.3) was avoided this time, since some of tests failed to pass.
West was not embedded in this version.
The specified version by the script (2.0.1) is no longer available in the official sites.
We tried to build with 2.0.1(from qe-6.1 archive directory) or 3.1.1, but failed.
d3q is also not available from the official site (we couldn't understand what is going on) and so is omitted.