topic Hello Jim, in IntelĀ® oneAPI Math Kernel Library
https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/How-to-use-the-pardiso-for-partial-solution-with-correct-iparm/m-p/1159624#M27865
<P>Hello Jim,</P><P>1) (minor) First, looking at your code I see<BR />iparm(7) = 16 ! default logical fortran unit number for output<BR />doesn't agree with Intel MKL documentation (iparm[7] is the output iparm parameter which can give the number of iterative refinement steps performed). Hence, the question is whether you're actually intend to use Intel MKL PARDISO or some other solver with a similar interface?</P><P> 2) Second, you also have<BR />iparm(8) = 9 ! numbers of iterative refinement steps<BR />but the partial solve by its nature does not support iterative refinement. So, I believe due to this setting PARDISO actually performed a full solve.<BR />Could you please switch this iparm off (set iparm(8)=1) and see what happens? </P><P>Hope this helps!</P><P>Best,<BR />Kirill</P>Mon, 16 Sep 2019 19:29:11 GMTKirill_V_Intel2019-09-16T19:29:11ZHow to use the pardiso for partial solution with correct iparm(31) value?
https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/How-to-use-the-pardiso-for-partial-solution-with-correct-iparm/m-p/1159623#M27864
<P>Dear All</P><P>I am testing the example given in the MKL manual for pardiso with partial solution in Fortran.</P><P>As stated for iparm(31), when its value is 3, selected components of the solution vectors will be computed. However, I tried many times, with different perm values, iparm(31) values(=1, 2 or 3), and paramater locations, it always give the whole solution.</P><P>Since for my real problem(with thousands of DOF), only a few elements in rhs are nonzero and only a few selected components of the solution are needed. I have to realize the partial solution function to cut the time cost.</P><P>I hope you can help me. Thanks a lot.</P><P>The attachment is my fortran code.</P><P>Jim Cheng</P>Tue, 10 Sep 2019 09:36:32 GMThttps://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/How-to-use-the-pardiso-for-partial-solution-with-correct-iparm/m-p/1159623#M27864CHENG__JIM2019-09-10T09:36:32ZHello Jim,
https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/How-to-use-the-pardiso-for-partial-solution-with-correct-iparm/m-p/1159624#M27865
<P>Hello Jim,</P><P>1) (minor) First, looking at your code I see<BR />iparm(7) = 16 ! default logical fortran unit number for output<BR />doesn't agree with Intel MKL documentation (iparm[7] is the output iparm parameter which can give the number of iterative refinement steps performed). Hence, the question is whether you're actually intend to use Intel MKL PARDISO or some other solver with a similar interface?</P><P> 2) Second, you also have<BR />iparm(8) = 9 ! numbers of iterative refinement steps<BR />but the partial solve by its nature does not support iterative refinement. So, I believe due to this setting PARDISO actually performed a full solve.<BR />Could you please switch this iparm off (set iparm(8)=1) and see what happens? </P><P>Hope this helps!</P><P>Best,<BR />Kirill</P>Mon, 16 Sep 2019 19:29:11 GMThttps://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/How-to-use-the-pardiso-for-partial-solution-with-correct-iparm/m-p/1159624#M27865Kirill_V_Intel2019-09-16T19:29:11Z