<?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 Initializing matrices for dgemm (beginner question) in Intel® oneAPI Math Kernel Library</title>
    <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Initializing-matrices-for-dgemm-beginner-question/m-p/791434#M2253</link>
    <description>Thanks for the feedback. Precisely for these purposes and has been written this article.&lt;DIV&gt;--Gennady&lt;/DIV&gt;</description>
    <pubDate>Fri, 25 Jun 2010 05:06:59 GMT</pubDate>
    <dc:creator>Gennady_F_Intel</dc:creator>
    <dc:date>2010-06-25T05:06:59Z</dc:date>
    <item>
      <title>Initializing matrices for dgemm (beginner question)</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Initializing-matrices-for-dgemm-beginner-question/m-p/791431#M2250</link>
      <description>I would expect the following C code...&lt;DIV&gt;&lt;SPAN style="font-family: Verdana, Arial, Helvetica, sans-serif;"&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;DIV&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;P&gt;	double	a[3*3] = {	0.3804, -0.7225, 0.5774,&lt;/P&gt;&lt;P&gt;            -0.8159, 0.0318, 0.5774,&lt;/P&gt;&lt;P&gt;             0.4355, 0.6907, 0.5774};&lt;/P&gt;&lt;DIV&gt;&lt;/DIV&gt;&lt;P&gt;double	b[3*6] = { 1.0006, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000,&lt;/P&gt;
&lt;P&gt;             0.0000, 0.4887, 0.0000, 0.0000, 0.0000, 0.0000,&lt;/P&gt;&lt;P&gt;             0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000};&lt;/P&gt;
&lt;P&gt;double	c[3*6] = {	0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000,&lt;/P&gt;&lt;P&gt;             0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000,&lt;/P&gt;&lt;P&gt;             0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000};&lt;/P&gt;
&lt;P&gt;int    m = 3;&lt;/P&gt;
&lt;P&gt;	int    n = 6;&lt;/P&gt;
&lt;P&gt;	int    k = 3;&lt;/P&gt;
&lt;P&gt;	double alpha = 1;&lt;/P&gt;
&lt;P&gt;	double beta = 0;&lt;/P&gt;
&lt;P&gt;	int    lda = m;&lt;/P&gt;
&lt;P&gt;	int    ldb = k;&lt;/P&gt;
&lt;P&gt;	int    ldc = m;&lt;/P&gt;
&lt;P&gt;	dgemm("N", "N", &amp;amp;m, &amp;amp;n, &amp;amp;k, α, a, &amp;amp;lda, b, &amp;amp;ldb, β, c, &amp;amp;ldc);&lt;/P&gt;&lt;DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV&gt;...to fill matrix c with:&lt;/DIV&gt;&lt;DIV&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;P&gt;0.3806, -0.3531, 0.0000, 0.0000, 0.0000, 0.0000,&lt;/P&gt;&lt;P&gt;-0.8164, 0.0155, 0.0000, 0.0000, 0.0000, 0.0000,&lt;/P&gt;&lt;P&gt;0.4358, 0.3375, 0.0000, 0.0000, 0.0000, 0.0000&lt;/P&gt;&lt;/DIV&gt;&lt;DIV&gt;My own matrix multiplication code does this, MATLAB does this, and the first 2 matrix multiplication apps that I tried online produced the above result. (http://www.bluebit.gr/matrix-calculator/matrix_multiplication.aspx)&lt;/DIV&gt;&lt;DIV&gt;&lt;/DIV&gt;&lt;DIV&gt;dgemm will only return a similar result if I first transpose matrix a (it returns the same numbers but transposed). What am I doing wrong?&lt;/DIV&gt;</description>
      <pubDate>Wed, 23 Jun 2010 21:14:25 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Initializing-matrices-for-dgemm-beginner-question/m-p/791431#M2250</guid>
      <dc:creator>psinclairegi_com</dc:creator>
      <dc:date>2010-06-23T21:14:25Z</dc:date>
    </item>
    <item>
      <title>Initializing matrices for dgemm (beginner question)</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Initializing-matrices-for-dgemm-beginner-question/m-p/791432#M2251</link>
      <description>please try to usecblas_dgemm() instead of dgemm().&lt;DIV&gt;Please look at this &lt;A href="http://software.intel.com/en-us/articles/intel-math-kernel-library-intel-mkl-blas-cblas-and-lapack-compilinglinking-functions-fortran-and-cc-calls/"&gt;article&lt;/A&gt;. May be it will usefull.&lt;/DIV&gt;&lt;DIV&gt;--Gennady&lt;/DIV&gt;</description>
      <pubDate>Thu, 24 Jun 2010 03:58:30 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Initializing-matrices-for-dgemm-beginner-question/m-p/791432#M2251</guid>
      <dc:creator>Gennady_F_Intel</dc:creator>
      <dc:date>2010-06-24T03:58:30Z</dc:date>
    </item>
    <item>
      <title>Initializing matrices for dgemm (beginner question)</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Initializing-matrices-for-dgemm-beginner-question/m-p/791433#M2252</link>
      <description>"...Be sure to store data Fortran-style, i.e. data stored column-major rather than row-major order. We recommend that C and C++ programmers use the CBLAS interface to avoid simple mistakes when following these conventions.."&lt;DIV&gt;&lt;/DIV&gt;&lt;DIV&gt;Thank you very much. Works fine now.&lt;/DIV&gt;</description>
      <pubDate>Thu, 24 Jun 2010 19:24:43 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Initializing-matrices-for-dgemm-beginner-question/m-p/791433#M2252</guid>
      <dc:creator>psinclairegi_com</dc:creator>
      <dc:date>2010-06-24T19:24:43Z</dc:date>
    </item>
    <item>
      <title>Initializing matrices for dgemm (beginner question)</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Initializing-matrices-for-dgemm-beginner-question/m-p/791434#M2253</link>
      <description>Thanks for the feedback. Precisely for these purposes and has been written this article.&lt;DIV&gt;--Gennady&lt;/DIV&gt;</description>
      <pubDate>Fri, 25 Jun 2010 05:06:59 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Initializing-matrices-for-dgemm-beginner-question/m-p/791434#M2253</guid>
      <dc:creator>Gennady_F_Intel</dc:creator>
      <dc:date>2010-06-25T05:06:59Z</dc:date>
    </item>
  </channel>
</rss>

