<?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 DftiComputeForward vs dzfft1dc in Intel® oneAPI Math Kernel Library</title>
    <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/DftiComputeForward-vs-dzfft1dc/m-p/786678#M1892</link>
    <description>Hi,&lt;BR /&gt;&lt;BR /&gt;Thanks for the reply.&lt;BR /&gt;&lt;BR /&gt;I tried compliling and running both versions n 32-bit itself and compared the values just to see if what i am doing is correct or not.&lt;BR /&gt;&lt;BR /&gt;What i wanted to know is in the older verion(dzfft1dc) we had to give the array size as n+2. Is it the same in the new version also?&lt;BR /&gt;&lt;BR /&gt;Is there any site where it gives the actual comparison between the old and the new ones?&lt;BR /&gt;&lt;BR /&gt;Thanks &amp;amp; Regards,&lt;BR /&gt;Melbin</description>
    <pubDate>Mon, 14 Mar 2011 05:22:36 GMT</pubDate>
    <dc:creator>melbinmathew1</dc:creator>
    <dc:date>2011-03-14T05:22:36Z</dc:date>
    <item>
      <title>DftiComputeForward vs dzfft1dc</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/DftiComputeForward-vs-dzfft1dc/m-p/786676#M1890</link>
      <description>Hi,&lt;BR /&gt;&lt;BR /&gt;I have the old code of MKL which was using the dzfft1dc for forward transform and zdfft1dc for backward transform. Now i want to use the new MKL having the DftiComputeForward and DftiComputeBackward as the previous MKL library was not supporting 64-bit. I tried doing it but the ouput is having a huge varition from the older version.&lt;BR /&gt;&lt;BR /&gt;This is the usage in the old code for forward transform:&lt;BR /&gt;double *x, *wsave;&lt;BR /&gt;&lt;P&gt;const long n=1&amp;lt;&amp;lt;11;&lt;BR /&gt;x = new double[n+2];&lt;BR /&gt;wsave = new double[2*n+4];&lt;BR /&gt;ZeroMemory(x, (n+2)*sizeof(double));&lt;BR /&gt;CopyMemory(x, vIn,vIn.size()*sizeof(double));&lt;BR /&gt;dzfft1dc(x, n, 0, wsave);&lt;BR /&gt;dzfft1dc(x, n, 1, wsave);&lt;BR /&gt;&lt;BR /&gt;This is the usage in the old code forBackward transform:&lt;BR /&gt;&lt;BR /&gt;zdfft1dc(x, n, 0, wsave);&lt;BR /&gt;zdfft1dc(x, n, 1, wsave);&lt;BR /&gt;&lt;BR /&gt;With the new code i tried like this for Forward transform:&lt;BR /&gt;----------------------------------------------------------------&lt;/P&gt;&lt;P&gt;DFTI_DESCRIPTOR_HANDLE handle;&lt;/P&gt;&lt;P&gt;long ret = DftiCreateDescriptor(&amp;amp;handle,&lt;/P&gt;&lt;P&gt;(DFTI_CONFIG_VALUE)DFTI_DOUBLE , (DFTI_CONFIG_VALUE)DFTI_REAL , 1, length);&lt;/P&gt;&lt;P&gt;long setval1 = DftiSetValue(handle, (DFTI_CONFIG_PARAM)DFTI_PLACEMENT, (DFTI_CONFIG_VALUE)DFTI_INPLACE);&lt;/P&gt;&lt;P&gt;long setval2 = DftiSetValue(handle, (DFTI_CONFIG_PARAM)DFTI_PACKED_FORMAT, (DFTI_CONFIG_VALUE)DFTI_PACK_FORMAT);&lt;/P&gt;&lt;P&gt;long comval = DftiCommitDescriptor(handle); &lt;/P&gt;&lt;P&gt;long retfor = DftiComputeForward(handle,vIn);&lt;/P&gt;&lt;P&gt;long retfree = DftiFreeDescriptor(&amp;amp;handle);&lt;/P&gt;&lt;P&gt;With the new code i tried like this for backward transform:&lt;BR /&gt;-------------------------------------------------------------------&lt;/P&gt;&lt;P&gt;DFTI_DESCRIPTOR_HANDLE handlebak;&lt;/P&gt;&lt;P&gt;long retbak = DftiCreateDescriptor(&amp;amp;handlebak,&lt;/P&gt;&lt;P&gt;(DFTI_CONFIG_VALUE)DFTI_DOUBLE , (DFTI_CONFIG_VALUE)DFTI_REAL , 1, length);&lt;/P&gt;&lt;P&gt;long transform_size = length;&lt;/P&gt;&lt;P&gt;double scale_factor = 1.0 / transform_size;&lt;/P&gt;&lt;P&gt;int setval = DftiSetValue(handlebak, (DFTI_CONFIG_PARAM)DFTI_BACKWARD_SCALE, scale_factor); &lt;/P&gt;&lt;P&gt;long setvalbak1 = DftiSetValue(handlebak, (DFTI_CONFIG_PARAM)DFTI_PLACEMENT, (DFTI_CONFIG_VALUE)DFTI_NOT_INPLACE);&lt;/P&gt;&lt;P&gt;long setvalbak2 = DftiSetValue(handlebak, (DFTI_CONFIG_PARAM)DFTI_PACKED_FORMAT, (DFTI_CONFIG_VALUE)DFTI_PACK_FORMAT);&lt;/P&gt;&lt;P&gt;long comvalbak = DftiCommitDescriptor(handlebak); &lt;/P&gt;&lt;P&gt;long retbakr = DftiComputeBackward(handlebak,vIn,vOut);&lt;/P&gt;&lt;P&gt;long retfreebak = DftiFreeDescriptor(&amp;amp;handlebak);&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;What i wanted to know is the setting which i doin the old code and the new code are same or not? &lt;BR /&gt;Like the settings which i do using the DftiSetValue is proper or not when we compare the old code and the new code.&lt;BR /&gt;&lt;BR /&gt;Thanks, &lt;BR /&gt;Melbin&lt;/P&gt;</description>
      <pubDate>Tue, 08 Mar 2011 06:52:15 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/DftiComputeForward-vs-dzfft1dc/m-p/786676#M1890</guid>
      <dc:creator>melbinmathew1</dc:creator>
      <dc:date>2011-03-08T06:52:15Z</dc:date>
    </item>
    <item>
      <title>DftiComputeForward vs dzfft1dc</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/DftiComputeForward-vs-dzfft1dc/m-p/786677#M1891</link>
      <description>Hi &lt;LABEL&gt;melbinmathew1&lt;STRONG&gt;,&lt;BR /&gt;&lt;BR /&gt;&lt;/STRONG&gt;The issue that you describe may be caused by an inconsistent link line -- 32-bit integers at compile time but 64-bit integers at run time.&lt;BR /&gt;Did you check &lt;A href="http://software.intel.com/en-us/articles/intel-mkl-link-line-advisor/"&gt;Intel MKL Link Line Advisor&lt;/A&gt;?&lt;BR /&gt;&lt;/LABEL&gt;</description>
      <pubDate>Thu, 10 Mar 2011 18:44:26 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/DftiComputeForward-vs-dzfft1dc/m-p/786677#M1891</guid>
      <dc:creator>Evgueni_P_Intel</dc:creator>
      <dc:date>2011-03-10T18:44:26Z</dc:date>
    </item>
    <item>
      <title>DftiComputeForward vs dzfft1dc</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/DftiComputeForward-vs-dzfft1dc/m-p/786678#M1892</link>
      <description>Hi,&lt;BR /&gt;&lt;BR /&gt;Thanks for the reply.&lt;BR /&gt;&lt;BR /&gt;I tried compliling and running both versions n 32-bit itself and compared the values just to see if what i am doing is correct or not.&lt;BR /&gt;&lt;BR /&gt;What i wanted to know is in the older verion(dzfft1dc) we had to give the array size as n+2. Is it the same in the new version also?&lt;BR /&gt;&lt;BR /&gt;Is there any site where it gives the actual comparison between the old and the new ones?&lt;BR /&gt;&lt;BR /&gt;Thanks &amp;amp; Regards,&lt;BR /&gt;Melbin</description>
      <pubDate>Mon, 14 Mar 2011 05:22:36 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/DftiComputeForward-vs-dzfft1dc/m-p/786678#M1892</guid>
      <dc:creator>melbinmathew1</dc:creator>
      <dc:date>2011-03-14T05:22:36Z</dc:date>
    </item>
    <item>
      <title>DftiComputeForward vs dzfft1dc</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/DftiComputeForward-vs-dzfft1dc/m-p/786679#M1893</link>
      <description>&lt;P&gt;Hi &lt;LABEL&gt;melbinmathew1,&lt;BR /&gt;Yes,in-place real-to-complex FFT of length n=2^11 requires a realarray of length n+2.&lt;BR /&gt;No, we don't provide any documentthat compares DFTI and FFT API in MKL 8.0 and beforeexcept the fft2dfti wrappersin MKL 9.0.&lt;BR /&gt;&lt;BR /&gt;BTW, dzfft1dc and DftiComputeForward for real-to-complex in-place FFT store outputs differently.&lt;BR /&gt;dzfft1dc stores real parts in elements 0, 1, ..., n/2 and imaginary partsin elements n/2+1, n/2+2, ..., 2*(n/2)+1.&lt;BR /&gt;DftiComputeForward stores real parts in elements 0, 2, 4, ..., 2*(n/2) and imaginary parts in elements 1, 3, 5, ..., 2*(n/2)+1.&lt;BR /&gt;&lt;BR /&gt;Evgueni&lt;/LABEL&gt;&lt;/P&gt;</description>
      <pubDate>Wed, 16 Mar 2011 06:49:02 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/DftiComputeForward-vs-dzfft1dc/m-p/786679#M1893</guid>
      <dc:creator>Evgueni_P_Intel</dc:creator>
      <dc:date>2011-03-16T06:49:02Z</dc:date>
    </item>
  </channel>
</rss>

