<?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 Luke, in Intel® oneAPI Math Kernel Library</title>
    <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/link-error-libmkl-core-a-depends-on-Open-MPI-via-libmkl-blacs/m-p/1044183#M20883</link>
    <description>&lt;P&gt;&lt;SPAN style="font-size: 1em; line-height: 1.5;"&gt;Hi Luke,&lt;BR /&gt;
	&lt;BR /&gt;
	Thanks for your report. &amp;nbsp; Are you using any cluster functionality in the MKL( for example, cluster FFT, &amp;nbsp;cluster pardiso )? &amp;nbsp;If you are using these functions, they depends on the &amp;nbsp;MPI interfaces (&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="font-size: 11.9999990463257px; line-height: 20px;"&gt;libmkl_blacs_openmpi_lp64.a&amp;nbsp;&lt;/SPAN&gt;, or other MPIs).&amp;nbsp;&lt;/P&gt;

&lt;P&gt;But if you are not using any cluster functions, &amp;nbsp;it is not expected to depends on any MPI libraries.&lt;/P&gt;

&lt;P&gt;For the symbols bellow:&lt;BR /&gt;
	&lt;SPAN style="font-size: 11.9999990463257px; line-height: 20px;"&gt;(cpardiso_blacs_lp64.o): In function 'mkl_pds_lp64_cpardiso_mpi_ba&lt;/SPAN&gt;&lt;BR /&gt;
	&lt;SPAN style="font-size: 11.9999990463257px; line-height: 20px;"&gt;It is for the cluster pardiso functions, so it is no problem. &lt;/SPAN&gt;&lt;/P&gt;

&lt;P&gt;&lt;SPAN style="font-size: 11.9999990463257px; line-height: 20px;"&gt;&amp;nbsp;Let us know if you see any problem there.&lt;/SPAN&gt;&lt;/P&gt;

&lt;P&gt;Thanks,&lt;BR /&gt;
	Chao&lt;/P&gt;</description>
    <pubDate>Tue, 28 Apr 2015 03:10:17 GMT</pubDate>
    <dc:creator>Chao_Y_Intel</dc:creator>
    <dc:date>2015-04-28T03:10:17Z</dc:date>
    <item>
      <title>link error:  libmkl_core.a depends on Open MPI (via libmkl_blacs_openmpi_lp64.a)</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/link-error-libmkl-core-a-depends-on-Open-MPI-via-libmkl-blacs/m-p/1044182#M20882</link>
      <description>&lt;P&gt;While invoking 2015.2.164 Intel icpc compiler, I have encountered a link error while linking against libmkl_core.a:&lt;/P&gt;
&lt;P&gt;/opt/intel/composer_xe_2015.2.164/mkl/lib/intel64/libmkl_core.a(cpardiso_blacs_lp64.o): In function 'mkl_pds_lp64_cpardiso_mpi_barrier':&lt;/P&gt;
&lt;P&gt;__work/lnx32e/_cpardiso/kernel/mpi_wrapper/cpardiso_blacs_lp64_h.f:(.text+0x6): undefined referece to 'MKL_Barrier'&lt;/P&gt;
&lt;P&gt;# Then, to verify that libmkl_core.a references MKL_Barrier I ran the linux "nm" utility as follows:&lt;BR /&gt;]$ nm /opt/intel/composer_xe_2015.2.164/mkl/lib/intel64/libmkl_core.a | grep MKL_Barrier&lt;BR /&gt;U MKL_Barrier&lt;BR /&gt;U MKL_Barrier&lt;BR /&gt;]$&lt;/P&gt;
&lt;P&gt;# same results when I tried the same on an older Intel Composer version 2015.0.090&lt;BR /&gt;]$ nm /opt/intel/composer_xe_2015.0.090/mkl/lib/intel64/libmkl_core.a | grep MKL_Barrier&lt;BR /&gt;U MKL_Barrier&lt;BR /&gt;U MKL_Barrier&lt;BR /&gt;]$&lt;/P&gt;
&lt;P&gt;# however, no reference found in a 2-yr old Intel Composer version 2013.5.192&lt;BR /&gt;]$ nm /opt/intel/composer_xe_2013.5.192/mkl/lib/intel64/libmkl_core.a | grep MKL_Barrier&lt;BR /&gt;]$&lt;/P&gt;
&lt;P&gt;It appears that somewhere between versions 2013.5.192 and 2015.0.90 of the Intel Composer, a dependency on libmkl_blacs_openmpi_lp64.a (which&lt;/P&gt;
&lt;P&gt;defines MKL_Barrier) was introduced.&lt;/P&gt;
&lt;P&gt;Next, I added -lmkl_blacs_openmpi_lp64.a to my link line, but ecountered the following error:&lt;/P&gt;
&lt;P&gt;/opt/intel/composer_xe_2015.2.164/mkl/lib/intel64/libmkl_blacs_openmpi_lp64.a(blacs_extended.o):(.data+0x0): undefined reference to&lt;/P&gt;
&lt;P&gt;'ompi_request_null'&lt;/P&gt;
&lt;P&gt;After learning that 'ompi_request_null' is an Open MPI symbol, I downloaded Open MPI, installed and added the following to my link line:&lt;/P&gt;
&lt;P&gt;"-lmpi_cxx -lmpi -lopen-rte -lopen-pal -Wl,--export-dynamic -lnsl -lutil -lm -ldl"&lt;/P&gt;
&lt;P&gt;That did the trick and my application linked successfully.&lt;/P&gt;
&lt;P&gt;What this tells me is that (unlike 2013) 2015 versions of libmkl_core.a have an *indirect* dependency on Open MPI.&lt;/P&gt;
&lt;P&gt;Questions:&lt;/P&gt;
&lt;P&gt;1. Is this a feature or a bug?&lt;BR /&gt;2. Does this restrict libmkl_core.a users to only the Open MPI flavor of MPI?&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Mon, 27 Apr 2015 18:17:42 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/link-error-libmkl-core-a-depends-on-Open-MPI-via-libmkl-blacs/m-p/1044182#M20882</guid>
      <dc:creator>AWESim</dc:creator>
      <dc:date>2015-04-27T18:17:42Z</dc:date>
    </item>
    <item>
      <title>Hi Luke,</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/link-error-libmkl-core-a-depends-on-Open-MPI-via-libmkl-blacs/m-p/1044183#M20883</link>
      <description>&lt;P&gt;&lt;SPAN style="font-size: 1em; line-height: 1.5;"&gt;Hi Luke,&lt;BR /&gt;
	&lt;BR /&gt;
	Thanks for your report. &amp;nbsp; Are you using any cluster functionality in the MKL( for example, cluster FFT, &amp;nbsp;cluster pardiso )? &amp;nbsp;If you are using these functions, they depends on the &amp;nbsp;MPI interfaces (&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="font-size: 11.9999990463257px; line-height: 20px;"&gt;libmkl_blacs_openmpi_lp64.a&amp;nbsp;&lt;/SPAN&gt;, or other MPIs).&amp;nbsp;&lt;/P&gt;

&lt;P&gt;But if you are not using any cluster functions, &amp;nbsp;it is not expected to depends on any MPI libraries.&lt;/P&gt;

&lt;P&gt;For the symbols bellow:&lt;BR /&gt;
	&lt;SPAN style="font-size: 11.9999990463257px; line-height: 20px;"&gt;(cpardiso_blacs_lp64.o): In function 'mkl_pds_lp64_cpardiso_mpi_ba&lt;/SPAN&gt;&lt;BR /&gt;
	&lt;SPAN style="font-size: 11.9999990463257px; line-height: 20px;"&gt;It is for the cluster pardiso functions, so it is no problem. &lt;/SPAN&gt;&lt;/P&gt;

&lt;P&gt;&lt;SPAN style="font-size: 11.9999990463257px; line-height: 20px;"&gt;&amp;nbsp;Let us know if you see any problem there.&lt;/SPAN&gt;&lt;/P&gt;

&lt;P&gt;Thanks,&lt;BR /&gt;
	Chao&lt;/P&gt;</description>
      <pubDate>Tue, 28 Apr 2015 03:10:17 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/link-error-libmkl-core-a-depends-on-Open-MPI-via-libmkl-blacs/m-p/1044183#M20883</guid>
      <dc:creator>Chao_Y_Intel</dc:creator>
      <dc:date>2015-04-28T03:10:17Z</dc:date>
    </item>
    <item>
      <title>Chao,</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/link-error-libmkl-core-a-depends-on-Open-MPI-via-libmkl-blacs/m-p/1044184#M20884</link>
      <description>&lt;P&gt;Chao,&lt;/P&gt;

&lt;P&gt;Thanks for getting back to me.&amp;nbsp;&lt;/P&gt;

&lt;P&gt;1. When you say "depends on any MPI libraries" do you mean specifically Open MPI as I have reported (note the "ompi_request_null" symbol)?&lt;/P&gt;

&lt;P&gt;2. Does this prevent using MKL and another MPI implementation (such as cluster FFT + Intel MPI)&lt;/P&gt;

&lt;P&gt;3. Given that my application calls to MKL had not changed (only upgraded from Intel Composer 13.5.192 up to 15.2.164), does the link error I reported indicate that this dependency of cluster FFT on Open MPI is a new feature introduced in 2015 Intel Composer?&lt;/P&gt;</description>
      <pubDate>Tue, 28 Apr 2015 13:41:27 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/link-error-libmkl-core-a-depends-on-Open-MPI-via-libmkl-blacs/m-p/1044184#M20884</guid>
      <dc:creator>AWESim</dc:creator>
      <dc:date>2015-04-28T13:41:27Z</dc:date>
    </item>
    <item>
      <title>Luke,</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/link-error-libmkl-core-a-depends-on-Open-MPI-via-libmkl-blacs/m-p/1044185#M20885</link>
      <description>&lt;P&gt;Luke,&lt;/P&gt;

&lt;P&gt;MKL support several MPI implementations, including the Intel MKL. &amp;nbsp;&lt;/P&gt;

&lt;P&gt;Please check the list in the MKL system requirements document:&amp;nbsp;&lt;BR /&gt;
	&lt;A href="https://software.intel.com/en-us/articles/intel-mkl-112-system-requirements" target="_blank"&gt;https://software.intel.com/en-us/articles/intel-mkl-112-system-requirements&lt;/A&gt;&lt;/P&gt;

&lt;P&gt;&lt;SPAN style="font-size: 1em; line-height: 1.5;"&gt;MPI implementations that Intel® MKL for Linux* OS has been validated against:&lt;/SPAN&gt;&lt;BR /&gt;
	&lt;SPAN style="font-size: 1em; line-height: 1.5;"&gt;Intel® MPI Library Version and 5.0 and 4.1.1 (http://www.intel.com/go/mpi)&lt;/SPAN&gt;&lt;BR /&gt;
	&lt;SPAN style="font-size: 1em; line-height: 1.5;"&gt;MPICH2 version 1.5 and MPICH3 version 3.1 (http://www-unix.mcs.anl.gov/mpi/mpich)&lt;/SPAN&gt;&lt;BR /&gt;
	&lt;SPAN style="font-size: 1em; line-height: 1.5;"&gt;Open MPI 1.6 and 1.7 (http://www.open-mpi.org)&lt;/SPAN&gt;&lt;/P&gt;

&lt;P&gt;If the MPI is not in the list, MKL 11.3 Beta introduced a new features. Users can build the MKL MPI wrapper code with the customised MPI, so they can use MKL with that MPI. Check this article for some details:&amp;nbsp;&lt;BR /&gt;
	&lt;A href="https://software.intel.com/en-us/articles/using-intel-mkl-mpi-wrapper-with-the-intel-mkl-cluster-functions" target="_blank"&gt;https://software.intel.com/en-us/articles/using-intel-mkl-mpi-wrapper-with-the-intel-mkl-cluster-functions&lt;/A&gt;&lt;/P&gt;

&lt;P&gt;Thanks,&lt;BR /&gt;
	Chao&lt;/P&gt;</description>
      <pubDate>Wed, 29 Apr 2015 02:23:04 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/link-error-libmkl-core-a-depends-on-Open-MPI-via-libmkl-blacs/m-p/1044185#M20885</guid>
      <dc:creator>Chao_Y_Intel</dc:creator>
      <dc:date>2015-04-29T02:23:04Z</dc:date>
    </item>
  </channel>
</rss>

