- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi, we are testing the latest OneAPI 2025.0 and noted that our calculations (fortran code) for indefinite symmetric Poisson matrices are not being solved correctly either by Pardiso or cluster sparse solver. Now we just get a zero vector as solution regardless of the RHS provided.
These are solved correctly for OneAPI 2024.2.
Has something changed in the parameters needed to be input to deal with these matrices?
Thank you,
Marcos
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
We changed the behavior of iterative refinement (iparm(8)) in oneMKL 2025.0. In the sample code, right before entering phase 33, iparm(8) is set to 0. It will turn off the iterative refinement, while in prior releases, this setting will perform two steps of iterative refinement when there are perturbed pivots. So to get the same behavior as in 2024.2, you could change the value of iparm(8) from 0 to 2, or simply comment that line out.
Another finding is that if turning off scaling (iparm(11)) and matching (iparm(13)), similar results are also obtained, even with iparm(8)=0. But one potential issue here is that we might not expect all-zero solutions in this case, even with iparm(8)=0, iparm(11)=1 and iparm(13)=1. We are doing further investigation on this behavior.
Thanks,
Fengrui
Link Copied
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
This is a standalone reproducer of the bug using CLUSTER_SPARSE_SOLVER on a single MPI process and symmetric indefinite sparse matrix of size 64^2.
Follow the README in the tarball to compile and reproduce the issue with MKL 2025.0 in Linux. For sizes of matrices smaller then 2000^2 it gives a zero solution no matter what is the RHS.
The issue is seen in both PARDISO and CLUSTER_SPARSE_SOLVER in Windows and Linux with latest OneAPI 2025.0.1.
Please let us know if you can reproduce the issue.
Thank you,
Marcos
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi, has anyone been able to reproduce the issue with PARDISO/CPARDISO I posted? It is very important for us to get this sorted as it does affect our continuous integration process.
Thank you for your time!
Marcos
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi Marcos,
Thank you for posting in the forum!
I can reproduce this issue on my side. I will dig more into it and get back to you soon.
Thanks,
Fengrui
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Thank you Fengrui, let me know if you need anything else from us.
Regards,
Marcos
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
We changed the behavior of iterative refinement (iparm(8)) in oneMKL 2025.0. In the sample code, right before entering phase 33, iparm(8) is set to 0. It will turn off the iterative refinement, while in prior releases, this setting will perform two steps of iterative refinement when there are perturbed pivots. So to get the same behavior as in 2024.2, you could change the value of iparm(8) from 0 to 2, or simply comment that line out.
Another finding is that if turning off scaling (iparm(11)) and matching (iparm(13)), similar results are also obtained, even with iparm(8)=0. But one potential issue here is that we might not expect all-zero solutions in this case, even with iparm(8)=0, iparm(11)=1 and iparm(13)=1. We are doing further investigation on this behavior.
Thanks,
Fengrui
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Thank you Fengrui! Looks like that fixed the issue. It is interesting the having no iterative refinements IPARM(8)=0 gives the right solution for matrices over 2000 unknowns, but not for small matrices.
We'll run our CI tests tonight to do further testing.
Best,
Marcos
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Thank you Fengrui for your advice. Switching iparm(8) to 2 explicitly took care of the issue we were seeing with MKL 2025.
Let me know about the other behavior you are noting.
Best Regards,
Marcos
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
It's great that the issues are gone with the value change of iparm(8)!
We are still investigating the behavior that scaling and matching turning on and iterative refinement turning off would lead to trivial solution. We will update in this post once there is a conclusion.
Thanks,
Fengrui
- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page