Building application with MKL, MKL ScaLAPACK and MVAPICH

Building application with MKL, MKL ScaLAPACK and MVAPICH

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


-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.

4 posts / 0 new
Last post
For more complete information about compiler optimizations, see our Optimization Notice.

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?

One more thing. You could try using the OpenMPI BLACS: libmkl_blacs_openmpi_lp64.a

Please have a look at, 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.

Leave a Comment

Please sign in to add a comment. Not a member? Join today