<?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: FFT 3D in Intel® Integrated Performance Primitives</title>
    <link>https://community.intel.com/t5/Intel-Integrated-Performance/FFT-3D/m-p/881365#M10236</link>
    <description>&lt;P&gt;Hallo,&lt;/P&gt;
&lt;P&gt;Thank you for your quick response. &lt;/P&gt;
&lt;P&gt;Now I want to do the FFT3D inverse, so I have to do in the same way but in the reverse order. That means &lt;/P&gt;
&lt;P&gt;1. NX * NY calculation of FFT1D inversefor NZ size&lt;/P&gt;
&lt;P&gt;2. NZ calculation of FFT2D inverse for size NX * NY&lt;/P&gt;
&lt;P&gt;Is that correct?&lt;/P&gt;
&lt;P&gt;Regards&lt;/P&gt;
&lt;P&gt;Anh&lt;/P&gt;</description>
    <pubDate>Thu, 22 Feb 2007 08:29:05 GMT</pubDate>
    <dc:creator>mickeyhah</dc:creator>
    <dc:date>2007-02-22T08:29:05Z</dc:date>
    <item>
      <title>FFT 3D</title>
      <link>https://community.intel.com/t5/Intel-Integrated-Performance/FFT-3D/m-p/881363#M10234</link>
      <description>&lt;P&gt;Hallo,&lt;/P&gt;
&lt;P&gt;I want to ask about how we perform FFT3D. Actually I already did it, but the result is different from what I expected.&lt;/P&gt;
&lt;P&gt;Here is my code&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;&lt;FONT size="2"&gt;
&lt;P&gt;ippiFFTInitAlloc_C_32fc(&amp;amp;spec2D, 4, 3, IPP_FFT_DIV_INV_BY_N, ippAlgHintNone);&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT color="#0000ff" size="2"&gt;for&lt;/FONT&gt;&lt;FONT size="2"&gt; (k=0; k&lt;NZ&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;&lt;/NZ&gt;&lt;/FONT&gt;&lt;FONT color="#008000" size="2"&gt;//dst: 2-dimensional array&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt;
&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt;status2D = ippiFFTFwd_CToC_32fc_C1R((Ipp32fc*)input+NX/2*NY*k, 16*&lt;/FONT&gt;&lt;FONT color="#0000ff" size="2"&gt;sizeof&lt;/FONT&gt;&lt;FONT size="2"&gt;(Ipp32fc), dst2D, 16*&lt;/FONT&gt;&lt;FONT color="#0000ff" size="2"&gt;sizeof&lt;/FONT&gt;&lt;FONT size="2"&gt;(Ipp32fc), spec2D, NULL);&lt;P&gt;&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT color="#008000" size="2"&gt;//spread the 2D array to 1D array.&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt;
&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT color="#0000ff" size="2"&gt;for&lt;/FONT&gt;&lt;FONT size="2"&gt; (i=0; i&lt;NX&gt;
&lt;P&gt;dst_tmp[k*NX/2*NY+i]=dst2D&lt;I&gt;;&lt;/I&gt;&lt;/P&gt;&lt;/NX&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt;
&lt;P&gt;}&lt;/P&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt;
&lt;P&gt;ippiFFTFree_C_32fc(spec2D); &lt;/P&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt;
&lt;P&gt;status1D=ippsFFTInitAlloc_C_32fc(&amp;amp;spec1D, 9, IPP_FFT_DIV_INV_BY_N, ippAlgHintNone);&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt;status1D = ippsFFTFwd_CToC_32fc(dst_tmp, output, spec1D, pBuffer1D);&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT size="2"&gt;
&lt;P&gt;ippsFFTFree_C_32fc(spec1D);&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;Aremy code and my method for calculating FFT3D correct?&lt;/P&gt;
&lt;P&gt;Thank you for your help&lt;/P&gt;
&lt;P&gt;Regards&lt;/P&gt;
&lt;P&gt;Anh Ngo&lt;/P&gt;&lt;/FONT&gt;</description>
      <pubDate>Wed, 21 Feb 2007 11:35:37 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Integrated-Performance/FFT-3D/m-p/881363#M10234</guid>
      <dc:creator>mickeyhah</dc:creator>
      <dc:date>2007-02-21T11:35:37Z</dc:date>
    </item>
    <item>
      <title>Re: FFT 3D</title>
      <link>https://community.intel.com/t5/Intel-Integrated-Performance/FFT-3D/m-p/881364#M10235</link>
      <description>&lt;P&gt;Hello,&lt;/P&gt;
&lt;P&gt;there is comment from our expert:&lt;/P&gt;
&lt;P&gt;FFT3D for NX * NY * NZ can be splitted into two phases,&lt;/P&gt;
&lt;P&gt;1. NZ calculation of FFT2D for size NX * NY&lt;/P&gt;
&lt;P&gt;2. NX * NY calculation of FFT1D for NZ size&lt;/P&gt;
&lt;P&gt;so recomendation is to use something like this&lt;/P&gt;&lt;PRE&gt;&lt;FONT size="2"&gt;&lt;P&gt;NX = 1&amp;lt;&lt;ORDERX&gt;&lt;/ORDERX&gt;&lt;/P&gt;&lt;P&gt;NY = 1&amp;lt;&lt;ORDERY&gt;&lt;/ORDERY&gt;&lt;/P&gt;&lt;P&gt;NZ = 1&amp;lt;&lt;ORDERZ&gt;&lt;/ORDERZ&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ippiFFTInitAlloc_C_32fc(&amp;amp;spec2D, orderX, orderY, IPP_FFT_DIV_INV_BY_N, ippAlgHintNone);&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;for (k=0; k&lt;NZ&gt;&lt;/NZ&gt;&lt;/P&gt;&lt;P&gt;  status2D = ippiFFTFwd_CToC_32fc_C1R((Ipp32fc*)input+NX*NY*k, 16*sizeof(Ipp32fc), (Ipp32fc*)output+NX*NY*k, 16*sizeof(Ipp32fc), spec2D, NULL);&lt;/P&gt;&lt;P&gt;}&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ippiFFTFree_C_32fc(spec2D); &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;status1D = ippsFFTInitAlloc_C_32fc(&amp;amp;spec1D, orderZ, IPP_FFT_DIV_INV_BY_N, ippAlgHintNone);&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;for (i=0; i&lt;NX&gt;&lt;/NX&gt;&lt;/P&gt;&lt;P&gt;  for (j=0; j&lt;NY&gt;&lt;/NY&gt;&lt;/P&gt;&lt;P&gt;    for (k=0; k&lt;NZ&gt;&lt;/NZ&gt;&lt;/P&gt;&lt;P&gt;      tmp&lt;K&gt;=output[i+NX*j+NX*NY*k]&lt;/K&gt;&lt;/P&gt;&lt;P&gt;    }&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    status1D = ippsFFTFwd_CToC_32fc(tmp, tmp, spec1D, pBuffer1D);&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    for (k=0; k&lt;NZ&gt;&lt;/NZ&gt;&lt;/P&gt;&lt;P&gt;      output[i+NX*j+NX*NY*k]= tmp&lt;K&gt;;&lt;/K&gt;&lt;/P&gt;&lt;P&gt;    }&lt;/P&gt;&lt;P&gt;  }&lt;/P&gt;&lt;P&gt;}&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ippsFFTFree_C_32fc(spec1D);&lt;/P&gt;&lt;/FONT&gt;&lt;/PRE&gt;
&lt;P&gt;Regards,&lt;BR /&gt; Vladimir&lt;/P&gt;</description>
      <pubDate>Wed, 21 Feb 2007 17:15:25 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Integrated-Performance/FFT-3D/m-p/881364#M10235</guid>
      <dc:creator>Vladimir_Dudnik</dc:creator>
      <dc:date>2007-02-21T17:15:25Z</dc:date>
    </item>
    <item>
      <title>Re: FFT 3D</title>
      <link>https://community.intel.com/t5/Intel-Integrated-Performance/FFT-3D/m-p/881365#M10236</link>
      <description>&lt;P&gt;Hallo,&lt;/P&gt;
&lt;P&gt;Thank you for your quick response. &lt;/P&gt;
&lt;P&gt;Now I want to do the FFT3D inverse, so I have to do in the same way but in the reverse order. That means &lt;/P&gt;
&lt;P&gt;1. NX * NY calculation of FFT1D inversefor NZ size&lt;/P&gt;
&lt;P&gt;2. NZ calculation of FFT2D inverse for size NX * NY&lt;/P&gt;
&lt;P&gt;Is that correct?&lt;/P&gt;
&lt;P&gt;Regards&lt;/P&gt;
&lt;P&gt;Anh&lt;/P&gt;</description>
      <pubDate>Thu, 22 Feb 2007 08:29:05 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Integrated-Performance/FFT-3D/m-p/881365#M10236</guid>
      <dc:creator>mickeyhah</dc:creator>
      <dc:date>2007-02-22T08:29:05Z</dc:date>
    </item>
    <item>
      <title>Re: FFT 3D</title>
      <link>https://community.intel.com/t5/Intel-Integrated-Performance/FFT-3D/m-p/881366#M10237</link>
      <description>&lt;P&gt;Yes, that's correct. Note, that FFT3D is also available in Intel Math Kernel library&lt;/P&gt;
&lt;P&gt;Regards,&lt;BR /&gt; Vladimir&lt;/P&gt;</description>
      <pubDate>Thu, 22 Feb 2007 15:52:55 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Integrated-Performance/FFT-3D/m-p/881366#M10237</guid>
      <dc:creator>Vladimir_Dudnik</dc:creator>
      <dc:date>2007-02-22T15:52:55Z</dc:date>
    </item>
  </channel>
</rss>

