<?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 Thread safety of MKL 10.2 in Intel® oneAPI Math Kernel Library</title>
    <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Thread-safety-of-MKL-10-2/m-p/779770#M1347</link>
    <description>MKL 10.2 is documented as being "thread safe".&lt;BR /&gt;&lt;BR /&gt;I am using Intel Inspector XE 2011 to verify some code that calls MKL in a simplified "OMP" parallel loop, see below, and I am getting getting 'Data Race' errrors inside MKL.&lt;BR /&gt;&lt;BR /&gt;Intel Inspector XE 2011 ( which, BTW, is an incredible tool) complains about a data race condition of two threads writing to the one memory location in daxpy&lt;BR /&gt;&lt;BR /&gt;Write location #1&lt;BR /&gt;&lt;BR /&gt;!daxpy - 0x3ac200&lt;BR /&gt;!zlange - 0x10ed43&lt;BR /&gt;...&lt;BR /&gt;&lt;BR /&gt;Write location #2&lt;BR /&gt;&lt;BR /&gt;!daxpy - 0x3ac200&lt;BR /&gt;!zgetri - 0x102fed&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;In the sample code below the matrices ktinv and kt are "private" to each thread by definition. 
That means these matrices and all their data are "thread-local"and the matrix data from one thread is not shared by 
another thread. &lt;BR /&gt;
&lt;BR /&gt;
&lt;BR /&gt;
#pragma omp parallel for&lt;BR /&gt;
  for( int i=0;i&lt;NTEST&gt;&lt;/NTEST&gt;
    Matrix ktinv;&lt;BR /&gt;
   Matrix kt(4,4,Complex(0.0,0.0));&lt;BR /&gt;
   kt.diagonal()=Complex(1.0,0.0);&lt;BR /&gt;
   ktinv.reference( inverse(kt) );&lt;BR /&gt;
  }&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;Any feedback on whether this is just a bogus issue in daxpy&lt;BR /&gt;</description>
    <pubDate>Fri, 18 Mar 2011 18:11:19 GMT</pubDate>
    <dc:creator>AndrewC</dc:creator>
    <dc:date>2011-03-18T18:11:19Z</dc:date>
    <item>
      <title>Thread safety of MKL 10.2</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Thread-safety-of-MKL-10-2/m-p/779770#M1347</link>
      <description>MKL 10.2 is documented as being "thread safe".&lt;BR /&gt;&lt;BR /&gt;I am using Intel Inspector XE 2011 to verify some code that calls MKL in a simplified "OMP" parallel loop, see below, and I am getting getting 'Data Race' errrors inside MKL.&lt;BR /&gt;&lt;BR /&gt;Intel Inspector XE 2011 ( which, BTW, is an incredible tool) complains about a data race condition of two threads writing to the one memory location in daxpy&lt;BR /&gt;&lt;BR /&gt;Write location #1&lt;BR /&gt;&lt;BR /&gt;!daxpy - 0x3ac200&lt;BR /&gt;!zlange - 0x10ed43&lt;BR /&gt;...&lt;BR /&gt;&lt;BR /&gt;Write location #2&lt;BR /&gt;&lt;BR /&gt;!daxpy - 0x3ac200&lt;BR /&gt;!zgetri - 0x102fed&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;In the sample code below the matrices ktinv and kt are "private" to each thread by definition. 
That means these matrices and all their data are "thread-local"and the matrix data from one thread is not shared by 
another thread. &lt;BR /&gt;
&lt;BR /&gt;
&lt;BR /&gt;
#pragma omp parallel for&lt;BR /&gt;
  for( int i=0;i&lt;NTEST&gt;&lt;/NTEST&gt;
    Matrix ktinv;&lt;BR /&gt;
   Matrix kt(4,4,Complex(0.0,0.0));&lt;BR /&gt;
   kt.diagonal()=Complex(1.0,0.0);&lt;BR /&gt;
   ktinv.reference( inverse(kt) );&lt;BR /&gt;
  }&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;Any feedback on whether this is just a bogus issue in daxpy&lt;BR /&gt;</description>
      <pubDate>Fri, 18 Mar 2011 18:11:19 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Thread-safety-of-MKL-10-2/m-p/779770#M1347</guid>
      <dc:creator>AndrewC</dc:creator>
      <dc:date>2011-03-18T18:11:19Z</dc:date>
    </item>
    <item>
      <title>Thread safety of MKL 10.2</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Thread-safety-of-MKL-10-2/m-p/779771#M1348</link>
      <description>Hello,&lt;BR /&gt;&lt;BR /&gt;Thank you for reporting the issue; we will investigate this. &lt;BR /&gt;&lt;BR /&gt;Is it possible for you to provide more information about the CPU and OS for which theInspector reports a race condition? A simple code that reproduces the issue will also greatly help us to quickly get to the bottom of this. Finally, are you using MKL IA32 or Intel64?&lt;BR /&gt;&lt;BR /&gt;Thank you,&lt;BR /&gt;&lt;BR /&gt;-- Efe</description>
      <pubDate>Fri, 18 Mar 2011 23:08:04 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Thread-safety-of-MKL-10-2/m-p/779771#M1348</guid>
      <dc:creator>Murat_G_Intel</dc:creator>
      <dc:date>2011-03-18T23:08:04Z</dc:date>
    </item>
  </channel>
</rss>

