<?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 FYI, code locked at in Intel® oneAPI Math Kernel Library</title>
    <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/A-problem-with-MKL-11-2-Update-3-and-ddot-direct/m-p/1057630#M21513</link>
    <description>&lt;P&gt;FYI, code locked at&lt;/P&gt;

&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;ntdll.dll!NtWaitForSingleObject() &amp;nbsp;+ 0xa bytes&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;BR /&gt;
	&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;KernelBase.dll!WaitForSingleObjectEx() &amp;nbsp;+ 0x9c bytes&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;BR /&gt;
	&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;libiomp5md.dll!__kmp_suspend_64() &amp;nbsp;+ 0x1c0 bytes&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;BR /&gt;
	&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;libiomp5md.dll!__kmp_barrier() &amp;nbsp;+ 0x32d0 bytes&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;BR /&gt;
	&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;libiomp5md.dll!__kmp_join_barrier() &amp;nbsp;+ 0x5fe bytes&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;BR /&gt;
	&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;libiomp5md.dll!__kmp_join_call() &amp;nbsp;+ 0xf1 bytes&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;BR /&gt;
	&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;libiomp5md.dll!__kmpc_fork_call() &amp;nbsp;+ 0x76 bytes&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;BR /&gt;
	&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;mkl_intel_thread.dll!000007fedf2450c3() &amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;BR /&gt;
	&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;[Frames below may be incorrect and/or missing, no symbols loaded for mkl_intel_thread.dll]&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;BR /&gt;
	&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;mkl_intel_thread.dll!000007fedf1ba8ba() &amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; &amp;nbsp;ddot() &amp;nbsp;+ 0x83 bytes&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;/P&gt;

&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
    <pubDate>Sun, 10 May 2015 00:34:37 GMT</pubDate>
    <dc:creator>AndrewC</dc:creator>
    <dc:date>2015-05-10T00:34:37Z</dc:date>
    <item>
      <title>A problem with MKL 11.2 Update 3 and ddot_direct</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/A-problem-with-MKL-11-2-Update-3-and-ddot-direct/m-p/1057626#M21509</link>
      <description>&lt;P&gt;Our software is failing QA on a 8 cores/thread system and is hanging in the main thread. The culprit seems to be ddot_direct. No other user threads are running. This is a new problem introduced with the new &amp;lt;D,Z,S,C&amp;gt;dot direct calls.&lt;/P&gt;

&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ntdll.dll!NtWaitForSingleObject()&amp;nbsp; + 0xa bytes&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;BR /&gt;
	&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;KernelBase.dll!WaitForSingleObjectEx()&amp;nbsp; + 0x9c bytes&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;BR /&gt;
	&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;libiomp5md.dll!__kmp_suspend_64()&amp;nbsp; + 0x1c0 bytes&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;BR /&gt;
	&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;libiomp5md.dll!__kmp_barrier()&amp;nbsp; + 0x32d0 bytes&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;BR /&gt;
	&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;libiomp5md.dll!__kmp_join_barrier()&amp;nbsp; + 0x5fe bytes&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;BR /&gt;
	&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;libiomp5md.dll!__kmp_join_call()&amp;nbsp; + 0xf1 bytes&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;BR /&gt;
	&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;libiomp5md.dll!__kmpc_fork_call()&amp;nbsp; + 0x76 bytes&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;BR /&gt;
	&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;mkl_intel_thread.dll!000007fed54250c3() &amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;BR /&gt;
	&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;[Frames below may be incorrect and/or missing, no symbols loaded for mkl_intel_thread.dll]&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;BR /&gt;
	&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;mkl_intel_thread.dll!000007fed539a8ba() &amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;BR /&gt;
	&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ddot_direct()&amp;nbsp; + 0x74 bytes&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;/P&gt;

&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Sat, 09 May 2015 05:45:32 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/A-problem-with-MKL-11-2-Update-3-and-ddot-direct/m-p/1057626#M21509</guid>
      <dc:creator>AndrewC</dc:creator>
      <dc:date>2015-05-09T05:45:32Z</dc:date>
    </item>
    <item>
      <title>Vasci, Could you give more</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/A-problem-with-MKL-11-2-Update-3-and-ddot-direct/m-p/1057627#M21510</link>
      <description>&lt;P&gt;Vasci, Could you give more details about the parameters about this function? &amp;nbsp;&amp;nbsp;&lt;/P&gt;

&lt;P&gt;&lt;SPAN style="font-size: 1em; line-height: 1.5;"&gt;How do you link this case? &lt;/SPAN&gt;&lt;/P&gt;

&lt;P&gt;&lt;SPAN style="font-size: 1em; line-height: 1.5;"&gt;any specific CPU where the problem has happened?&lt;/SPAN&gt;&lt;/P&gt;

&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Sat, 09 May 2015 09:42:54 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/A-problem-with-MKL-11-2-Update-3-and-ddot-direct/m-p/1057627#M21510</guid>
      <dc:creator>Gennady_F_Intel</dc:creator>
      <dc:date>2015-05-09T09:42:54Z</dc:date>
    </item>
    <item>
      <title> </title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/A-problem-with-MKL-11-2-Update-3-and-ddot-direct/m-p/1057628#M21511</link>
      <description>&lt;P&gt;&amp;nbsp;&lt;/P&gt;

&lt;P&gt;&lt;SPAN style="font-size: 1em; line-height: 1.5;"&gt;Parameters as below ( n=2576, incx=1, incy=1)&lt;/SPAN&gt;&lt;/P&gt;

&lt;P&gt;&lt;SPAN style="font-size: 1em; line-height: 1.5;"&gt;-&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;n&amp;nbsp;&amp;nbsp; &amp;nbsp;0x000000000012ccf0&amp;nbsp;&amp;nbsp; &amp;nbsp;const int *&lt;/SPAN&gt;&lt;SPAN style="font-size: 1em; line-height: 1.5;"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 2576&amp;nbsp;&amp;nbsp; &amp;nbsp;const int&lt;/SPAN&gt;&lt;/P&gt;

&lt;P&gt;&lt;SPAN style="font-size: 1em; line-height: 1.5;"&gt;-&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;x&amp;nbsp;&amp;nbsp; &amp;nbsp;0x000000ef58eca600&amp;nbsp;&amp;nbsp; &amp;nbsp;const double *&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="font-size: 1em; line-height: 1.5;"&gt;&amp;nbsp;2.1437157556647435e-005&amp;nbsp;&amp;nbsp; &amp;nbsp;const double&lt;/SPAN&gt;&lt;/P&gt;

&lt;P&gt;-&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;incx&amp;nbsp;&amp;nbsp; &amp;nbsp;0x000000000012cd00&amp;nbsp;&amp;nbsp; &amp;nbsp;const int * &amp;nbsp;1&amp;nbsp;&amp;nbsp; &amp;nbsp;const int&lt;BR /&gt;
	-&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;y&amp;nbsp;&amp;nbsp; &amp;nbsp;0x0000000045184380&amp;nbsp;&amp;nbsp; &amp;nbsp;const double *&amp;nbsp;&amp;nbsp;4.4600692790355519e-016&amp;nbsp;&amp;nbsp; &amp;nbsp;const double&lt;BR /&gt;
	-&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;incy&amp;nbsp;&amp;nbsp; &amp;nbsp;0x000000000012cd0c&amp;nbsp;&amp;nbsp; &amp;nbsp;const int * &amp;nbsp;1&amp;nbsp;&amp;nbsp; &amp;nbsp;const int&lt;BR /&gt;
	&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;ret&amp;nbsp;&amp;nbsp; &amp;nbsp;0.00000000000000000&amp;nbsp;&amp;nbsp; &amp;nbsp;double&lt;/P&gt;

&lt;P&gt;It is being linked with Parallel MKL on Windows 64 in Visual Studio.&lt;/P&gt;

&lt;P&gt;Intel Xeon 3.6GHZ also happens on other Xeon machines.&lt;/P&gt;

&lt;P&gt;SSE &amp;nbsp; &amp;nbsp;:Y&lt;BR /&gt;
	SSE2 &amp;nbsp; :Y&lt;BR /&gt;
	SSE3 &amp;nbsp; :Y&lt;BR /&gt;
	SSSE3 &amp;nbsp;:Y&lt;BR /&gt;
	SSE41 &amp;nbsp;:Y&lt;BR /&gt;
	SSE42 &amp;nbsp;:Y&lt;BR /&gt;
	AVX &amp;nbsp; &amp;nbsp;:Y&lt;BR /&gt;
	AVX2 &amp;nbsp; :N&lt;BR /&gt;
	----------&lt;/P&gt;

&lt;P&gt;OS Enabled AVX :Y&lt;BR /&gt;
	AES &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;:Y&lt;BR /&gt;
	CLMUL &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;:Y&lt;BR /&gt;
	RDRAND &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; :Y&lt;BR /&gt;
	F16C &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; :Y&lt;BR /&gt;
	Maximum number of OpenMP threads:8&lt;BR /&gt;
	MKL Version:Intel(R) Math Kernel Library Version 11.2.3 Product Build 20150413 for Intel(R) 64 architecture applications&lt;/P&gt;

&lt;P&gt;Failing at this call to doot_direct&lt;/P&gt;

&lt;P&gt;/* {S,D}DOT_DIRECT */&lt;BR /&gt;
	static __inline double mkl_dc_ddot_convert(const MKL_INT *n, const double* x, const MKL_INT *incx, const double *y, const MKL_INT *incy) {&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; double ret = 0.0;&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; if (MKL_DC_DDOT_CHECKSIZE(n)) {&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; ret = mkl_dc_ddot((n), (x), (incx), (y), (incy));&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; } else {&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; ret = ddot_direct((n), (x), (incx), (y), (incy));&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; }&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; return ret;&lt;BR /&gt;
	}&lt;/P&gt;

&lt;P&gt;As I said, there are no other user threads running at the time, this is being called from the main thread.&lt;/P&gt;

&lt;P&gt;&amp;nbsp;&lt;/P&gt;

&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Sat, 09 May 2015 20:04:21 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/A-problem-with-MKL-11-2-Update-3-and-ddot-direct/m-p/1057628#M21511</guid>
      <dc:creator>AndrewC</dc:creator>
      <dc:date>2015-05-09T20:04:21Z</dc:date>
    </item>
    <item>
      <title>I have removed the 'direct'</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/A-problem-with-MKL-11-2-Update-3-and-ddot-direct/m-p/1057629#M21512</link>
      <description>&lt;P&gt;I have removed the 'direct' calls so that the 'regular' DDOT is called. Interestingly the problems persist.&lt;/P&gt;

&lt;P&gt;The issue is 100% reproducible, and only can be worked around by setting OMP_NUM_THREADS=1&lt;/P&gt;

&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Sun, 10 May 2015 00:32:19 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/A-problem-with-MKL-11-2-Update-3-and-ddot-direct/m-p/1057629#M21512</guid>
      <dc:creator>AndrewC</dc:creator>
      <dc:date>2015-05-10T00:32:19Z</dc:date>
    </item>
    <item>
      <title>FYI, code locked at</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/A-problem-with-MKL-11-2-Update-3-and-ddot-direct/m-p/1057630#M21513</link>
      <description>&lt;P&gt;FYI, code locked at&lt;/P&gt;

&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;ntdll.dll!NtWaitForSingleObject() &amp;nbsp;+ 0xa bytes&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;BR /&gt;
	&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;KernelBase.dll!WaitForSingleObjectEx() &amp;nbsp;+ 0x9c bytes&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;BR /&gt;
	&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;libiomp5md.dll!__kmp_suspend_64() &amp;nbsp;+ 0x1c0 bytes&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;BR /&gt;
	&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;libiomp5md.dll!__kmp_barrier() &amp;nbsp;+ 0x32d0 bytes&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;BR /&gt;
	&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;libiomp5md.dll!__kmp_join_barrier() &amp;nbsp;+ 0x5fe bytes&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;BR /&gt;
	&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;libiomp5md.dll!__kmp_join_call() &amp;nbsp;+ 0xf1 bytes&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;BR /&gt;
	&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;libiomp5md.dll!__kmpc_fork_call() &amp;nbsp;+ 0x76 bytes&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;BR /&gt;
	&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;mkl_intel_thread.dll!000007fedf2450c3() &amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;BR /&gt;
	&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;[Frames below may be incorrect and/or missing, no symbols loaded for mkl_intel_thread.dll]&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;BR /&gt;
	&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;mkl_intel_thread.dll!000007fedf1ba8ba() &amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; &amp;nbsp;ddot() &amp;nbsp;+ 0x83 bytes&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;/P&gt;

&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Sun, 10 May 2015 00:34:37 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/A-problem-with-MKL-11-2-Update-3-and-ddot-direct/m-p/1057630#M21513</guid>
      <dc:creator>AndrewC</dc:creator>
      <dc:date>2015-05-10T00:34:37Z</dc:date>
    </item>
    <item>
      <title>Further analysis</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/A-problem-with-MKL-11-2-Update-3-and-ddot-direct/m-p/1057631#M21514</link>
      <description>&lt;P&gt;Further analysis&lt;/P&gt;

&lt;UL&gt;
	&lt;LI&gt;Replacing DDOT with my 'own' naive DDOT causes the issue to go away - as expected&lt;/LI&gt;
	&lt;LI&gt;A simple test program with the same &amp;nbsp;input parameters does not reproduce the problem&lt;/LI&gt;
&lt;/UL&gt;

&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Sun, 10 May 2015 15:26:01 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/A-problem-with-MKL-11-2-Update-3-and-ddot-direct/m-p/1057631#M21514</guid>
      <dc:creator>AndrewC</dc:creator>
      <dc:date>2015-05-10T15:26:01Z</dc:date>
    </item>
    <item>
      <title>Just FYI,</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/A-problem-with-MKL-11-2-Update-3-and-ddot-direct/m-p/1057632#M21515</link>
      <description>&lt;P&gt;Just FYI,&lt;/P&gt;

&lt;P&gt;This program crashes instantly on the call to MKL_Thread_Free_Buffers(); I know its a bit perverse, but this is new in latest Update.&lt;/P&gt;

&lt;P&gt;&amp;nbsp;&lt;/P&gt;

&lt;P&gt;&amp;nbsp;&lt;/P&gt;

&lt;P&gt;int _tmain(int argc, _TCHAR* argv[])&lt;BR /&gt;
	{&lt;BR /&gt;
	&amp;nbsp;&amp;nbsp; &amp;nbsp;int n=2576;&lt;BR /&gt;
	&amp;nbsp;&amp;nbsp; &amp;nbsp;double *x=(double *)malloc(sizeof(double) * n);&lt;BR /&gt;
	&amp;nbsp;&amp;nbsp; &amp;nbsp;double *y=(double *)malloc(sizeof(double) * n);&lt;BR /&gt;
	&amp;nbsp;&amp;nbsp; &amp;nbsp;int incx=1;&lt;BR /&gt;
	&amp;nbsp;&amp;nbsp; &amp;nbsp;int incy=1;&lt;BR /&gt;
	&amp;nbsp;&amp;nbsp; &amp;nbsp;for(int i=0;i&amp;lt;n;i++){&lt;BR /&gt;
	&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;x&lt;I&gt;=i;&lt;BR /&gt;
	&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;y&lt;I&gt;=i*2;&lt;BR /&gt;
	&amp;nbsp;&amp;nbsp; &amp;nbsp;}&lt;BR /&gt;
	&amp;nbsp;&amp;nbsp; &amp;nbsp;MKL_Thread_Free_Buffers();&lt;BR /&gt;
	&amp;nbsp;&amp;nbsp; &amp;nbsp;for(int j=0;j&amp;lt;10000000;j++){&lt;BR /&gt;
	&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;double res=ddot(&amp;amp;n, x, &amp;amp;incx, y, &amp;amp;incy);&lt;BR /&gt;
	&amp;nbsp;&amp;nbsp; &amp;nbsp;}&lt;BR /&gt;
	}&lt;/I&gt;&lt;/I&gt;&lt;/P&gt;

&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Sun, 10 May 2015 15:52:23 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/A-problem-with-MKL-11-2-Update-3-and-ddot-direct/m-p/1057632#M21515</guid>
      <dc:creator>AndrewC</dc:creator>
      <dc:date>2015-05-10T15:52:23Z</dc:date>
    </item>
    <item>
      <title>Thank you for your detailed</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/A-problem-with-MKL-11-2-Update-3-and-ddot-direct/m-p/1057633#M21516</link>
      <description>&lt;P&gt;Thank you for your detailed analysis.&amp;nbsp; I could reproduce the crash with Intel MKL 11.2.3 on Windows when using dynamic linking (but not with static linking).&amp;nbsp; We are looking into the issue in more detail.&lt;/P&gt;

&lt;P&gt;As a potential workaround, inserting a call to ddot (or likely to any MKL call that is sufficiently large enough for thread initialization to occur) before the MKL_Thread_Free_Buffers() call appeared to make the crash no longer occur.&amp;nbsp; Can you please see if this workaround works for you?&lt;/P&gt;

&lt;P&gt;Explicitly, I modified your reproducer to be:&lt;/P&gt;

&lt;P&gt;&lt;SPAN style="font-size: 12px; line-height: 18px;"&gt;int _tmain(int argc, _TCHAR* argv[])&lt;/SPAN&gt;&lt;BR style="font-size: 12px; line-height: 18px;" /&gt;
	&lt;SPAN style="font-size: 12px; line-height: 18px;"&gt;{&lt;/SPAN&gt;&lt;BR style="font-size: 12px; line-height: 18px;" /&gt;
	&lt;SPAN style="font-size: 12px; line-height: 18px;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;int n=2576;&lt;/SPAN&gt;&lt;BR style="font-size: 12px; line-height: 18px;" /&gt;
	&lt;SPAN style="font-size: 12px; line-height: 18px;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;double *x=(double *)malloc(sizeof(double) * n);&lt;/SPAN&gt;&lt;BR style="font-size: 12px; line-height: 18px;" /&gt;
	&lt;SPAN style="font-size: 12px; line-height: 18px;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;double *y=(double *)malloc(sizeof(double) * n);&lt;/SPAN&gt;&lt;BR style="font-size: 12px; line-height: 18px;" /&gt;
	&lt;SPAN style="font-size: 12px; line-height: 18px;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;int incx=1;&lt;/SPAN&gt;&lt;BR style="font-size: 12px; line-height: 18px;" /&gt;
	&lt;SPAN style="font-size: 12px; line-height: 18px;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;int incy=1;&lt;/SPAN&gt;&lt;BR style="font-size: 12px; line-height: 18px;" /&gt;
	&lt;SPAN style="font-size: 12px; line-height: 18px;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;for(int i=0;i&amp;lt;n;i++){&lt;/SPAN&gt;&lt;BR style="font-size: 12px; line-height: 18px;" /&gt;
	&lt;SPAN style="font-size: 12px; line-height: 18px;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;x&lt;I&gt;=i;&lt;/I&gt;&lt;/SPAN&gt;&lt;BR style="font-size: 12px; line-height: 18px;" /&gt;
	&lt;SPAN style="font-size: 12px; line-height: 18px;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;y&lt;I&gt;=i*2;&lt;/I&gt;&lt;/SPAN&gt;&lt;BR style="font-size: 12px; line-height: 18px;" /&gt;
	&lt;SPAN style="font-size: 12px; line-height: 18px;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;}&lt;/SPAN&gt;&lt;BR style="font-size: 12px; line-height: 18px;" /&gt;
	&lt;SPAN style="font-size: 12px; line-height: 18px;"&gt;&amp;nbsp; &amp;nbsp; ddot(&amp;amp;n, x, &amp;amp;incx, y, &amp;amp;incy);&amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;BR style="font-size: 12px; line-height: 18px;" /&gt;
	&lt;SPAN style="font-size: 12px; line-height: 18px;"&gt;&amp;nbsp; &amp;nbsp; MKL_Thread_Free_Buffers();&lt;/SPAN&gt;&lt;BR style="font-size: 12px; line-height: 18px;" /&gt;
	&lt;SPAN style="font-size: 12px; line-height: 18px;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;for(int j=0;j&amp;lt;10000000;j++){&lt;/SPAN&gt;&lt;BR style="font-size: 12px; line-height: 18px;" /&gt;
	&lt;SPAN style="font-size: 12px; line-height: 18px;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;double res=ddot(&amp;amp;n, x, &amp;amp;incx, y, &amp;amp;incy);&lt;/SPAN&gt;&lt;BR style="font-size: 12px; line-height: 18px;" /&gt;
	&lt;SPAN style="font-size: 12px; line-height: 18px;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;}&lt;/SPAN&gt;&lt;BR style="font-size: 12px; line-height: 18px;" /&gt;
	&lt;SPAN style="font-size: 12px; line-height: 18px;"&gt;}&lt;/SPAN&gt;&lt;/P&gt;</description>
      <pubDate>Mon, 11 May 2015 21:12:00 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/A-problem-with-MKL-11-2-Update-3-and-ddot-direct/m-p/1057633#M21516</guid>
      <dc:creator>Sarah_K_Intel</dc:creator>
      <dc:date>2015-05-11T21:12:00Z</dc:date>
    </item>
    <item>
      <title>Hi, I had already implemented</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/A-problem-with-MKL-11-2-Update-3-and-ddot-direct/m-p/1057634#M21517</link>
      <description>&lt;P&gt;Hi, I had already implemented your suggested workaround - that is, do not call MKL_Thread_Free_Buffers() until some calls into MKL have been made to initialise the buffers.&lt;/P&gt;

&lt;P&gt;I am more concerned about the ddot issue that started this thread. It's clearly a subtle issue, but it is 'new' and hopefully by comparing ddot from a previous version of MKL to the latest will show why it has arisen.&lt;/P&gt;

&lt;P&gt;&amp;nbsp;&lt;/P&gt;

&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Mon, 11 May 2015 22:09:52 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/A-problem-with-MKL-11-2-Update-3-and-ddot-direct/m-p/1057634#M21517</guid>
      <dc:creator>AndrewC</dc:creator>
      <dc:date>2015-05-11T22:09:52Z</dc:date>
    </item>
    <item>
      <title>The problem of " libiomp5md</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/A-problem-with-MKL-11-2-Update-3-and-ddot-direct/m-p/1057635#M21518</link>
      <description>The problem of " libiomp5md.dll!__kmp_suspend_64() " does not only result from ddot, but also comes with OpenMP.  And MKL_Thread_Free_Buffers() does not work usually.

Who can solve this problem completely?
Thank you very much.</description>
      <pubDate>Sat, 13 Jun 2015 15:54:15 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/A-problem-with-MKL-11-2-Update-3-and-ddot-direct/m-p/1057635#M21518</guid>
      <dc:creator>John_L_8</dc:creator>
      <dc:date>2015-06-13T15:54:15Z</dc:date>
    </item>
  </channel>
</rss>

