Access violation error when calling PARDISO

Access violation error when calling PARDISO

Hi folks;

I'm using PARDISO routine as my sparse solver in my code and it works fine. However, when I try to use it for matrices with more than 150,000 non-zero elements (for example a 15,000x15,000 matrix) the program stops running with access violation error!
I had this problem before, and it turned out that the structure of my sparse matrix had some problem. However, I'm pretty sure that this time my matrix is OK.

My system is : intel XEON, windows 64bit (but my code platform is win32), VS2008, MKL 10.1.2.026

Any ideas?
Thanks in advance
Hossein

7 posts / 0 new
Last post
For more complete information about compiler optimizations, see our Optimization Notice.

Dear Hossein,

Thank you for this question. The problem you described is very strange. PARDISO successfully solves the tasks with more than 100 millions of non-zeroes elements in input matrices. In order to be sure that your matrix is correct, please set iparm(27) = 1 (matrix checker). In any case, could you describe your task more detail? Namely, type of the matrix you solved, stage where this problem occurred (reordering, factorization or solving step), number of threads, PARDISO mode - In-Core or Out-of-Core?

- Sergey

Quoting - Sergey Pudov (Intel)

Dear Hossein,

Thank you for this question. The problem you described is very strange. PARDISO successfully solves the tasks with more than 100 millions of non-zeroes elements in input matrices. In order to be sure that your matrix is correct, please set iparm(27) = 1 (matrix checker). In any case, could you describe your task more detail? Namely, type of the matrix you solved, stage where this problem occurred (reordering, factorization or solving step), number of threads, PARDISO mode - In-Core or Out-of-Core?

- Sergey

Sergey is right, definitely size is not an issue here. I guess some index out range or not allocated matrix/component thing. Set (if you didn't do it already) Project->properties->Fortran->Run-time-> Runtime error checking set to All.

A.

Quoting - Sergey Pudov (Intel)

Dear Hossein,

Thank you for this question. The problem you described is very strange. PARDISO successfully solves the tasks with more than 100 millions of non-zeroes elements in input matrices. In order to be sure that your matrix is correct, please set iparm(27) = 1 (matrix checker). In any case, could you describe your task more detail? Namely, type of the matrix you solved, stage where this problem occurred (reordering, factorization or solving step), number of threads, PARDISO mode - In-Core or Out-of-Core?

- Sergey

Dear Sergey;

I did what you said about iparm(27), the result was puzzling for me. For the first input data, the program stopped in the first iteration with error=-7 (diagonal matrix problem). The second input data had no error! However, the results was not reasonable! I tried some other inputs, and most of them resulted in the old error: access violation.

By the way, I use in-core mode and one thread, my matrix is symmetric and positive-definite. The problem occurs at phase 13.

Hossein

Hossein,
We couldn't reproduce the problem.
Could you please get us the test case? That will help us to reproduce this problem more quickly.
--Gennady

Quoting - Gennady Fedorov (Intel)

Hossein,
We couldn't reproduce the problem.
Could you please get us the test case? That will help us to reproduce this problem more quickly.
--Gennady

Gennady,
I've put the necessary files in the folder LCPM.

Thanks for your help

Hossein,
I have no idea what does LCPM stand for :)
and I see no files attached into this thread.
--Gennady

Leave a Comment

Please sign in to add a comment. Not a member? Join today