-
Notifications
You must be signed in to change notification settings - Fork 13
Description
It seems that the make.inc generated from configure-qe-skx.sh still refers to threaded MKL. If I compile pw using that make.inc file, I got a lot of errors like:
/opt/intel/compilers_and_libraries_2020.2.254/linux/mkl/lib/intel64/libmkl_intel_thread.a(dpttrs_par.o): In functionmkl_lapack_dpttrs':
dpttrs_omp_gen.f:(.text+0x177): undefined reference to __kmpc_global_thread_num' dpttrs_omp_gen.f:(.text+0x189): undefined reference to __kmpc_ok_to_fork'
dpttrs_omp_gen.f:(.text+0x1a2): undefined reference to __kmpc_push_num_threads' dpttrs_omp_gen.f:(.text+0x1ea): undefined reference to __kmpc_fork_call'
dpttrs_omp_gen.f:(.text+0x205): undefined reference to __kmpc_serialized_parallel' dpttrs_omp_gen.f:(.text+0x26d): undefined reference to __kmpc_end_serialized_parallel'
dpttrs_omp_gen.f:(.text+0x34a): undefined reference to omp_get_thread_num' dpttrs_omp_gen.f:(.text+0x354): undefined reference to omp_get_num_threads'
`
Adding the option -qopenmp to the variable LDFLAGS solves the error, but I guess that in that case QE still uses the threaded version of MKL.
Moreover, the configure-qe-skx.sh script adds the option -threads to the FFLAGS variable, which does not seem necessary.