<?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 Re: Sparse BLAS initialization of C in C=(alpha*A*B + beta* C)  in Intel® oneAPI Math Kernel Library</title>
    <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Sparse-BLAS-initialization-of-C-in-C-alpha-A-B-beta-C-when-beta/m-p/854527#M6843</link>
    <description>&lt;DIV style="margin:0px;"&gt;
&lt;DIV id="quote_reply" style="width: 100%; margin-top: 5px;"&gt;
&lt;DIV style="margin-left:2px;margin-right:2px;"&gt;
&lt;DIV style="margin-left:2px;margin-right:2px;"&gt;But 0 * NaN&lt;EM&gt;should&lt;/EM&gt; equal NaN, no?&lt;/DIV&gt;
&lt;DIV style="margin-left:2px;margin-right:2px;"&gt;&lt;/DIV&gt;
&lt;DIV style="margin-left:2px;margin-right:2px;"&gt;As in:&lt;/DIV&gt;
&lt;DIV style="margin-left:2px;margin-right:2px;"&gt;&lt;/DIV&gt;
&lt;DIV style="margin-left:2px;margin-right:2px;"&gt;double n = 0 * std::numeric_limits&lt;DOUBLE&gt;::quiet_NaN();&lt;/DOUBLE&gt;&lt;/DIV&gt;
&lt;DIV style="margin-left:2px;margin-right:2px;"&gt;printf("%f", n);&lt;/DIV&gt;
&lt;DIV style="margin-left:2px;margin-right:2px;"&gt;&lt;/DIV&gt;
&lt;DIV style="margin-left:2px;margin-right:2px;"&gt;which outputs: 1.#QNAN0&lt;/DIV&gt;
&lt;/DIV&gt;
&lt;/DIV&gt;
&lt;/DIV&gt;</description>
    <pubDate>Fri, 27 Feb 2009 11:37:05 GMT</pubDate>
    <dc:creator>juhar</dc:creator>
    <dc:date>2009-02-27T11:37:05Z</dc:date>
    <item>
      <title>Sparse BLAS initialization of C in C=(alpha*A*B + beta* C) when beta=0.0</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Sparse-BLAS-initialization-of-C-in-C-alpha-A-B-beta-C-when-beta/m-p/854525#M6841</link>
      <description>There are a number of Sparse BLAS routines such as mkl_?cscmm etc that compute, say,C=(alpha*A*B + beta* C) or similar.
&lt;DIV&gt;
&lt;DIV&gt;&lt;BR /&gt;&lt;/DIV&gt;
&lt;DIV&gt;I would assume that if beta==0.0 that the matrix C does not need to be initialized to 0.0 ( or any other value). That is that MKL will &lt;SPAN style="font-weight: bold;"&gt;not&lt;/SPAN&gt; do the beta*C operation if beta is identically 0.0. It is not clear from the documentation.&lt;/DIV&gt;
&lt;DIV&gt;&lt;BR /&gt;&lt;/DIV&gt;
&lt;DIV&gt;I ask this as I have found this NOT to be the case with mkl_?cscmm. I was not initializing C. Most of the time this is ok, as all entries of beta*C will evaluate to 0.0. However, sometimes, the un-initialized memory of C would randomly be some kind of NaN, and beta(0.0) * NaNevaluatedto a NaN which polluted the resultant matrix.&lt;/DIV&gt;
&lt;DIV&gt;&lt;BR /&gt;&lt;/DIV&gt;
&lt;DIV&gt;zgemm(3) does not have this 'problem'. It specifically says "When beta is equal to zero, then c need not be set on input".&lt;/DIV&gt;
&lt;DIV&gt;&lt;BR /&gt;&lt;/DIV&gt;
&lt;/DIV&gt;</description>
      <pubDate>Thu, 29 Jan 2009 19:53:49 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Sparse-BLAS-initialization-of-C-in-C-alpha-A-B-beta-C-when-beta/m-p/854525#M6841</guid>
      <dc:creator>AndrewC</dc:creator>
      <dc:date>2009-01-29T19:53:49Z</dc:date>
    </item>
    <item>
      <title>Re: Sparse BLAS initialization of C in C=(alpha*A*B + beta* C)</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Sparse-BLAS-initialization-of-C-in-C-alpha-A-B-beta-C-when-beta/m-p/854526#M6842</link>
      <description>&lt;DIV style="margin:0px;"&gt;Vasci, yes this is the bug and we will work at this problem in the next version.&lt;BR /&gt;--Gennady&lt;/DIV&gt;
&lt;BR /&gt;</description>
      <pubDate>Fri, 30 Jan 2009 14:57:52 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Sparse-BLAS-initialization-of-C-in-C-alpha-A-B-beta-C-when-beta/m-p/854526#M6842</guid>
      <dc:creator>Gennady_F_Intel</dc:creator>
      <dc:date>2009-01-30T14:57:52Z</dc:date>
    </item>
    <item>
      <title>Re: Sparse BLAS initialization of C in C=(alpha*A*B + beta* C)</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Sparse-BLAS-initialization-of-C-in-C-alpha-A-B-beta-C-when-beta/m-p/854527#M6843</link>
      <description>&lt;DIV style="margin:0px;"&gt;
&lt;DIV id="quote_reply" style="width: 100%; margin-top: 5px;"&gt;
&lt;DIV style="margin-left:2px;margin-right:2px;"&gt;
&lt;DIV style="margin-left:2px;margin-right:2px;"&gt;But 0 * NaN&lt;EM&gt;should&lt;/EM&gt; equal NaN, no?&lt;/DIV&gt;
&lt;DIV style="margin-left:2px;margin-right:2px;"&gt;&lt;/DIV&gt;
&lt;DIV style="margin-left:2px;margin-right:2px;"&gt;As in:&lt;/DIV&gt;
&lt;DIV style="margin-left:2px;margin-right:2px;"&gt;&lt;/DIV&gt;
&lt;DIV style="margin-left:2px;margin-right:2px;"&gt;double n = 0 * std::numeric_limits&lt;DOUBLE&gt;::quiet_NaN();&lt;/DOUBLE&gt;&lt;/DIV&gt;
&lt;DIV style="margin-left:2px;margin-right:2px;"&gt;printf("%f", n);&lt;/DIV&gt;
&lt;DIV style="margin-left:2px;margin-right:2px;"&gt;&lt;/DIV&gt;
&lt;DIV style="margin-left:2px;margin-right:2px;"&gt;which outputs: 1.#QNAN0&lt;/DIV&gt;
&lt;/DIV&gt;
&lt;/DIV&gt;
&lt;/DIV&gt;</description>
      <pubDate>Fri, 27 Feb 2009 11:37:05 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Sparse-BLAS-initialization-of-C-in-C-alpha-A-B-beta-C-when-beta/m-p/854527#M6843</guid>
      <dc:creator>juhar</dc:creator>
      <dc:date>2009-02-27T11:37:05Z</dc:date>
    </item>
    <item>
      <title>Re: Sparse BLAS initialization of C in C=(alpha*A*B + beta* C)</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Sparse-BLAS-initialization-of-C-in-C-alpha-A-B-beta-C-when-beta/m-p/854528#M6844</link>
      <description>&lt;DIV style="margin:0px;"&gt;
&lt;DIV id="quote_reply" style="margin-top: 5px; width: 100%;"&gt;
&lt;DIV style="margin-left:2px;margin-right:2px;"&gt;Quoting - &lt;A href="https://community.intel.com/en-us/profile/334681"&gt;Gennady Fedorov (Intel)&lt;/A&gt;&lt;/DIV&gt;
&lt;DIV style="background-color:#E5E5E5; padding:5px;border: 1px; border-style: inset;margin-left:2px;margin-right:2px;"&gt;&lt;EM&gt;
&lt;DIV style="margin:0px;"&gt;Vasci, yes this is the bug and we will work at this problem in the next version.&lt;BR /&gt;--Gennady&lt;/DIV&gt;
&lt;BR /&gt;&lt;/EM&gt;&lt;/DIV&gt;
&lt;/DIV&gt;
&lt;/DIV&gt;
&lt;BR /&gt;Hi Vasci,&lt;BR /&gt;&lt;BR /&gt;The problem you reported was fixed in the version 10.2.&lt;BR /&gt;This version available for download from intel registration center: &lt;A href="https://registrationcenter.intel.com/" target="_blank"&gt;https://registrationcenter.intel.com/&lt;/A&gt;&lt;BR /&gt;&lt;BR /&gt;I am closing the issue.&lt;BR /&gt;You can reopen this issue within 30 days or open a new one &lt;BR /&gt;if you will encounter further problem with this issue.&lt;BR /&gt;&lt;BR /&gt;Regards, Gennady&lt;BR /&gt;Please see below the output for the MKL 10.1 and MKL 10.2 versions:&lt;BR /&gt;&lt;BR /&gt;==================== MKL 10.1 ==========================&lt;BR /&gt;&lt;BR /&gt;EXAMPLE PROGRAM FOR COMPRESSED SPARSE ROW FORMAT ROUTINES&lt;BR /&gt;&lt;BR /&gt;INPUT DATA FOR MKL_DCSCMM&lt;BR /&gt;WITH TRIANGULAR MATRIX&lt;BR /&gt;M = 5 N = 2&lt;BR /&gt;ALPHA = 1.0 BETA = 0.0&lt;BR /&gt;TRANS = 'T'&lt;BR /&gt;Input matrix&lt;BR /&gt;1.0 5.0&lt;BR /&gt;1.0 4.0&lt;BR /&gt;1.0 3.0&lt;BR /&gt;1.0 2.0&lt;BR /&gt;1.0 1.0&lt;BR /&gt;&lt;BR /&gt;OUTPUT DATA FOR MKL_DCSCMM&lt;BR /&gt;WITH TRIANGULAR MATRIX&lt;BR /&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; -1.$ &amp;gt;&amp;gt;&amp;gt;&amp;gt; -1.$&lt;BR /&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; -1.$ &amp;gt;&amp;gt;&amp;gt;&amp;gt; -1.$&lt;BR /&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; -1.$ &amp;gt;&amp;gt;&amp;gt;&amp;gt; -1.$&lt;BR /&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; -1.$ &amp;gt;&amp;gt;&amp;gt;&amp;gt; -1.$&lt;BR /&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; -1.$ &amp;gt;&amp;gt;&amp;gt;&amp;gt; -1.$&lt;BR /&gt;Press any key to continue . . .&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;==================== MKL 10.2 ===========================&lt;BR /&gt;&lt;BR /&gt;EXAMPLE PROGRAM FOR COMPRESSED SPARSE ROW FORMAT ROUTINES&lt;BR /&gt;&lt;BR /&gt;INPUT DATA FOR MKL_DCSCMM&lt;BR /&gt;WITH TRIANGULAR MATRIX&lt;BR /&gt;M = 5 N = 2&lt;BR /&gt;ALPHA = 1.0 BETA = 0.0&lt;BR /&gt;TRANS = 'T'&lt;BR /&gt;Input matrix&lt;BR /&gt;1.0 5.0&lt;BR /&gt;1.0 4.0&lt;BR /&gt;1.0 3.0&lt;BR /&gt;1.0 2.0&lt;BR /&gt;1.0 1.0&lt;BR /&gt;&lt;BR /&gt;OUTPUT DATA FOR MKL_DCSCMM&lt;BR /&gt;WITH TRIANGULAR MATRIX&lt;BR /&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; -5.0 &amp;gt;&amp;gt;&amp;gt;&amp;gt; -11.0&lt;BR /&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; 13.0 &amp;gt;&amp;gt;&amp;gt;&amp;gt; 28.0&lt;BR /&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; 6.0 &amp;gt;&amp;gt;&amp;gt;&amp;gt; 16.0&lt;BR /&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; 7.0 &amp;gt;&amp;gt;&amp;gt;&amp;gt; 14.0&lt;BR /&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; -5.0 &amp;gt;&amp;gt;&amp;gt;&amp;gt; -5.0&lt;BR /&gt;Press any key to continue . . .&lt;BR /&gt;&lt;BR /&gt;--Gennady</description>
      <pubDate>Wed, 24 Jun 2009 06:22:04 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Sparse-BLAS-initialization-of-C-in-C-alpha-A-B-beta-C-when-beta/m-p/854528#M6844</guid>
      <dc:creator>Gennady_F_Intel</dc:creator>
      <dc:date>2009-06-24T06:22:04Z</dc:date>
    </item>
  </channel>
</rss>

