Auto-suggest helps you quickly narrow down your search results by suggesting possible matches as you type.

Showing results for

- Intel Community
- Software Development SDKs and Libraries
- Intel® oneAPI Math Kernel Library & Intel® Math Kernel Library
- A quick question on using PARDISO as iterative solver

- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Mute
- Printer Friendly Page

Highlighted
##

chen146

Beginner

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content

05-30-2013
09:34 PM

34 Views

A quick question on using PARDISO as iterative solver

Hello,

I am trying to follow the example described in this thread to use PARDISO as an iterative solver,

http://software.intel.com/en-us/forums/topic/326721

For now my code works fine if I put iparm(4)=0 and phase=13 for all matrices, but when I modify the code to use the template above, error message appears sometimes (error=-1 in the numerical factorization phase), so I think I must did something wrong. To clarify it, is it correct for me to do the following for A_i x_i = b_i, where the right-hand-side b_i is determined by x_i through some other subroutines (it is a self-consistent calculation),

----------------------------

pt=0

call PARDISO (phase=13, iparm(4)=0, A_1, pt, maxfct, mnum=1, x_1, b_1)

do while ( error > tolerance )

do i = 1, maxfct

call PARDISO (phase=23, iparm(4)=61, A_i, pt, maxfct, mnum=i, x_i, b_i)

end do

call subroutine to calculate new b_i from the x_i, and calculate the error

end do

call PARDISO (phase=-1, iparm(4)=61, A_1, pt, maxfct, mnum=1, x_1, b_1)

----------------------------

Just for reference, the other iparm parameters I am using are (these should be the same as the example file pardiso_unsym_complex_f.f ):

iparm(1) = 1

iparm(2) = 2

iparm(3) = 1

iparm(8) = 2

iparm(10) = 13

iparm(11) = 1

iparm(13) = 1

iparm(18) = -1

iparm(19) = -1

, and others are set to be zero. The matrix type is mtype=3 (complex strucuturely-symmetric)

By the way, I can not see any example code for using Pardiso as iterative solver in the MKL package. The examples codes I found are using Pardiso as direct solver. Did I missout something or there is no example code for this kind of applications? Thank you and I appreciate it.

Best regards,

CC

4 Replies

Highlighted
##

Gennady_F_Intel

Moderator

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content

06-01-2013
07:58 AM

34 Views

yes, that's right. there is no such example. do you believe to add such example will make a sence?

Highlighted
##

Thanks for your reply. Yes, I have seen several questions on the forum for the similar question, so I think it will be great to have a example code to help us to learn about this. There is one exmaple in the PARDISO manual (the original PARDISO, not the MKL PARDISO), but still I will be happy to see a example provided by INTEL, since PARDISO is not totally the same as MKL PARDISO.

chen146

Beginner

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content

06-02-2013
07:17 PM

34 Views

Highlighted
##

OK. The request is escalated. i will let you know when the example would be added into one of the future updates/releases.

Gennady_F_Intel

Moderator

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content

06-03-2013
10:07 AM

34 Views

Highlighted
##

OK. The request is escalated. i will let you know when the example would be added into one of the future updates/releases.

Gennady_F_Intel

Moderator

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content

06-03-2013
10:07 AM

34 Views

For more complete information about compiler optimizations, see our Optimization Notice.