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

pardiso: exception when solving linear system with mkl_sequential

Alexey1978
New Contributor I
613 Views

I have the linear system Ax=b which solve using mkl pardiso

Number of nonzeros in factors = 697828

Number of factorization MFLOPS = 593

 

It works well and correct. The system is sparse around main diagonal. But when I add additional subdiagonals far left and ar far right from main diagonal, then I have an error when calling function  PARDISO (pt, &maxfct, &mnum, &mtype, &phase,
&n, a, ia, ja, &idum, &nrhs, iparm, &msglvl, &ddum, &ddum, &error);

"Exception at 0x7ffd4633ff10, code: 0xc0000005: write access violation at: 0xf, flags=0x0 (first chance)"

 

Debug:

1 mkl_pds_lp64_zsytrs_bklbw_pardiso mkl_core_1 0x7ffd4633ff10
2 mkl_pds_lp64_zsytrs_bklbw_pardiso mkl_core_1 0x7ffd45dde773
3 mkl_pds_lp64_zsytrs_bklbw_pardiso mkl_core_1 0x7ffd45ddab62
4 mkl_pds_lp64_metis_mlevelnodebisectionmultiple mkl_core_1 0x7ffd45a5283f
5 mkl_pds_lp64_metis_mlevelnesteddissection_pardiso mkl_sequential_1 0x7ffd602e5767
6 mkl_pds_lp64_metis_mlevelnesteddissection_pardiso mkl_sequential_1 0x7ffd602e5915
7 mkl_pds_lp64_metis_splitgraphorder mkl_core_1 0x7ffd45a53d8b
8 mkl_pds_lp64_zsytrs_bklbw_pardiso mkl_core_1 0x7ffd46372b74
9 mkl_pds_lp64_zsytrs_bklbw_pardiso mkl_core_1 0x7ffd4633df19
10 mkl_pds_lp64_zsytrs_bklbw_pardiso mkl_core_1 0x7ffd45dd52bf
11 mkl_pds_lp64_pardiso mkl_core_1 0x7ffd45a6087b

 

 

Iparam:

iparm[0] = 1; /* No solver default */
iparm[1] = 2; /* Fill-in reordering from METIS */
iparm[3] = 0; /* No iterative-direct algorithm */
iparm[4] = 0; /* No user fill-in reducing permutation */
iparm[5] = 0; /* Write solution into x */
iparm[6] = 0; /* Not in use */
iparm[7] = 2; /* Max numbers of iterative refinement steps */
iparm[8] = 0; /* Not in use */
iparm[9] = 13; /* Perturb the pivot elements with 1E-13 */
iparm[10] = 1; /* Use nonsymmetric permutation and scaling MPS */
iparm[11] = 0; /* Conjugate transposed/transpose solve */
iparm[12] = 1; /* Maximum weighted matching algorithm is switched-on (default for non-symmetric) */
iparm[13] = 0; /* Output: Number of perturbed pivots */
iparm[14] = 0; /* Not in use */
iparm[15] = 0; /* Not in use */
iparm[16] = 0; /* Not in use */
iparm[17] = -1; /* Output: Number of nonzeros in the factor LU */
iparm[18] = -1; /* Output: Mflops for LU factorization */
iparm[19] = 0; /* Output: Numbers of CG Iterations */
//iparm[20] = 0;

//iparm[23]=0;

maxfct = 1; /* Maximum number of numerical factorizations. */
mnum = 1; /* Which factorization to use. */

 

Software: MSVC2019, QT 5.15, win 10 x64, mkl 2021.3.0

 

Thanks

 

 

 

 

0 Kudos
1 Solution
ArpitaP_Intel
Moderator
558 Views

Thanks a lot Kirill.


Hi Alexey,


If this resolves your issue, make sure to accept this as a solution. This would help others with similar issue.


Thanks!



View solution in original post

4 Replies
Kirill_V_Intel
Employee
591 Views

Hi Alexey,

Please turn on matrix checker (iparm[26]=1). It is very likely that something is not right about the matrix pattern (ia, ja). Also check that the indexing and matrix type is set right for the input matrix (e.g., for symmetric matrix types like -2 one needs to pass only the upper triangular part of the matrix). 
In case you get no new insight into the problem, please share with us a reproducer.

 

Best,
Kirill

Alexey1978
New Contributor I
567 Views

Thank you very much. You are absolutely right.

With help of iparm[26]=1 the problem was solved.

 

Alexey.

ArpitaP_Intel
Moderator
559 Views

Thanks a lot Kirill.


Hi Alexey,


If this resolves your issue, make sure to accept this as a solution. This would help others with similar issue.


Thanks!



ArpitaP_Intel
Moderator
541 Views

Hi Alexey,


Thanks for the confirmation and glad to know that your issue is resolved. If you need any additional information, please post a new question as this thread will no longer be monitored by Intel.


Thanks!


Reply