<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Help with the Intel MKL interface to PARDISO in Intel® oneAPI Math Kernel Library</title>
    <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Help-with-the-Intel-MKL-interface-to-PARDISO/m-p/828784#M5381</link>
    <description>Hi Alberto,&lt;DIV&gt;Pardiso is direct solver based on LU decomposition with global reordering of initial matrix. In your case you want to set specific reordering to PARDISO so it could be implemented by 2 variants:&lt;/DIV&gt;&lt;DIV&gt;1. Use own perm vector by set iparm[4]=1&lt;/DIV&gt;&lt;DIV&gt;2. Use partial solve by set iparm[30] = 1&lt;/DIV&gt;&lt;DIV&gt;Nevertheless using this parameters could decrease performance and increase internal memory size of PARDISO so I strongly recommend you just factorize by pardiso 2 different matrix: A_II and full initial matrix.&lt;/DIV&gt;&lt;DIV&gt;With best regards,&lt;/DIV&gt;&lt;DIV&gt;Alexander Kalinkin&lt;/DIV&gt;</description>
    <pubDate>Sun, 18 Sep 2011 03:04:46 GMT</pubDate>
    <dc:creator>Alexander_K_Intel2</dc:creator>
    <dc:date>2011-09-18T03:04:46Z</dc:date>
    <item>
      <title>Help with the Intel MKL interface to PARDISO</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Help-with-the-Intel-MKL-interface-to-PARDISO/m-p/828783#M5380</link>
      <description>&lt;PRE&gt;Dear Intel MKL experts, &lt;BR /&gt;&lt;BR /&gt;I would like to ask for help with the use&lt;BR /&gt;of the Intel MKL interface to PARDISO.&lt;BR /&gt;&lt;BR /&gt;Assume that you have a sparse matrix&lt;BR /&gt;A partitioned into 2x2 blocks&lt;BR /&gt;&lt;BR /&gt;A=    [ A_II A_IG ]&lt;BR /&gt;        [ A_GI A_GG ],&lt;BR /&gt;&lt;BR /&gt;and that you want to solve linear systems&lt;BR /&gt;with A and A_II using only one sparse LU&lt;BR /&gt;decomposition of the global system A:&lt;BR /&gt;&lt;BR /&gt;A = [L_II        0] [U_II U_IG]&lt;BR /&gt;      [L_GI L_GG] [0    U_GG]&lt;BR /&gt;&lt;BR /&gt;Neglecting pivoting for numerical&lt;BR /&gt;stability, the solution of linear systems&lt;BR /&gt;of the form A_II x_I = b_I can be performed&lt;BR /&gt;as follows:&lt;BR /&gt;&lt;BR /&gt;1) Solve [L_II        0] [y_I]  = [b_I]&lt;BR /&gt;             [L_GI L_GG] [y_G] = [ * ]&lt;BR /&gt;&lt;BR /&gt;2) Y_G &amp;lt;- 0&lt;BR /&gt;&lt;BR /&gt;3) Solve [U_II U_IG] [  x_I  ] = [y_I]&lt;BR /&gt;             [0    U_GG] [ x_G=0 ] = [ 0 ]&lt;BR /&gt;&lt;BR /&gt;This algorithm can be implemented with&lt;BR /&gt;the Intel MKL interface of PARDISO because&lt;BR /&gt;it allows to separate among forward and&lt;BR /&gt;backward substitution, so that you can&lt;BR /&gt;zero-out Y_G between steps 1 and 3. The problem&lt;BR /&gt;that I have is that this workaround&lt;BR /&gt;is no longer valid when numerical pivoting enters the scene&lt;BR /&gt;(for example, with symmetric indefinite matrices)&lt;BR /&gt;&lt;BR /&gt;Do you know whether there is a simple strategy&lt;BR /&gt;to tell PARDISO to restrict numerical pivoting&lt;BR /&gt;to a particular block (i.e., A_II) or otherwise&lt;BR /&gt;to tell PARDISO to solve a subblock given a&lt;BR /&gt;global LU factorization of the global system ?.&lt;BR /&gt;I want to avoid to compute both a factorization&lt;BR /&gt;of A_II and A.&lt;BR /&gt;&lt;BR /&gt;Thanks a lot for your help.&lt;BR /&gt;&lt;BR /&gt;Best regards,&lt;BR /&gt;  Alberto.&lt;BR /&gt;&lt;/PRE&gt;</description>
      <pubDate>Sat, 17 Sep 2011 09:18:09 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Help-with-the-Intel-MKL-interface-to-PARDISO/m-p/828783#M5380</guid>
      <dc:creator>left_looking</dc:creator>
      <dc:date>2011-09-17T09:18:09Z</dc:date>
    </item>
    <item>
      <title>Help with the Intel MKL interface to PARDISO</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Help-with-the-Intel-MKL-interface-to-PARDISO/m-p/828784#M5381</link>
      <description>Hi Alberto,&lt;DIV&gt;Pardiso is direct solver based on LU decomposition with global reordering of initial matrix. In your case you want to set specific reordering to PARDISO so it could be implemented by 2 variants:&lt;/DIV&gt;&lt;DIV&gt;1. Use own perm vector by set iparm[4]=1&lt;/DIV&gt;&lt;DIV&gt;2. Use partial solve by set iparm[30] = 1&lt;/DIV&gt;&lt;DIV&gt;Nevertheless using this parameters could decrease performance and increase internal memory size of PARDISO so I strongly recommend you just factorize by pardiso 2 different matrix: A_II and full initial matrix.&lt;/DIV&gt;&lt;DIV&gt;With best regards,&lt;/DIV&gt;&lt;DIV&gt;Alexander Kalinkin&lt;/DIV&gt;</description>
      <pubDate>Sun, 18 Sep 2011 03:04:46 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Help-with-the-Intel-MKL-interface-to-PARDISO/m-p/828784#M5381</guid>
      <dc:creator>Alexander_K_Intel2</dc:creator>
      <dc:date>2011-09-18T03:04:46Z</dc:date>
    </item>
  </channel>
</rss>

