Community
cancel
Showing results for 
Search instead for 
Did you mean: 
267 Views

mkl error in p?geevx - fortran

I'm trying the newly introduced pcgeevx (complex non-hermitian problem - single precision), and I obtain "Intel MKL ERROR: Parameter 14 was incorrect on entry to PCGEEVX." I do not understand how come (the 14th should be an integer and a reference an integer).

Here is (in my opinion) the concerned part

complex :: eigenval(n)
complex :: eigenvec(lda,ldb), matrix(lda,ldb)
integer :: desca(9)
integer :: lwork, lrwork, liwork, idum
real :: dum
real, allocatable :: rwork(:)
complex, allocatable :: work(:)
complex :: cdum
integer, allocatable :: iwork(:)
 

lwork = -1   ! this is just the first call to obtain the minimum work size requirement
allocate(work(1))
allocate(rwork(n))
allocate(iwork(n))
call pcgeevx('B', 'N', 'V', 'N', n, matrix, desca, eigenval, cdum, idum, eigenvec, desca, &
              idum, idum, rwork, dum, rwork, dum, work, lwork, info)

 

I would like to stress that the if I use the hermitian equivalent  pcheevx or the non parallel version cgeev everything works like a charm. 

Is it possible that I didn't get right the arguments in pcgeevx?

thanks in advance

0 Kudos
15 Replies
267 Views

I have also tried, instead of complex eigenval, to use real and imaginary part arrays, as in

call pcgeevx('B', 'N', 'V', 'N', n, matrix, desca, wr, wi, cdum, idum, eigenvec, desca, &
              idum, idum, rwork, dum, rwork, dum, work, lwork, info)

in which case I obtain  "Intel MKL ERROR: Parameter 15 was incorrect on entry to PCGEEVX."

Gennady_F_Intel
Moderator
267 Views

it might be the issue. What version of mkl did you try?

267 Views

mkl 2020, update 1 (last month release). only this one has the p?geevx available in the scalapack part.

thanks

Gennady_F_Intel
Moderator
267 Views

just to keep the time - could you give us the simplest example which we could compile and run?

267 Views

The attached code could be consider as a minimum test. I compile it as

mpif90  -O2  min_test.F90  -L/${MKLROOT}/lib/intel64/ -lmkl_scalapack_lp64 -lmkl_intel_lp64 -lmkl_sequential -lmkl_core -lmkl_blacs
_openmpi_lp64 -lpthread

 

many thanks

Gennady_F_Intel
Moderator
267 Views

thanks, we will play with the example 

Gennady_F_Intel
Moderator
267 Views

We reproduced the problem. The issue is escalated. The thread will be updated asap.

thanks

267 Views

Hello, are there any progress on this subject? thanks.

Gennady_F_Intel
Moderator
267 Views

yes, the fix of the issue is planning to release the next update of mkl.

Gennady_F_Intel
Moderator
240 Views

Francesco, could you check the MKL v.2020 update 2 which available for download and keep us informed with the status. 

191 Views

Hello,

I have checked update 2, but the problem still seems to be there. I have still doubts about the call pgeevx for the error message says "Intel MKL ERROR: Parameter 15 was incorrect on entry to PCGEEVX." as if I make a mistake in the arguments. But I do not understand where (if it is).

thanks, f.

Gennady_F_Intel
Moderator
184 Views

ok, we will re-checked the case once again and get back to this thread soon.


Gennady_F_Intel
Moderator
178 Views

The original test contains the error in input parameters. Namely, using nblk to 2 is not correct. According to the documentation (https://software.intel.com/content/www/us/en/develop/documentation/mkl-developer-reference-c/top/sca...) the minimal value of nblk is 6 (see the section "Current Notes and Restrictions"):

The current implementation of p?lahqr requires the distributed block size to be square and at least six (6); unlike simpler codes like LU, this algorithm is extremely sensitive to block size."

The modified example min_test_modv1.F90 ( attached) shows no errors.

Here is the output:

mpiexec -n 1 ./a.out

 |- BLACS and DESC initialized

 |- Block cyclic mat with dim (and proc)   12  12   0

 |- Reference matrix diagonalized sequentially, using lapack

Intel(R) Math Kernel Library Version 2020.0.2 Product Build 20200624 for Intel(R) 64 architecture applications                                                                                         

 liwork         184        384

 info           0          0

 info           0          0

 |- diagonalised using SCALAPACK ...



Gennady_F_Intel
Moderator
176 Views

the modified test is attached

Gennady_F_Intel
Moderator
171 Views

This issue has been resolved and we will no longer respond to this thread. If you require additional assistance from Intel, please start a new thread. Any further interaction in this thread will be considered community only.