<?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 dgemm performance in Intel® oneAPI Math Kernel Library</title>
    <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/dgemm-performance/m-p/988033#M17876</link>
    <description>&lt;DIV&gt;&lt;/DIV&gt;
&lt;DIV&gt;We are seeing some strange performance with the dgemm operator, which seems to depend upon the content of the source matrices. Content, not size. It is very strange, as if we use the same matrix sizes with randomly generated data (uniform or normal) or a constant value then everything appears fine and the timings are relatively consistent. The data doesn't seem too strange:&lt;/DIV&gt;
&lt;DIV&gt;&lt;/DIV&gt;
&lt;DIV&gt;&lt;FONT size="2"&gt;&lt;FONT color="#000080"&gt;Max: 0.0997145, Min: -0.3362, Avg: -3.5246e-006&lt;/FONT&gt;&lt;/FONT&gt;&lt;/DIV&gt;
&lt;DIV&gt;&lt;FONT color="#000080" size="2"&gt;&lt;/FONT&gt;&lt;/DIV&gt;
&lt;DIV&gt;Most of the values hover close to that average, but with a few spikes clustered mostly in one area. What I can't understand is why that would have any effect on the performance, no matter what the values were. It is just a matrix multiplication, right?&lt;/DIV&gt;
&lt;DIV&gt;&lt;/DIV&gt;</description>
    <pubDate>Thu, 23 Jun 2005 05:20:06 GMT</pubDate>
    <dc:creator>seanm</dc:creator>
    <dc:date>2005-06-23T05:20:06Z</dc:date>
    <item>
      <title>dgemm performance</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/dgemm-performance/m-p/988033#M17876</link>
      <description>&lt;DIV&gt;&lt;/DIV&gt;
&lt;DIV&gt;We are seeing some strange performance with the dgemm operator, which seems to depend upon the content of the source matrices. Content, not size. It is very strange, as if we use the same matrix sizes with randomly generated data (uniform or normal) or a constant value then everything appears fine and the timings are relatively consistent. The data doesn't seem too strange:&lt;/DIV&gt;
&lt;DIV&gt;&lt;/DIV&gt;
&lt;DIV&gt;&lt;FONT size="2"&gt;&lt;FONT color="#000080"&gt;Max: 0.0997145, Min: -0.3362, Avg: -3.5246e-006&lt;/FONT&gt;&lt;/FONT&gt;&lt;/DIV&gt;
&lt;DIV&gt;&lt;FONT color="#000080" size="2"&gt;&lt;/FONT&gt;&lt;/DIV&gt;
&lt;DIV&gt;Most of the values hover close to that average, but with a few spikes clustered mostly in one area. What I can't understand is why that would have any effect on the performance, no matter what the values were. It is just a matrix multiplication, right?&lt;/DIV&gt;
&lt;DIV&gt;&lt;/DIV&gt;</description>
      <pubDate>Thu, 23 Jun 2005 05:20:06 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/dgemm-performance/m-p/988033#M17876</guid>
      <dc:creator>seanm</dc:creator>
      <dc:date>2005-06-23T05:20:06Z</dc:date>
    </item>
    <item>
      <title>Re: dgemm performance</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/dgemm-performance/m-p/988034#M17877</link>
      <description>If you have multiplication producing results small enough to incur underflow ( less than 1e-308), that could take a great deal of time, particularly on Itanium. In that case, for SSE2 or Itanium code, setting "flush to zero" (abrupt underflow) should help, if you haven't already done so. For 64-bit Windows, the OS will do that, unless you have the wrong beta version. Otherwise, you would invoke it by setting the -Qftz or -ftz option when you compile the main program with Intel compilers (implied by -O3 in some cases), or by using the&lt;BR /&gt;_MM_SET_FLUSH_ZERO_MODE (_MM_FLUSH_ZERO_ON);&lt;BR /&gt;facility defined for C/C++ in &lt;BR /&gt;&lt;BR /&gt;So, you can see my answer would have been more to the point if you had given more information.</description>
      <pubDate>Thu, 23 Jun 2005 07:09:58 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/dgemm-performance/m-p/988034#M17877</guid>
      <dc:creator>TimP</dc:creator>
      <dc:date>2005-06-23T07:09:58Z</dc:date>
    </item>
    <item>
      <title>Re: dgemm performance</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/dgemm-performance/m-p/988035#M17878</link>
      <description>&lt;DIV&gt;Thanks! That does appear to be the source of the problem. You have my eternal gratitude. &lt;/DIV&gt;</description>
      <pubDate>Thu, 23 Jun 2005 07:46:38 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/dgemm-performance/m-p/988035#M17878</guid>
      <dc:creator>seanm</dc:creator>
      <dc:date>2005-06-23T07:46:38Z</dc:date>
    </item>
  </channel>
</rss>

