Page 1 of 1

error encounter while linking essl on IBM!

Posted: Wed Feb 02, 2005 2:19 pm
by jason
Hi,


recently, I am trying to port VASP on our IBM power4 farm, I used to
compiled VASP based on vasp.lib which wrapped several lapack routines and
didnt have leading dimension error before. However, when alternate using
ESSL and add extra option flags -Dessl to the CPP preprocessor, testing
job have fail with the following error msg:

-----------------------------------------------------------------------------
DGEGV : 2538-2029
The job option argument (ARG NO. 1) must be 0 or 1.

DGEGV : 2538-2006
The number of rows (ARG NO. 10) of a matrix must be less than or equal
to the size of the leading dimension (ARG NO. 3) of its array.

DGEGV : 2538-2006
The number of rows (ARG NO. 10) of a matrix must be less than or equal
to the size of the leading dimension (ARG NO. 5) of its array.

DGEGV : 2538-2099
End of input argument error reporting. For more information, refer to
Engineering and Scientific Subroutine Library Guide and Reference
(SA22-7272).

DGEGV : 2538-2604
Execution terminating due to error count for error number 2099.

DGEGV : 2538-2605
Message summary: 2006 - 2

DGEGV : 2538-2605
Message summary: 2029 - 1

DGEGV : 2538-2605
Message summary: 2099 - 1
-----------------------------------------------------------------------------

next time, I tried to dump the maxit from vasp and check if leading dimension of dynamical allocated array do larger than maxit but fails into another essl error.

I am wondering why alternate linking essl could bring lots of errors that are not encountered before (I used to link vasp.lib).

Thanks in advance.


BR,
J

error encounter while linking essl on IBM!

Posted: Tue Feb 22, 2005 3:27 pm
by admin
The reason for that error is that the calling sequence of the parameters is different in the
ESSL-version of some library routines, including DGEGV. Calls to DGEGV are in
subroutines broyden and dynbr.
If you want to use the ESSL library, please
set
#define essl
in the .F files and recompile to guarantee the calls will be done with the appropriate sequence
of calling parameters.