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

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.

3 帖子 / 0 全新
最新文章
如需更全面地了解编译器优化,请参阅优化注意事项

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

发表评论

登录添加评论。还不是成员?立即加入