With version 6.5 from github,building on trestles to use the oldest environment for xHOST:
module load intel/19.0.5 impi/19.0.5 mkl/19.0.5
$ ./install/configure \
MPIF90=mpiifort F90=ifort F77=ifort FC=ifort CC=icc \
SCALAPACK_LIBS="-lmkl_scalapack_lp64 -lmkl_blacs_intelmpi_lp64" \
LAPACK_LIBS="-lmkl_lapack95_lp64 -lmkl_blas95_lp64" \
BLAS_LIBS="-lmkl_intel_lp64 -lmkl_intel_thread -lmkl_core" \
FFT_LIBS="-L${MKL_ROOT}/interfaces/fftw3xf -lfftw3xf_intel" \
FCFLAGS="-O3 -xHOST -axsse4.2,AVX,CORE-AVX512 -assume byterecl" \
CCFLAGS="-O3 -xHOST -axsse4.2,AVX,CORE-AVX512 -assume bytrerecl \
-D__INTEL -D__GNUC__ -D__FFTW3 -D__MPI -D__PARA -D__SCALAPACK" \
--with-hdf5=/share/apps/hdf5/1.10.5/intel/impi \
--with-scalapack=intel --enable-openmp --enable-parallel \
--prefix=/share/apps/espresso/espresso-6.5-intel-impi-mkl
make pw
make all
Using the AUSURF112 benchmark, running on single nodes of trestles and razor, and last a comparison run with qe 6.1:
OMP_NUM_THREADS=1 mpirun -np 32 /scrfs/apps/espresso/espresso-6.5-intel-mkl-impi/bin/pw.x -npools 1 <ausurf.in OMP_NUM_THREADS=1 mpirun -np 32 /scrfs/apps/espresso/espresso-6.5-intel-mkl-impi/bin/pw.x -npools 2 <ausurf.in OMP_NUM_THREADS=1 mpirun -np 16 /scrfs/apps/espresso/espresso-6.5-intel-mkl-impi/bin/pw.x -npools 1 <ausurf.in OMP_NUM_THREADS=1 mpirun -np 16 /scrfs/apps/espresso/espresso-6.5-intel-mkl-impi/bin/pw.x -npools 2 <ausurf.in OMP_NUM_THREADS=2 mpirun -np 8 /scrfs/apps/espresso/espresso-6.5-intel-mkl-impi/bin/pw.x -npools 1 <ausurf.in mpirun -np 16 /share/apps/espresso/qe-6.1-intel-mkl-impi/bin/pw.x -npools 1 <ausurf.in
with results showing 6.5 much improved over 6.1.
| Run | System | OMP | MPI | npools | walltime |
|---|---|---|---|---|---|
| 1 | trestles | 1 | 32 | 1 | 867 |
| 2 | trestles | 1 | 32 | 2 | 837 |
| 3 | razor | 1 | 16 | 1 | 690 |
| 4 | razor | 1 | 16 | 2 | did not run |
| 5 | razor | 2 | 8 | 1 | 1073 |
| 6 | razor qe 6.1 | 1 | 16 | 1 | 1612 |