<?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 Abhijit, in Intel® oneAPI Math Kernel Library</title>
    <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/MKL-error/m-p/1118275#M24797</link>
    <description>&lt;P&gt;Hi Abhijit,&lt;/P&gt;

&lt;P&gt;The error is then really weird.&lt;/P&gt;

&lt;P&gt;Luckily this is linux -- easy to debug. Could you please try doing the following on customer's computer:&lt;/P&gt;

&lt;UL&gt;
	&lt;LI&gt;use LD_DEBUG=libs to identify the actual path to MKL library used in the user's application
		&lt;UL&gt;
			&lt;LI&gt;$ LD_DEBUG=libs ./a.out 2&amp;gt;&amp;amp;1 | grep libmkl_core.so&lt;/LI&gt;
			&lt;LI&gt;$ LD_DEBUG=libs ./a.out 2&amp;gt;&amp;amp;1 | grep libmkl_avx2.so&lt;/LI&gt;
			&lt;LI&gt;the path libmkl_core.so must be the same as the path to libmkl_avx2.so&lt;/LI&gt;
		&lt;/UL&gt;
	&lt;/LI&gt;
	&lt;LI&gt;once you get this path please double check that the symbol mkl_blas_avx2_get_kernel_api_version symbol really exists:
		&lt;UL&gt;
			&lt;LI&gt;$ nm -gA ${ld_debug_reported_path_to_mkl}/libmkl_avx2.so | grep mkl_blas_avx2_get_kernel_api_version&lt;/LI&gt;
		&lt;/UL&gt;
	&lt;/LI&gt;
	&lt;LI&gt;if the previous step shows that the symbol exists in the library then using LD_DEBUG=all please find the place where dynamic linker would complain on mkl_blas_avx2_get_kernel_api_version symbol&lt;/LI&gt;
&lt;/UL&gt;

&lt;P&gt;I believe the situation is as follows: mkl_blas_avx2_get_kernel_api_version appeared in MKL 11.2.2 (composer 2015 u2). For some reasons two version of MKL are mixed: user's application starts with MKL 11.2.2+ but then libmkl_avx2.so is taken from MKL 11.2.1 or early. LD_DEBUG will help us to identify if this is the case.&lt;/P&gt;

&lt;P&gt;Another possible root cause might be that dynamic linker could not find libmkl_avx2.so and libmkl_def.so...&lt;/P&gt;</description>
    <pubDate>Sat, 09 Jul 2016 08:23:56 GMT</pubDate>
    <dc:creator>Evarist_F_Intel</dc:creator>
    <dc:date>2016-07-09T08:23:56Z</dc:date>
    <item>
      <title>MKL error</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/MKL-error/m-p/1118270#M24792</link>
      <description>&lt;P&gt;Hi&lt;/P&gt;

&lt;P&gt;Can anyone help why the following error happens:-&lt;/P&gt;

&lt;P&gt;Intel MKL FATAL ERROR: Error on loading function mkl_blas_avx2_get_kernel_api_version.&lt;/P&gt;

&lt;P&gt;This is appearing when running a program that uses intel MKL (to state the obivous). I am guessing that a (specif version of) library is missing. When the exe is built, it uses /Qmkl: parallel and specifies the mkl_blas libraries (blas and lapack) to be used.&lt;/P&gt;

&lt;P&gt;Abhijit&lt;/P&gt;

&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Wed, 06 Jul 2016 00:23:14 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/MKL-error/m-p/1118270#M24792</guid>
      <dc:creator>abhimodak</dc:creator>
      <dc:date>2016-07-06T00:23:14Z</dc:date>
    </item>
    <item>
      <title>Could you please specify the</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/MKL-error/m-p/1118271#M24793</link>
      <description>&lt;P&gt;Could you please specify the version of Intel MKL used, show the full link-line?&lt;/P&gt;

&lt;P&gt;Is the application standalone w/o external dependencies or it uses some extra libraries in addition to MKL?&lt;/P&gt;

&lt;P&gt;The error is quite strange. It might appear if different versions of MKL are mixed for some reasons. Could you please double check that this is not the case?&lt;/P&gt;</description>
      <pubDate>Wed, 06 Jul 2016 02:52:32 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/MKL-error/m-p/1118271#M24793</guid>
      <dc:creator>Evarist_F_Intel</dc:creator>
      <dc:date>2016-07-06T02:52:32Z</dc:date>
    </item>
    <item>
      <title>Hi Evarist</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/MKL-error/m-p/1118272#M24794</link>
      <description>&lt;P&gt;Hi Evarist&lt;/P&gt;

&lt;P&gt;&lt;SPAN style="font-size: 1em; line-height: 1.5;"&gt;No, there are not mixed as far as I understand it but I must be wrong. This error is not happening on Linux. The relevant flags and switches used in compile/link&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="font-size: 1em; line-height: 1.5;"&gt;are:&lt;/SPAN&gt;&lt;/P&gt;

&lt;P&gt;(a) For compilation&lt;/P&gt;

&lt;P&gt;&lt;SPAN style="font-size: 1em; line-height: 1.5;"&gt;OPTIONS = -fPIC -O3 -m64 -D_LINUXX8664 -openmp -mkl=parallel&lt;/SPAN&gt;&lt;/P&gt;

&lt;P&gt;$(OPTIONS) $(myINCLUDEdir) -nofor_main -fpp $(fppMacros) -I$(MKLROOT)/include/intel64/lp64 -I$(MKLROOT)/include&lt;/P&gt;

&lt;P&gt;(b) For the link line, the mk libraries for blas and lapack are picked up with&lt;/P&gt;

&lt;P&gt;$(myLIBdir)/libmkl_blas95_lp64.a $(myLIBdir)/libmkl_lapack95_lp64.a -lpthread -lm -mkl=parallel.&lt;/P&gt;

&lt;P&gt;The myLIBdir is referring to where I put the library generated from my programs and it also houses the mkl blas and lapack.&lt;/P&gt;

&lt;P&gt;&lt;SPAN style="font-size: 1em; line-height: 1.5;"&gt;Abhijit&lt;/SPAN&gt;&lt;/P&gt;</description>
      <pubDate>Thu, 07 Jul 2016 20:53:53 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/MKL-error/m-p/1118272#M24794</guid>
      <dc:creator>abhimodak</dc:creator>
      <dc:date>2016-07-07T20:53:53Z</dc:date>
    </item>
    <item>
      <title>Hi Abhijit,</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/MKL-error/m-p/1118273#M24795</link>
      <description>&lt;P&gt;Hi Abhijit,&lt;/P&gt;

&lt;BLOCKQUOTE&gt;
	&lt;P&gt;/Qmkl:parallel&lt;/P&gt;

	&lt;P&gt;This error is *not* happening on Linux&lt;/P&gt;

	&lt;P&gt;OPTIONS = -fPIC -O3 -m64 -D_LINUXX8664 -openmp -mkl=parallel&lt;/P&gt;
&lt;/BLOCKQUOTE&gt;

&lt;P&gt;Sorry, I am a little bit confused: you mentioned flags for Windows as well as flags for Linux. Which OS you actually use? :)&lt;/P&gt;

&lt;P&gt;If Windows could you please show the link-line and compilation flags you use there?&lt;/P&gt;

&lt;P&gt;If Linux is used, could you please try to use static linking (just for checking): for this use '-static-intel' flag.&lt;/P&gt;

&lt;P&gt;Please also specify MKL version (for this you may look at $(MKLROOT)/include/mkl_version.h file).&lt;/P&gt;</description>
      <pubDate>Fri, 08 Jul 2016 03:29:38 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/MKL-error/m-p/1118273#M24795</guid>
      <dc:creator>Evarist_F_Intel</dc:creator>
      <dc:date>2016-07-08T03:29:38Z</dc:date>
    </item>
    <item>
      <title>Hi Evarist</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/MKL-error/m-p/1118274#M24796</link>
      <description>&lt;P&gt;Hi Evarist&lt;/P&gt;

&lt;P&gt;Silly mistake on my part... I meant this error IS happening on Linux and NOT on windows. Hence, I gave all the Linux related flags.&lt;/P&gt;

&lt;P&gt;Unfortunately, at this point in time, trying -static-intel is not an option. The error happens on customer's computer and we cannot give one-off shared-objects and continue testing like that.&lt;/P&gt;

&lt;P&gt;I don't any file named mkl_version.h in the $(MKLROOT)/include folder. We are using Intel Composer 2015 and whatever mkl version that came with it.&amp;nbsp;&lt;/P&gt;

&lt;P&gt;Abhijit&lt;/P&gt;</description>
      <pubDate>Sat, 09 Jul 2016 00:18:28 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/MKL-error/m-p/1118274#M24796</guid>
      <dc:creator>abhimodak</dc:creator>
      <dc:date>2016-07-09T00:18:28Z</dc:date>
    </item>
    <item>
      <title>Hi Abhijit,</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/MKL-error/m-p/1118275#M24797</link>
      <description>&lt;P&gt;Hi Abhijit,&lt;/P&gt;

&lt;P&gt;The error is then really weird.&lt;/P&gt;

&lt;P&gt;Luckily this is linux -- easy to debug. Could you please try doing the following on customer's computer:&lt;/P&gt;

&lt;UL&gt;
	&lt;LI&gt;use LD_DEBUG=libs to identify the actual path to MKL library used in the user's application
		&lt;UL&gt;
			&lt;LI&gt;$ LD_DEBUG=libs ./a.out 2&amp;gt;&amp;amp;1 | grep libmkl_core.so&lt;/LI&gt;
			&lt;LI&gt;$ LD_DEBUG=libs ./a.out 2&amp;gt;&amp;amp;1 | grep libmkl_avx2.so&lt;/LI&gt;
			&lt;LI&gt;the path libmkl_core.so must be the same as the path to libmkl_avx2.so&lt;/LI&gt;
		&lt;/UL&gt;
	&lt;/LI&gt;
	&lt;LI&gt;once you get this path please double check that the symbol mkl_blas_avx2_get_kernel_api_version symbol really exists:
		&lt;UL&gt;
			&lt;LI&gt;$ nm -gA ${ld_debug_reported_path_to_mkl}/libmkl_avx2.so | grep mkl_blas_avx2_get_kernel_api_version&lt;/LI&gt;
		&lt;/UL&gt;
	&lt;/LI&gt;
	&lt;LI&gt;if the previous step shows that the symbol exists in the library then using LD_DEBUG=all please find the place where dynamic linker would complain on mkl_blas_avx2_get_kernel_api_version symbol&lt;/LI&gt;
&lt;/UL&gt;

&lt;P&gt;I believe the situation is as follows: mkl_blas_avx2_get_kernel_api_version appeared in MKL 11.2.2 (composer 2015 u2). For some reasons two version of MKL are mixed: user's application starts with MKL 11.2.2+ but then libmkl_avx2.so is taken from MKL 11.2.1 or early. LD_DEBUG will help us to identify if this is the case.&lt;/P&gt;

&lt;P&gt;Another possible root cause might be that dynamic linker could not find libmkl_avx2.so and libmkl_def.so...&lt;/P&gt;</description>
      <pubDate>Sat, 09 Jul 2016 08:23:56 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/MKL-error/m-p/1118275#M24797</guid>
      <dc:creator>Evarist_F_Intel</dc:creator>
      <dc:date>2016-07-09T08:23:56Z</dc:date>
    </item>
  </channel>
</rss>

