Intel® oneAPI Math Kernel Library
Ask questions and share information with other developers who use Intel® Math Kernel Library.
7086 Discussions

PARDISO ( sequence_ido,parameters) error_num= 31

habanero
Beginner
596 Views
I compiled my app with the newest version of MKL (10.3.8.1) and Intel C++ Compiler XE 12.1 for Windows (64bit). My app generates the following error in PARDISO.

With MKL Version 10.3.8.1:

*** Error in PARDISO ( sequence_ido,parameters) error_num= 31
*** Input check: Two-level factorization algorithm does not work in OOC mode.

If I copy the old MKL DLLs (10.3.4.1) into the program folder, with the same app, it works. Any suggestions?

With MKL Version 10.3.4.1:

The file .\\pardiso_ooc.cfg was not opened

=== PARDISO is running in Out-Of-Core mode, because iparam(60)=1 and there is not enough RAM for In-Core ===


================ PARDISO: solving a real nonsymmetric system ================
The local (internal) PARDISO version is : 103000115
0-based array is turned ON
PARDISO double precision computation is turned ON
METIS algorithm at reorder step is turned ON
Task does not fit RAM, OOC NLL factorization algorithm is turned ON
Scaling is turned ON
Matching is turned ON


Summary: ( reordering phase )
================

Times:
======
Time spent in calculations of symmetric matrix portrait(fulladj): 0.077612 s
Time spent in reordering of the initial matrix(reorder) : 2.763583 s
Time spent in symbolic factorization(symbfct) : 1.088499 s
Time spent in data preparations for factorization(parlist) : 1.011271 s
Time spent in allocation of internal data structures(malloc) : 0.511346 s
Time spent in additional calculations : 4.108413 s
Total time spent : 9.560724 s

Statistics:
===========
< Parallel Direct Factorization with #processors: > 4
< Numerical Factorization with BLAS3 and O(n) synchronization >

< Linear system Ax = b>
#equations: 262701
#non-zeros in A: 3614742
non-zeros in A (): 0.005238

#right-hand sides: 1

< Factors L and U >
#columns for each panel: 96
#independent subgraphs: 0
< Preprocessing with state of the art partitioning metis>
#supernodes: 130123
size of largest supernode: 4946
number of nonzeros in L 139898411
number of nonzeros in U 133551150
number of nonzeros in L+U 273449561


Settings:
iparm[0] = 1;
iparm[1] = 2;
iparm[2] = 0;
iparm[3] = 0;
iparm[4] = 0;
iparm[5] = 0;
iparm[6] = 0;
iparm[7] = 2;
iparm[8] = 0;
iparm[9] = 13;
iparm[10] = 1;
iparm[11] = 0;
iparm[12] = 1;
iparm[13] = 0;
iparm[14] = 0;
iparm[15] = 0;
iparm[16] = 0;
iparm[17] = 0;
iparm[18] = 0;
iparm[19] = 0;
iparm[23] = 1;
iparm[24] = 1;
iparm[26] = 1;
iparm[27] = 1;
iparm[34] = 1;
iparm[59] = 1;
0 Kudos
1 Reply
Gennady_F_Intel
Moderator
596 Views

Between update 4 and 8 we slightly changed the behavior of solver with OOC mode.

In the case if PARDISO run in OOC mode then two-level factorization algorithm is not supported ( see note into documentation)

In your case you choose hybrid mode but for your inputs, the available RAM is not sufficient, therefore PARISO automatically switch to OOC mode.

- Increase RAM or

- Change parallel factorization algorithm as default for example

--Gennady

0 Kudos
Reply