Community
cancel
Showing results for 
Search instead for 
Did you mean: 
asd__asdqwe
Beginner
34 Views

Segmentation fault with complex ScaLAPACK

Hello,

I'm trying to understand why the following simple program is segfaulting. When I'm using double instead of std::complex<double>, everything runs smoothly.

Thanks.

0 Kudos
6 Replies
Gennady_F_Intel
Moderator
34 Views

are there any specific input parameters? the # of mpi processes?

Evarist_F_Intel
Employee
34 Views

Could you please also share your link line? (interface and compiler is the most interesting part)

Evarist_F_Intel
Employee
34 Views

As far as I understand you don't use GNU Fortran in your project (even though you built MPICH with GNU compiler and GNU Fortran bindings). Hence you do not need to link against libmkl_gf_lp64. Could you please try to use libmkl_intel_lp64 instead of gf?

mpicxx -cxx=icpc -lmkl_intel_thread -lmkl_core -lmkl_intel_lp64 -liomp5 -lpthread -lmpifort -lmkl_blacs_intelmpi_lp64 -lmkl_scalapack_lp64 scalapack_z.cpp -std=c++11

 

Evarist_F_Intel
Employee
34 Views

I am sorry for late respond. Yes I reproduced the crash.

The problem is in incorrect number of input parameters for the function pzgeqpf (actually it requires 13 parameters, while you pass only 11). Please take a look at the function declaration either in mkl/include/mkl_scalapack.h, or in MKL documentation or in Netlib documentation (http://www.netlib.org/scalapack/explore-html/de/dbc/pzgeqpf_8f_source.html).

Gennady_F_Intel
Moderator
34 Views

yes, the problem is escalated. we will change these description at the on the next updates.

Gennady_F_Intel
Moderator
34 Views

the doc has been fixed into MKL v.11.3.1. we are sorry for delaying into notification.