<?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 Hi, in Intel® oneAPI Math Kernel Library</title>
    <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Problem-in-subsequent-calls-to-PARDISO-MKL/m-p/923535#M13211</link>
    <description>&lt;P&gt;Hi,&lt;/P&gt;

&lt;P&gt;Thanks for your message. I solve the Laplace equation to study a discrete&amp;nbsp;fuse network. And every time the current in a fuse reaches a threshold you remove it from the system. So you start with &amp;nbsp;the discrete Laplace equation and it becomes something else due to breaking of the fuses during external&amp;nbsp;loading (applied voltage).&amp;nbsp;&lt;/P&gt;

&lt;P&gt;However, I solved the problem. The code crashes if you use METIS&amp;nbsp; which is default for non symetric matrices instead of&amp;nbsp;&amp;lt; Preprocessing with multiple minimum degree, tree height &amp;gt;. Basically, I used &amp;nbsp;iparm(2) = 0 in Fortran. &amp;nbsp;I also think that one should check&amp;nbsp;iparm(13) but I didnot test.&amp;nbsp;&lt;/P&gt;

&lt;P&gt;As I mentioned before, if&amp;nbsp;I relaunch the code with the Matrix that crashed it, it is working correctly again when iparm(2) = 2 until it crashes again&amp;nbsp;. So I am pretty sure there is an internal memory problem in the Intel Pardiso METIS&lt;/P&gt;

&lt;P&gt;&amp;nbsp;&lt;/P&gt;

&lt;P&gt;All the Best&lt;/P&gt;

&lt;P&gt;&amp;nbsp;&lt;/P&gt;

&lt;P&gt;&amp;nbsp;&lt;/P&gt;

&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
    <pubDate>Sat, 30 Nov 2013 23:06:26 GMT</pubDate>
    <dc:creator>OGUZ_UMUT_S_</dc:creator>
    <dc:date>2013-11-30T23:06:26Z</dc:date>
    <item>
      <title>Problem in subsequent calls to PARDISO MKL</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Problem-in-subsequent-calls-to-PARDISO-MKL/m-p/923533#M13209</link>
      <description>&lt;P&gt;I am using INTEL MKL PARDISO to solve Laplace equation. However, the Matrix becomes more sparse every time I call PARDISO due to my physical problem. PARDISO works perfectly fine until it fails at the stage&amp;nbsp;phase = 11. I was thinking it was because of the very sparse shape of the MATRIX after some iterations. Afterwards, I saved the MATRIX for which the PARDISO failed and I re-used my program with the last MATRIX that I saved and PARDISO&amp;nbsp;works again perfectly fine until it fails after a random number of calls. It may be 1000 calls or more or less.&amp;nbsp;&lt;/P&gt;

&lt;P&gt;&amp;nbsp;&lt;/P&gt;

&lt;P&gt;Is there any known issue about that ?&amp;nbsp;&lt;/P&gt;

&lt;P&gt;&amp;nbsp;&lt;/P&gt;

&lt;P&gt;&amp;nbsp;&lt;/P&gt;

&lt;P&gt;Thanks&lt;/P&gt;

&lt;P&gt;&amp;nbsp;&lt;/P&gt;

&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Thu, 28 Nov 2013 23:20:45 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Problem-in-subsequent-calls-to-PARDISO-MKL/m-p/923533#M13209</guid>
      <dc:creator>OGUZ_UMUT_S_</dc:creator>
      <dc:date>2013-11-28T23:20:45Z</dc:date>
    </item>
    <item>
      <title>Quote: However, the Matrix</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Problem-in-subsequent-calls-to-PARDISO-MKL/m-p/923534#M13210</link>
      <description>&lt;P&gt;&lt;/P&gt;&lt;BLOCKQUOTE&gt;&lt;SPAN style="font-family: Arial, Helvetica, sans-serif; font-size: 12px; line-height: 12px;"&gt;&amp;nbsp;However, the Matrix becomes more sparse every time I call PARDISO due to my physical problem&lt;/SPAN&gt;&lt;/BLOCKQUOTE&gt;&lt;P&gt;&lt;/P&gt;

&lt;P&gt;&lt;SPAN style="font-family: Arial, Helvetica, sans-serif; font-size: 12px; line-height: 12px;"&gt;That does not strike me as being reasonable. If you are solving the Laplace equation, and you are not changing the domain, grid and nature of the boundary conditions, you should be able to do the factorization once and repeat the solution phase any number of times. I suspect that you are either not calling Pardiso in the correct sequence or you are not calling with the correct parameters.&lt;/SPAN&gt;&lt;/P&gt;

&lt;P&gt;&lt;SPAN style="font-family: Arial, Helvetica, sans-serif; font-size: 12px; line-height: 12px;"&gt;If you need to troubleshoot your issues further, you should provide a working example that exhibits the behavior that you described. If you make repeated calls with phase=11, you need to issue calls with phase=0&amp;nbsp;or phase = -1 in order to free up memory that is no longer needed or used.&lt;/SPAN&gt;&lt;/P&gt;

&lt;P&gt;&lt;SPAN style="font-family: Arial, Helvetica, sans-serif; font-size: 12px; line-height: 12px;"&gt;Olaf Schenk provides an example C code at&amp;nbsp;&lt;/SPAN&gt;&lt;A href="http://pardiso-project.org/index.php?p=manual"&gt;http://pardiso-project.org/index.php?p=manual&lt;/A&gt;&amp;nbsp;for solving the Laplace equation. I modified the code to run with the&amp;nbsp;MKL&amp;nbsp;version of Pardiso using zero-based indexing (see attached file; you will also need the file laplace.h from the Pardiso&amp;nbsp;examples download page). The program solves the Laplace equation and checks that the residuals (the elements of the vector A x - b) are all less than 10&lt;SUP&gt;-10&lt;/SUP&gt;th of the norm of b, Running with a 100 X 100 grid (about 10,000 unknowns, &amp;nbsp;30,000 nonzero entries in the symmetric matrix), with 10,000 sets of right hand sides gave me the following results.&lt;/P&gt;

&lt;P&gt;S:\lang\Pard&amp;gt;laplace 100 100 100&lt;BR /&gt;
	n, nnz = 10000, 29800&lt;/P&gt;

&lt;P&gt;Reordering completed ...&lt;BR /&gt;
	Number of nonzeros in factors &amp;nbsp;= 219383&lt;BR /&gt;
	Number of factorization MFLOPS = 14&lt;BR /&gt;
	Factorization completed ...&lt;BR /&gt;
	Factorization time &amp;nbsp; 0.298&lt;BR /&gt;
	Step &amp;nbsp; 10, solution time = &amp;nbsp; 1.770&lt;BR /&gt;
	Step &amp;nbsp; 20, solution time = &amp;nbsp; 1.160&lt;BR /&gt;
	Step &amp;nbsp; 30, solution time = &amp;nbsp; 0.955&lt;BR /&gt;
	Step &amp;nbsp; 40, solution time = &amp;nbsp; 0.804&lt;BR /&gt;
	Step &amp;nbsp; 50, solution time = &amp;nbsp; 0.701&lt;BR /&gt;
	Step &amp;nbsp; 60, solution time = &amp;nbsp; 0.698&lt;BR /&gt;
	Step &amp;nbsp; 70, solution time = &amp;nbsp; 0.716&lt;BR /&gt;
	Step &amp;nbsp; 80, solution time = &amp;nbsp; 0.729&lt;BR /&gt;
	Step &amp;nbsp; 90, solution time = &amp;nbsp; 0.736&lt;BR /&gt;
	Step &amp;nbsp;100, solution time = &amp;nbsp; 0.712&lt;/P&gt;

&lt;P&gt;I made runs using (i) the current 32-bit versions of Intel C (14.0.0.103) and MKL 11, and (ii) the 64-bit versions of MS C V.17 and MKL&amp;nbsp;10.3.2.154.&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Sat, 30 Nov 2013 15:06:00 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Problem-in-subsequent-calls-to-PARDISO-MKL/m-p/923534#M13210</guid>
      <dc:creator>mecej4</dc:creator>
      <dc:date>2013-11-30T15:06:00Z</dc:date>
    </item>
    <item>
      <title>Hi,</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Problem-in-subsequent-calls-to-PARDISO-MKL/m-p/923535#M13211</link>
      <description>&lt;P&gt;Hi,&lt;/P&gt;

&lt;P&gt;Thanks for your message. I solve the Laplace equation to study a discrete&amp;nbsp;fuse network. And every time the current in a fuse reaches a threshold you remove it from the system. So you start with &amp;nbsp;the discrete Laplace equation and it becomes something else due to breaking of the fuses during external&amp;nbsp;loading (applied voltage).&amp;nbsp;&lt;/P&gt;

&lt;P&gt;However, I solved the problem. The code crashes if you use METIS&amp;nbsp; which is default for non symetric matrices instead of&amp;nbsp;&amp;lt; Preprocessing with multiple minimum degree, tree height &amp;gt;. Basically, I used &amp;nbsp;iparm(2) = 0 in Fortran. &amp;nbsp;I also think that one should check&amp;nbsp;iparm(13) but I didnot test.&amp;nbsp;&lt;/P&gt;

&lt;P&gt;As I mentioned before, if&amp;nbsp;I relaunch the code with the Matrix that crashed it, it is working correctly again when iparm(2) = 2 until it crashes again&amp;nbsp;. So I am pretty sure there is an internal memory problem in the Intel Pardiso METIS&lt;/P&gt;

&lt;P&gt;&amp;nbsp;&lt;/P&gt;

&lt;P&gt;All the Best&lt;/P&gt;

&lt;P&gt;&amp;nbsp;&lt;/P&gt;

&lt;P&gt;&amp;nbsp;&lt;/P&gt;

&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Sat, 30 Nov 2013 23:06:26 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Problem-in-subsequent-calls-to-PARDISO-MKL/m-p/923535#M13211</guid>
      <dc:creator>OGUZ_UMUT_S_</dc:creator>
      <dc:date>2013-11-30T23:06:26Z</dc:date>
    </item>
    <item>
      <title>Here are results I have with</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Problem-in-subsequent-calls-to-PARDISO-MKL/m-p/923536#M13212</link>
      <description>&lt;P&gt;&lt;SPAN style="font-size: 1em; line-height: 1.5;"&gt;Here are results I have with the latest version 11.1 . Windows, 64 bit. &lt;/SPAN&gt;&lt;/P&gt;

&lt;P&gt;n, nnz = 10000, 29800&lt;/P&gt;

&lt;P&gt;&lt;STRONG&gt;&amp;nbsp;iparm(2) == 0&lt;/STRONG&gt;&lt;/P&gt;

&lt;P&gt;Reordering completed ...&lt;BR /&gt;
	Number of nonzeros in factors &amp;nbsp;= 203391&lt;BR /&gt;
	Number of factorization MFLOPS = 12&lt;BR /&gt;
	Factorization completed ...&lt;BR /&gt;
	Factorization time &amp;nbsp; 0.143&lt;BR /&gt;
	Step &amp;nbsp; 10, solution time = &amp;nbsp; 1.452&lt;BR /&gt;
	Step &amp;nbsp; 20, solution time = &amp;nbsp; 1.421&lt;BR /&gt;
	Step &amp;nbsp; 30, solution time = &amp;nbsp; 1.293&lt;BR /&gt;
	Step &amp;nbsp; 40, solution time = &amp;nbsp; 1.284&lt;BR /&gt;
	Step &amp;nbsp; 50, solution time = &amp;nbsp; 1.290&lt;BR /&gt;
	Step &amp;nbsp; 60, solution time = &amp;nbsp; 1.281&lt;BR /&gt;
	Step &amp;nbsp; 70, solution time = &amp;nbsp; 1.304&lt;BR /&gt;
	Step &amp;nbsp; 80, solution time = &amp;nbsp; 1.340&lt;BR /&gt;
	Step &amp;nbsp; 90, solution time = &amp;nbsp; 1.287&lt;BR /&gt;
	Step &amp;nbsp;100, solution time = &amp;nbsp; 1.409&lt;BR /&gt;
	Press any key to continue . . .&lt;/P&gt;

&lt;P&gt;+++++++++++++++++++++&lt;/P&gt;

&lt;P&gt;n, nnz = 10000, 29800&lt;/P&gt;

&lt;P&gt;&lt;STRONG&gt;&amp;nbsp;iparm(2) == 2&lt;/STRONG&gt;&lt;/P&gt;

&lt;P&gt;Reordering completed ...&lt;BR /&gt;
	Number of nonzeros in factors &amp;nbsp;= 219383&lt;BR /&gt;
	Number of factorization MFLOPS = 14&lt;BR /&gt;
	Factorization completed ...&lt;BR /&gt;
	Factorization time &amp;nbsp; 0.180&lt;BR /&gt;
	Step &amp;nbsp; 10, solution time = &amp;nbsp; 1.241&lt;BR /&gt;
	Step &amp;nbsp; 20, solution time = &amp;nbsp; 1.362&lt;BR /&gt;
	Step &amp;nbsp; 30, solution time = &amp;nbsp; 1.244&lt;BR /&gt;
	Step &amp;nbsp; 40, solution time = &amp;nbsp; 1.219&lt;BR /&gt;
	Step &amp;nbsp; 50, solution time = &amp;nbsp; 1.261&lt;BR /&gt;
	Step &amp;nbsp; 60, solution time = &amp;nbsp; 1.212&lt;BR /&gt;
	Step &amp;nbsp; 70, solution time = &amp;nbsp; 1.252&lt;BR /&gt;
	Step &amp;nbsp; 80, solution time = &amp;nbsp; 1.339&lt;BR /&gt;
	Step &amp;nbsp; 90, solution time = &amp;nbsp; 1.212&lt;BR /&gt;
	Step &amp;nbsp;100, solution time = &amp;nbsp; 3.467&lt;BR /&gt;
	Press any key to continue . . .&lt;/P&gt;

&lt;P&gt;&amp;nbsp;&lt;/P&gt;

&lt;P&gt;&lt;SPAN style="font-size: 1em; line-height: 1.5;"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;

&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Sun, 01 Dec 2013 08:30:49 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Problem-in-subsequent-calls-to-PARDISO-MKL/m-p/923536#M13212</guid>
      <dc:creator>Gennady_F_Intel</dc:creator>
      <dc:date>2013-12-01T08:30:49Z</dc:date>
    </item>
    <item>
      <title>Hello,</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Problem-in-subsequent-calls-to-PARDISO-MKL/m-p/923537#M13213</link>
      <description>&lt;P&gt;Hello,&lt;/P&gt;

&lt;P&gt;You are solving the Laplace equation which has a symmetric matrix. In my case I start with the Laplace equation as a discrete fuse model. When the current on a fuse reaches a threshold due to voltage loading on the top boundary, you remove the fuse from the system. Therefore, the matrix &amp;nbsp;becomes non symmetric.&amp;nbsp;&lt;/P&gt;

&lt;P&gt;&amp;nbsp;&lt;/P&gt;

&lt;P&gt;Using &amp;nbsp;iparm(2) = 0, the issue has been solved. But it persists with iparm(2) =2 thta uses&amp;nbsp;METIS algorithm. As I mentioned before, when I re-use the matrix that crashed PARDISO by relaunching the code, it again works correctly until it crashes once again.&amp;nbsp;&lt;/P&gt;

&lt;P&gt;I think there is an internal memory problem with METIS algoirthm.&lt;/P&gt;

&lt;P&gt;&amp;nbsp;&lt;/P&gt;

&lt;P&gt;All the Best&lt;/P&gt;

&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Sun, 01 Dec 2013 12:01:47 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Problem-in-subsequent-calls-to-PARDISO-MKL/m-p/923537#M13213</guid>
      <dc:creator>OGUZ_UMUT_S_</dc:creator>
      <dc:date>2013-12-01T12:01:47Z</dc:date>
    </item>
    <item>
      <title>that's not clear for me how</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Problem-in-subsequent-calls-to-PARDISO-MKL/m-p/923538#M13214</link>
      <description>&lt;P&gt;that's not clear for me how to reproduce the problem? Can you give the exact example shows this failure?&amp;nbsp;&lt;/P&gt;

&lt;P&gt;regards, Gennady&lt;/P&gt;</description>
      <pubDate>Sun, 01 Dec 2013 16:47:57 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Problem-in-subsequent-calls-to-PARDISO-MKL/m-p/923538#M13214</guid>
      <dc:creator>Gennady_F_Intel</dc:creator>
      <dc:date>2013-12-01T16:47:57Z</dc:date>
    </item>
  </channel>
</rss>

