<?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 performance degradation: Dynamic vs Static linking of MKL in Intel® oneAPI Math Kernel Library</title>
    <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/performance-degradation-Dynamic-vs-Static-linking-of-MKL/m-p/808761#M3642</link>
    <description>&lt;P&gt;Well,
Composer XE 2011 contains MKL version 10.3 ( see here &lt;A href="http://software.intel.com/en-us/articles/which-version-of-the-intel-ipp-intel-mkl-and-intel-tbb-libraries-are-included-in-the-intel-composer-bundles/"&gt;the link&lt;/A&gt; for getting these
version) and setting mkl=parallel&lt;/P&gt;

&lt;P&gt;It
will allow you to link with standard threaded Intel MKL, see link to the linkier adviser on the top of the forum.&lt;/P&gt;

&lt;P&gt;In the case if you see
the real degradation with the 10.3 version too, then what is the level of that
degradation?&lt;/P&gt;

&lt;P&gt;What is the size of the input?&lt;/P&gt;

&lt;P&gt;It would be better if you
give us the test case for checking the problem on our side.&lt;/P&gt;&lt;P&gt;--Gennady&lt;/P&gt;</description>
    <pubDate>Sun, 19 Feb 2012 10:10:42 GMT</pubDate>
    <dc:creator>Gennady_F_Intel</dc:creator>
    <dc:date>2012-02-19T10:10:42Z</dc:date>
    <item>
      <title>performance degradation: Dynamic vs Static linking of MKL</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/performance-degradation-Dynamic-vs-Static-linking-of-MKL/m-p/808757#M3638</link>
      <description>&lt;P&gt;Hello,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;We have a Fortran code that uses Pardiso. Everything was fine until we had to increase the size of the main matrices that are being solved. Unfortunately the old way of compiling/linking the code started issuing 'truncation' errors, similar to this:&lt;/P&gt;&lt;BLOCKQUOTE&gt;&lt;P&gt;&lt;STRONG&gt;relocation truncated to fit: R_X86_64_PC32 against symbol `message_catalog' defined in COMMON section&lt;/STRONG&gt;&lt;/P&gt;&lt;/BLOCKQUOTE&gt;&lt;P&gt;So we were told that we needed to use dynamic linking and '-shared-intel' option to fix the memory problem above.&lt;/P&gt;&lt;P&gt;Since then, the performance has seen a huge hit. Before all 8-core on our machine were used but now we see only 2 to 6 cores being used.&lt;/P&gt;&lt;P&gt;So My main question: is this something expected and non-fixable or we are doing something wrong?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Detail:&lt;/P&gt;&lt;P&gt;We are using Intel Compiler 11.0, which seems to include 10.1 version of MKL.&lt;/P&gt;&lt;P&gt;This is how we statically compiled our code:&lt;/P&gt;&lt;P class="sectionBody"&gt;&lt;CODE&gt;ifort foo.f -O -tune host -L/path/to/mkl/em64t /path/to/em64t/libmkl_solver.a /path/to/mkl/em64t/libmkl_lapack.a /path/to/fce/lib/libguide.a -lmkl_em64t -lpthread&lt;/CODE&gt;&lt;/P&gt;&lt;P&gt;The new way (causing reduced performance) is:&lt;/P&gt;&lt;P&gt;&lt;CODE&gt;ifort foo.f -mcmodel=large -shared-intel -O -tune host -lmkl_core -lguide -lmkl_intel_lp64 -lmkl -lmkl_solver -lmkl_lapack -lguide -lmkl_em64t -lpthread&lt;/CODE&gt;&lt;/P&gt;&lt;P&gt;where LD_LIBRARY_PATH includes&lt;STRONG&gt;/paht/to/Compiler/11.0/081/mkl/lib/em64t&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;I should add that I've tried the 'Link Advisor' too, but the resulting executable 'seg faults'!&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Any hint/input regarding this issue is greatly appreciated,&lt;/P&gt;&lt;P&gt;thanks in advance&lt;/P&gt;</description>
      <pubDate>Wed, 15 Feb 2012 20:51:10 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/performance-degradation-Dynamic-vs-Static-linking-of-MKL/m-p/808757#M3638</guid>
      <dc:creator>Handsome_T</dc:creator>
      <dc:date>2012-02-15T20:51:10Z</dc:date>
    </item>
    <item>
      <title>performance degradation: Dynamic vs Static linking of MKL</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/performance-degradation-Dynamic-vs-Static-linking-of-MKL/m-p/808758#M3639</link>
      <description>libguide was obsoleted before ifort 11.0 was issued, so you should be using -liomp5 and MKL which came with the compiler. There should be no libguide or libmkl_lapack in that MKL. Perhaps you are mixing files from various older versions. Link advisor would not be relevant to an MKL which came much earlier.</description>
      <pubDate>Wed, 15 Feb 2012 23:04:57 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/performance-degradation-Dynamic-vs-Static-linking-of-MKL/m-p/808758#M3639</guid>
      <dc:creator>TimP</dc:creator>
      <dc:date>2012-02-15T23:04:57Z</dc:date>
    </item>
    <item>
      <title>performance degradation: Dynamic vs Static linking of MKL</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/performance-degradation-Dynamic-vs-Static-linking-of-MKL/m-p/808759#M3640</link>
      <description>&lt;DIV&gt;- as Tim already indicated, you need to replace llguide by liomp5 and&lt;/DIV&gt;&lt;DIV&gt;- I don't see the-lmkl_intel_thread into this linking line. please add and check again how it will work.&lt;/DIV&gt;&lt;DIV&gt;please refer to the Linked Adviser again.&lt;/DIV&gt;&lt;DIV&gt;--Gennady&lt;/DIV&gt;</description>
      <pubDate>Thu, 16 Feb 2012 04:46:01 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/performance-degradation-Dynamic-vs-Static-linking-of-MKL/m-p/808759#M3640</guid>
      <dc:creator>Gennady_F_Intel</dc:creator>
      <dc:date>2012-02-16T04:46:01Z</dc:date>
    </item>
    <item>
      <title>performance degradation: Dynamic vs Static linking of MKL</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/performance-degradation-Dynamic-vs-Static-linking-of-MKL/m-p/808760#M3641</link>
      <description>Thanks for your comments.&lt;DIV&gt;I tried recompiling using following options (still Intel Compiler 11.0):&lt;/DIV&gt;&lt;BR /&gt;&lt;DIV&gt;&lt;CODE&gt;ifort -mcmodel=large -shared-intel -O2 -tune host -lmkl -lmkl_em64t -liomp5 -lmkl_intel_thread foo.f&lt;/CODE&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;CODE&gt;&lt;BR /&gt;&lt;/CODE&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;/DIV&gt;&lt;DIV&gt;The resulting executable is till slower than the one I getusing static linking!!!&lt;/DIV&gt;&lt;DIV&gt;&lt;/DIV&gt;&lt;DIV&gt;I also manged to compile it on a machine with Intel Composer XE 2011 whose performance matched that of the static linking. The only flag I used for Composer was&lt;/DIV&gt;&lt;DIV&gt;&lt;CODE&gt;&lt;BR /&gt;&lt;/CODE&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;CODE&gt;-mkl=parallel&lt;/CODE&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;CODE&gt;&lt;BR /&gt;&lt;/CODE&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN style="font-family: &amp;amp;"&gt;&lt;SPAN style="white-space: pre;"&gt;I really don't know what to do at this point.&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN style="font-family: &amp;amp;"&gt;&lt;SPAN style="white-space: pre;"&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN style="font-family: &amp;amp;"&gt;&lt;SPAN style="white-space: pre;"&gt;thanks again,&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/DIV&gt;</description>
      <pubDate>Sun, 19 Feb 2012 09:05:43 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/performance-degradation-Dynamic-vs-Static-linking-of-MKL/m-p/808760#M3641</guid>
      <dc:creator>Handsome_T</dc:creator>
      <dc:date>2012-02-19T09:05:43Z</dc:date>
    </item>
    <item>
      <title>performance degradation: Dynamic vs Static linking of MKL</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/performance-degradation-Dynamic-vs-Static-linking-of-MKL/m-p/808761#M3642</link>
      <description>&lt;P&gt;Well,
Composer XE 2011 contains MKL version 10.3 ( see here &lt;A href="http://software.intel.com/en-us/articles/which-version-of-the-intel-ipp-intel-mkl-and-intel-tbb-libraries-are-included-in-the-intel-composer-bundles/"&gt;the link&lt;/A&gt; for getting these
version) and setting mkl=parallel&lt;/P&gt;

&lt;P&gt;It
will allow you to link with standard threaded Intel MKL, see link to the linkier adviser on the top of the forum.&lt;/P&gt;

&lt;P&gt;In the case if you see
the real degradation with the 10.3 version too, then what is the level of that
degradation?&lt;/P&gt;

&lt;P&gt;What is the size of the input?&lt;/P&gt;

&lt;P&gt;It would be better if you
give us the test case for checking the problem on our side.&lt;/P&gt;&lt;P&gt;--Gennady&lt;/P&gt;</description>
      <pubDate>Sun, 19 Feb 2012 10:10:42 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/performance-degradation-Dynamic-vs-Static-linking-of-MKL/m-p/808761#M3642</guid>
      <dc:creator>Gennady_F_Intel</dc:creator>
      <dc:date>2012-02-19T10:10:42Z</dc:date>
    </item>
  </channel>
</rss>

