-
Notifications
You must be signed in to change notification settings - Fork 55
Open
Description
ScaLAPACK Vendor: Intel MKL
MKL Version: 2025.1.0
Problem description
When performing Eigen decomposition on Matrizes bezond a cetrain size (starting at 137x137 on my system), the following error Message is written to stdout and no computation performed:
CTF ERROR: pysevx returned error code -25
Problem analysis
In function: void peigh(...)
In file: src/shared/lapack_symbs.cxx
starting on line: 891
- Two calls are made to
CTF_SCALAPACK::pheevx<dtype>(...)(the first is used to acquire the necessary buffer sizes, the second performs the actual computation) - ScaLAPACK Docs: Error/ info return code -25 indicates that parameter
LRWORK(in ctf code calledlwork) is too small - printing the values of
lworkandlcworkafter line 920 showed:- the error occurs if
lcwork < lwork
- the error occurs if
- manually increasing sizes of
lworkandlcworkin ctf code showed:- the size of
lworkis sufficient - inserting
lcwork = lcwork < lwork ? lwork : lcwork;in src/shared/lapack_symbs.cxx between lines 920 and 921 fixes the issue (this implies thatlcworkseems to be required to have at least as many elements aslwork, even if ScaLAPACK doesnt ask for it)
- the size of
Can someone reproduce this Error?
Files (remove .txt ending, GitHub wont let me upload cpp/cxx files):
- lapack_symbs.cxx.txt with debug print message to reproduce and potential fix (commented)
- main.cpp.txt Test code to reproduce issue
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels