<?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 Pardiso scaling with multiple processors on Linux in Intel® oneAPI Math Kernel Library</title>
    <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Pardiso-scaling-with-multiple-processors-on-Linux/m-p/881670#M9625</link>
    <description>Hello,&lt;BR /&gt;&lt;BR /&gt;I am running on a four core Intel machine with Suse Linux. I have a finite element code that uses Pardiso and doesn't scale well with multiple processors. Here are the timings:&lt;BR /&gt;&lt;BR /&gt;1 cpu 1:36&lt;BR /&gt;2 cpus 0:57&lt;BR /&gt;3 cpus 0:53&lt;BR /&gt;4 cpus 1:06&lt;BR /&gt;&lt;BR /&gt;I should note that the same problem running on an SGI Altix machine with 8 processors does scale well. Has anyone else had problems with Pardiso not scaling well on Linux?&lt;BR /&gt;&lt;BR /&gt;Thanks,&lt;BR /&gt;&lt;BR /&gt;Dave</description>
    <pubDate>Fri, 13 Mar 2009 22:08:10 GMT</pubDate>
    <dc:creator>Rawlins__David</dc:creator>
    <dc:date>2009-03-13T22:08:10Z</dc:date>
    <item>
      <title>Pardiso scaling with multiple processors on Linux</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Pardiso-scaling-with-multiple-processors-on-Linux/m-p/881670#M9625</link>
      <description>Hello,&lt;BR /&gt;&lt;BR /&gt;I am running on a four core Intel machine with Suse Linux. I have a finite element code that uses Pardiso and doesn't scale well with multiple processors. Here are the timings:&lt;BR /&gt;&lt;BR /&gt;1 cpu 1:36&lt;BR /&gt;2 cpus 0:57&lt;BR /&gt;3 cpus 0:53&lt;BR /&gt;4 cpus 1:06&lt;BR /&gt;&lt;BR /&gt;I should note that the same problem running on an SGI Altix machine with 8 processors does scale well. Has anyone else had problems with Pardiso not scaling well on Linux?&lt;BR /&gt;&lt;BR /&gt;Thanks,&lt;BR /&gt;&lt;BR /&gt;Dave</description>
      <pubDate>Fri, 13 Mar 2009 22:08:10 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Pardiso-scaling-with-multiple-processors-on-Linux/m-p/881670#M9625</guid>
      <dc:creator>Rawlins__David</dc:creator>
      <dc:date>2009-03-13T22:08:10Z</dc:date>
    </item>
    <item>
      <title>Re: Pardiso scaling with multiple processors on Linux</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Pardiso-scaling-with-multiple-processors-on-Linux/m-p/881671#M9626</link>
      <description>Dave, please let us know:&lt;BR /&gt;
&lt;P&gt;What is the task size?&lt;BR /&gt;The number of non-zero elements?&lt;BR /&gt;the type of matrix?&lt;BR /&gt;In-Core or OOC version?&lt;BR /&gt;MKL version?&lt;BR /&gt;--Gennady&lt;/P&gt;</description>
      <pubDate>Sat, 14 Mar 2009 18:47:44 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Pardiso-scaling-with-multiple-processors-on-Linux/m-p/881671#M9626</guid>
      <dc:creator>Gennady_F_Intel</dc:creator>
      <dc:date>2009-03-14T18:47:44Z</dc:date>
    </item>
    <item>
      <title>Re: Pardiso scaling with multiple processors on Linux</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Pardiso-scaling-with-multiple-processors-on-Linux/m-p/881672#M9627</link>
      <description>&lt;DIV style="margin:0px;"&gt;
&lt;DIV id="quote_reply" style="width: 100%; margin-top: 5px;"&gt;
&lt;DIV style="margin-left:2px;margin-right:2px;"&gt;Quoting - &lt;A href="https://community.intel.com/en-us/profile/334681"&gt;Gennady Fedorov (Intel)&lt;/A&gt;&lt;/DIV&gt;
&lt;DIV style="background-color:#E5E5E5; padding:5px;border: 1px; border-style: inset;margin-left:2px;margin-right:2px;"&gt;&lt;EM&gt;Dave, please let us know:&lt;BR /&gt;
&lt;P&gt;What is the task size?&lt;BR /&gt;The number of non-zero elements?&lt;BR /&gt;the type of matrix?&lt;BR /&gt;In-Core or OOC version?&lt;BR /&gt;MKL version?&lt;BR /&gt;--Gennady&lt;/P&gt;
&lt;/EM&gt;&lt;/DIV&gt;
&lt;/DIV&gt;
&lt;/DIV&gt;
&lt;BR /&gt;Gennady,&lt;BR /&gt;&lt;BR /&gt;The task size is 202800 equations, 7847016 non-zero elements, matrix type -2 (real, symmetric, indefinite), in-core, MKL version 10.1.1.019&lt;BR /&gt;&lt;BR /&gt;Dave&lt;BR /&gt;</description>
      <pubDate>Mon, 16 Mar 2009 21:33:59 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Pardiso-scaling-with-multiple-processors-on-Linux/m-p/881672#M9627</guid>
      <dc:creator>Rawlins__David</dc:creator>
      <dc:date>2009-03-16T21:33:59Z</dc:date>
    </item>
    <item>
      <title>Re: Pardiso scaling with multiple processors on Linux</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Pardiso-scaling-with-multiple-processors-on-Linux/m-p/881673#M9628</link>
      <description>&lt;DIV style="margin:0px;"&gt;
&lt;DIV id="quote_reply" style="margin-top: 5px; width: 100%;"&gt;
&lt;DIV style="margin-left:2px;margin-right:2px;"&gt;Quoting - &lt;A href="https://community.intel.com/en-us/profile/414073"&gt;rawlinssci.utah.edu&lt;/A&gt;&lt;/DIV&gt;
&lt;DIV style="background-color:#E5E5E5; padding:5px;border: 1px; border-style: inset;margin-left:2px;margin-right:2px;"&gt;&lt;EM&gt;Hello,&lt;BR /&gt;&lt;BR /&gt;I am running on a four core Intel machine with Suse Linux. I have a finite element code that uses Pardiso and doesn't scale well with multiple processors. Here are the timings:&lt;BR /&gt;&lt;BR /&gt;1 cpu 1:36&lt;BR /&gt;2 cpus 0:57&lt;BR /&gt;3 cpus 0:53&lt;BR /&gt;4 cpus 1:06&lt;BR /&gt;&lt;BR /&gt;I should note that the same problem running on an SGI Altix machine with 8 processors does scale well. Has anyone else had problems with Pardiso not scaling well on Linux?&lt;BR /&gt;&lt;BR /&gt;Thanks,&lt;BR /&gt;&lt;BR /&gt;Dave&lt;/EM&gt;&lt;/DIV&gt;
&lt;/DIV&gt;
&lt;/DIV&gt;
&lt;BR /&gt;Dear Dave, &lt;BR /&gt;&lt;BR /&gt;Is it possible to get yourmatrix along with typical PARDISO settings? If yes, please visit &lt;A href="http://premier.intel.com"&gt;http://premier.intel.com&lt;/A&gt;, submit an issue and attach your data.Please, provide the output of command $cat /proc/cpuinfo and linking line as well.&lt;BR /&gt;&lt;BR /&gt;The other alternative is to turn on printing statistical information by setting msglvl=1 andprovide us the PARDISO outputon MKL forum for MKL_NUM_THREADS=1 and MKL_THREADS=4.I'd also recommend to set iparm(27)=1. The setting checks sparse matrix representation and if something iswrong,PARDISO print warnings. &lt;BR /&gt;&lt;BR /&gt;Thanks in advance&lt;BR /&gt;All the best&lt;BR /&gt;Sergey</description>
      <pubDate>Wed, 18 Mar 2009 05:48:38 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Pardiso-scaling-with-multiple-processors-on-Linux/m-p/881673#M9628</guid>
      <dc:creator>Sergey_K_Intel1</dc:creator>
      <dc:date>2009-03-18T05:48:38Z</dc:date>
    </item>
    <item>
      <title>Re: Pardiso scaling with multiple processors on Linux</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Pardiso-scaling-with-multiple-processors-on-Linux/m-p/881674#M9629</link>
      <description>&lt;BR /&gt;Hello Dave,&lt;BR /&gt;&lt;BR /&gt;May you trythe following command and see if you canbetter performanceon the four core machine? &lt;BR /&gt;for example, &lt;BR /&gt;$ export MKL_NUM_THREADS=4&lt;BR /&gt;$ export KMP_AFFINITY=compact,verbose &lt;BR /&gt;$ ./Pardiso.lnx&lt;BR /&gt;&lt;BR /&gt;Here is my test result&lt;BR /&gt;without export KMP_AFFINITY=compact,verbose &lt;BR /&gt;1 cpu -- Time in Solver: 66 seconds&lt;BR /&gt;2 cpus -- Time in Solver: 36 seconds&lt;BR /&gt;3 cpus --Time in Solve : 32 seconds. &lt;BR /&gt;4 cpus --Time in Solver: 34 seconds&lt;BR /&gt;&lt;BR /&gt;if with export KMP_AFFINITY=compact,verbose &lt;BR /&gt;1 cpu -- Time in Solver: 65 seconds&lt;BR /&gt;2 cpus -- Time in Solver: 40 seconds&lt;BR /&gt;3 cpus --Time in Solve : 29 seconds.&lt;BR /&gt;4 cpus --Time in Solver: 29 seconds&lt;BR /&gt;&lt;BR /&gt;So -the key problem is in KMP_Affinity here. There are some description regarding the performance test on multi-core in MKL User Guide Chapter 6, Managing Performance and Memory:&lt;BR /&gt;/*&lt;BR /&gt;If you run with HT enabled, performance may be especially impacted if you run on fewer&lt;BR /&gt;threads than physical cores. Moreover, if, for example, there are two threads to every&lt;BR /&gt;physical core, the thread scheduler may assign two threads to some cores and ignore the&lt;BR /&gt;other ones altogether. If you are using the OpenMP* library of the Intel Compiler, read the respective User Guide on how to best set the affinity to avoid this situation. For Intel MKL, you are recommended to set KMP_AFFINITY=granularity=fine,compact,1,0. &lt;BR /&gt;&lt;BR /&gt;Managing Multi-core Performance&lt;BR /&gt;You can obtain best performance on systems with multi-core processors by requiring that&lt;BR /&gt;threads do not migrate from core to core. To do this, bind threads to the CPU cores by&lt;BR /&gt;setting an affinity mask to threads. You can do it using any of the following options:&lt;BR /&gt;?OpenMP facilities (recommended, if available), for instance, the KMP_AFFINITY&lt;BR /&gt;environment variable using the Intel OpenMP library. &lt;BR /&gt;*/&lt;BR /&gt;&lt;BR /&gt;MKL implemented dynamic parallelization (that means that threads get their part of work at run-time) in LAPACK and PARDISO using Intel OpenMP library, by default, the OpenMP threads don't bind to physical core. So for processors with more than two cores, we recommend to set&lt;BR /&gt;KMP_AFFINITY=compact&lt;BR /&gt;&lt;BR /&gt;With Regards,&lt;BR /&gt;Ying</description>
      <pubDate>Wed, 01 Apr 2009 02:40:11 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Pardiso-scaling-with-multiple-processors-on-Linux/m-p/881674#M9629</guid>
      <dc:creator>Ying_H_Intel</dc:creator>
      <dc:date>2009-04-01T02:40:11Z</dc:date>
    </item>
  </channel>
</rss>

