Intel® oneAPI Math Kernel Library
Ask questions and share information with other developers who use Intel® Math Kernel Library.
6981 Discussions

Building application with MKL, MKL ScaLAPACK and MVAPICH

Donald_F_
Beginner
795 Views

I am trying to correctly build PW (one of te component apps in Quantum Espresso), using MKL 10.3.11, ifort-12.1.339 and MVAPICH2 1.7 . When I build the application using the link lines and include info generated by the Intel MKL Link Line advisor :

-L$(MKLROOT)/lib/intel64 $(MKLROOT)/lib/intel64/libmkl_lapack95_lp64.a -lmkl_scalapack_lp64 -lmkl_intel_lp64 -lmkl_sequential -lmkl_core -lmkl_blacs_intelmpi_lp64 -lpthread -lm

and

-I$(MKLROOT)/include/intel64/lp64 -I$(MKLROOT)/include, the app builds ok, the rath looks ok (using shared libs), but when I try to run I get:

"srun -n 1 ./bin/pw.x
0 - <NO ERROR MESSAGE> : Could not convert index 1140850688 into a pointer
The index may be an incorrect argument.
Possible sources of this problem are a missing "include 'mpif.h'",
a misspelled MPI object (e.g., MPI_COM_WORLD instead of MPI_COMM_WORLD)
or a misspelled user variable for an MPI object (e.g., "

Which indicates I'm mixing MPI I and MPI2. However, when I build the ScaLAPACK examples which come with the Intel MKL installation, all works ok. Any help would be appreciated.

0 Kudos
3 Replies
Todd_R_Intel
Employee
795 Views
I don't see anything wrong with your link line. While we don't test MVAPICH the fact that our examples linked with our library for Intel MPI will work with MVAPICH seems to indicate that these are compatible (to some degree). Anyone else using MVAPICH?
0 Kudos
Todd_R_Intel
Employee
795 Views
One more thing. You could try using the OpenMPI BLACS: libmkl_blacs_openmpi_lp64.a
0 Kudos
Hans_P_Intel
Employee
795 Views

Please have a look at https://software.intel.com/en-us/articles/quantum-espresso-for-the-intel-xeon-phi-processor, which not only focuses on the Intel® Xeon Phi™ x200 processor family (previously code-named "Knights Landing" or "KNL") but seamlessly applies to any Intel processor. The aforementioned article helps to build an optimized binary, which also yields optimized performance.

0 Kudos
Reply