<?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 Is the real-to-complex transform implemented for cluster FFT? in Intel® oneAPI Math Kernel Library</title>
    <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Is-the-real-to-complex-transform-implemented-for-cluster-FFT/m-p/782659#M1580</link>
    <description>As I suspected, the issue was the same for cluster fft.&lt;BR /&gt;&lt;BR /&gt;J</description>
    <pubDate>Sat, 12 Feb 2011 17:43:15 GMT</pubDate>
    <dc:creator>Jozsef</dc:creator>
    <dc:date>2011-02-12T17:43:15Z</dc:date>
    <item>
      <title>Is the real-to-complex transform implemented for cluster FFT?</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Is-the-real-to-complex-transform-implemented-for-cluster-FFT/m-p/782649#M1570</link>
      <description>The manual says, I can set &lt;SAMP class="codeph"&gt;DFTI_REAL as the &lt;/SAMP&gt;forward domain in DftiCreateDescriptorDM(). However, the page for DftiComputeForwardDM() says that both the input and output are complex arrays.&lt;BR /&gt;&lt;BR /&gt;Also, there are only complex-to-complex transforms among the examples.&lt;BR /&gt;&lt;BR /&gt;Is the real-to-complex transform implemented for cluster FFT? If so, how do I obtain/calculate the local size of the forward domain?&lt;BR /&gt;&lt;BR /&gt;Thanks,&lt;BR /&gt;Jozsef&lt;BR /&gt;</description>
      <pubDate>Thu, 18 Nov 2010 21:20:12 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Is-the-real-to-complex-transform-implemented-for-cluster-FFT/m-p/782649#M1570</guid>
      <dc:creator>Jozsef</dc:creator>
      <dc:date>2010-11-18T21:20:12Z</dc:date>
    </item>
    <item>
      <title>Is the real-to-complex transform implemented for cluster FFT?</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Is-the-real-to-complex-transform-implemented-for-cluster-FFT/m-p/782650#M1571</link>
      <description>Jozsef,&lt;BR /&gt;&lt;BR /&gt;Cluster FFT supports real-to-complex transforms. &lt;BR /&gt;Please use the following pseudo-code as a general guideline:&lt;BR /&gt;&lt;BR /&gt;MKL_LONG n[]={10,20};&lt;BR /&gt;DftiCreateDescriptorDM(comm, &amp;amp;handle, DFTI_DOUBLE, DFTI_REAL, 2, n);&lt;BR /&gt;DftiCommitDescriptorDM(handle);&lt;BR /&gt;MKL_LONG size;&lt;BR /&gt;DftiGetValueDM(handle, CDFT_LOCAL_SIZE, &amp;amp;size);&lt;BR /&gt;double *inout = (double *)malloc(size*sizeof(double complex));&lt;BR /&gt;MKL_LONG nx;&lt;BR /&gt;DftiGetValueDM(handle,CDFT_LOCAL_NX,&amp;amp;nx);&lt;BR /&gt;MKL_LONG x_start;&lt;BR /&gt;DftiGetValueDM(handle, CDFT_LOCAL_X_START, &amp;amp;x_start);&lt;BR /&gt;// initialize input data as array of nx x n[1] doubles placed (with possible padding) in array of nx x (n[1]/2+1) double complexes&lt;BR /&gt;&lt;BR /&gt;I hope this helps.&lt;BR /&gt;&lt;BR /&gt;Best regards,&lt;BR /&gt;-Vladimir</description>
      <pubDate>Mon, 22 Nov 2010 08:30:34 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Is-the-real-to-complex-transform-implemented-for-cluster-FFT/m-p/782650#M1571</guid>
      <dc:creator>Vladimir_Petrov__Int</dc:creator>
      <dc:date>2010-11-22T08:30:34Z</dc:date>
    </item>
    <item>
      <title>Is the real-to-complex transform implemented for cluster FFT?</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Is-the-real-to-complex-transform-implemented-for-cluster-FFT/m-p/782651#M1572</link>
      <description>Thanks Vladimir,&lt;BR /&gt;&lt;BR /&gt;The above seems to work, i.e. it compiles and runs. However, the following simple test fails to give a reasonably small error on a single cpu. What am I missing?&lt;BR /&gt;&lt;BR /&gt;Thanks,&lt;BR /&gt;Jozsef&lt;BR /&gt;&lt;BR /&gt;&lt;PRE&gt;[cpp]  const MKL_LONG N = 12;
  const MKL_LONG LENGTHS[3] = {N,N,N};
  const MKL_LONG PO = N*N*N;

  double err, maxerr;
  double complex *U, *V, *W;
  DFTI_DESCRIPTOR_DM_HANDLE fft;
  MKL_LONG n, size, local_nx, local_x_start;


  MPI_Init(&amp;amp;argc,&amp;amp;argv);

  DftiCreateDescriptorDM( MPI_COMM_WORLD, &amp;amp;fft, DFTI_DOUBLE, DFTI_REAL, 3, LENGTHS);
  DftiGetValueDM(fft, CDFT_LOCAL_SIZE, &amp;amp;size);
  DftiGetValueDM(fft, CDFT_LOCAL_NX, &amp;amp;local_nx);
  DftiGetValueDM(fft, CDFT_LOCAL_X_START, &amp;amp;local_x_start);
  DftiSetValueDM(fft, DFTI_PLACEMENT, DFTI_INPLACE);
  DftiSetValueDM(fft, DFTI_FORWARD_SCALE, 1.0);
  DftiSetValueDM(fft, DFTI_BACKWARD_SCALE, 1.0/(double)PO);

  U = (double complex*)malloc(size*sizeof(double complex));
  V = (double complex*)malloc(size*sizeof(double complex));
  W = (double complex*)malloc(size*sizeof(double complex));

  DftiSetValueDM(fft, CDFT_WORKSPACE, W);
  DftiCommitDescriptorDM(fft);


  double *u = (double*)U;
  double *v = (double*)V;

  for ( n = 0; n &amp;lt; PO; n++ )
    u&lt;N&gt; = v&lt;N&gt; = (double)n;

  DftiComputeForwardDM(fft, U);
  DftiComputeBackwardDM(fft, U);

  maxerr = 0.0;
  for ( n = 0; n &amp;lt; PO; n++ )
  {
    err = fabs(u&lt;N&gt;-v&lt;N&gt;);
    if (err &amp;gt; maxerr)
      maxerr = err;
  }
  printf("maxerr = %gn",maxerr);


  free( U );
  free( V );
  free( W );

  DftiFreeDescriptorDM(&amp;amp;fft);

  MPI_Finalize();[/cpp]&lt;/N&gt;&lt;/N&gt;&lt;/N&gt;&lt;/N&gt;&lt;/PRE&gt; &lt;BR /&gt;</description>
      <pubDate>Thu, 10 Feb 2011 18:25:18 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Is-the-real-to-complex-transform-implemented-for-cluster-FFT/m-p/782651#M1572</guid>
      <dc:creator>Jozsef</dc:creator>
      <dc:date>2011-02-10T18:25:18Z</dc:date>
    </item>
    <item>
      <title>Is the real-to-complex transform implemented for cluster FFT?</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Is-the-real-to-complex-transform-implemented-for-cluster-FFT/m-p/782652#M1573</link>
      <description>Interestingly, the above example works for a complex forward domain (and the loops going until 2*PO).&lt;BR /&gt;J</description>
      <pubDate>Thu, 10 Feb 2011 18:37:58 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Is-the-real-to-complex-transform-implemented-for-cluster-FFT/m-p/782652#M1573</guid>
      <dc:creator>Jozsef</dc:creator>
      <dc:date>2011-02-10T18:37:58Z</dc:date>
    </item>
    <item>
      <title>Is the real-to-complex transform implemented for cluster FFT?</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Is-the-real-to-complex-transform-implemented-for-cluster-FFT/m-p/782653#M1574</link>
      <description>Jozsef,&lt;BR /&gt;&lt;BR /&gt;I cannot run your code right now, but there is a couple of mistakes. Please find my comments/corrections below below:&lt;BR /&gt;&lt;BR /&gt;&lt;OL class="dp-cpp" start="1"&gt;&lt;LI class="alt"&gt;constMKL_LONGN=12;&lt;/LI&gt;&lt;LI&gt;constMKL_LONGLENGTHS[3]={N,N,N}; // comment: this are global sizes - not local&lt;/LI&gt;&lt;LI class="alt"&gt;constMKL_LONGPO=N*N*N; // comment: hence this is also global&lt;/LI&gt;&lt;LI&gt;&lt;/LI&gt;&lt;LI class="alt"&gt;doubleerr,maxerr;&lt;/LI&gt;&lt;LI&gt;doublecomplex*U,*V,*W;&lt;/LI&gt;&lt;LI class="alt"&gt;DFTI_DESCRIPTOR_DM_HANDLEfft;&lt;/LI&gt;&lt;LI&gt;MKL_LONGn,size,local_nx,local_x_start;&lt;/LI&gt;&lt;LI class="alt"&gt;&lt;/LI&gt;&lt;LI&gt;&lt;/LI&gt;&lt;LI class="alt"&gt;MPI_Init(&amp;amp;argc,&amp;amp;argv);&lt;/LI&gt;&lt;LI&gt;&lt;/LI&gt;&lt;LI class="alt"&gt;DftiCreateDescriptorDM(MPI_COMM_WORLD,&amp;amp;fft,DFTI_DOUBLE,DFTI_REAL,3,LENGTHS);&lt;/LI&gt;&lt;LI&gt;DftiGetValueDM(fft,CDFT_LOCAL_SIZE,&amp;amp;size); // comment: the size returned here is local to this process&lt;/LI&gt;&lt;LI class="alt"&gt;DftiGetValueDM(fft,CDFT_LOCAL_NX,&amp;amp;local_nx); // comment: this is how many DPs along the most strided dimension this process will own&lt;/LI&gt;&lt;LI&gt;DftiGetValueDM(fft,CDFT_LOCAL_X_START,&amp;amp;local_x_start); // comment: this is at which DP the process's DPs along the most strided dimension start&lt;/LI&gt;&lt;LI class="alt"&gt;DftiSetValueDM(fft,DFTI_PLACEMENT,DFTI_INPLACE);&lt;/LI&gt;&lt;LI&gt;DftiSetValueDM(fft,DFTI_FORWARD_SCALE,1.0);&lt;/LI&gt;&lt;LI class="alt"&gt;DftiSetValueDM(fft,DFTI_BACKWARD_SCALE,1.0/(double)PO);&lt;/LI&gt;&lt;LI&gt;&lt;/LI&gt;&lt;LI class="alt"&gt;U=(doublecomplex*)malloc(size*sizeof(doublecomplex));&lt;/LI&gt;&lt;LI&gt;V=(doublecomplex*)malloc(size*sizeof(doublecomplex));&lt;/LI&gt;&lt;LI class="alt"&gt;W=(doublecomplex*)malloc(size*sizeof(doublecomplex));&lt;/LI&gt;&lt;LI&gt;&lt;/LI&gt;&lt;LI class="alt"&gt;DftiSetValueDM(fft,CDFT_WORKSPACE,W);&lt;/LI&gt;&lt;LI&gt;DftiCommitDescriptorDM(fft);&lt;/LI&gt;&lt;LI class="alt"&gt;&lt;/LI&gt;&lt;LI&gt;&lt;/LI&gt;&lt;LI class="alt"&gt;double*u=(double*)U;&lt;/LI&gt;&lt;LI&gt;double*v=(double*)V;&lt;/LI&gt;&lt;LI class="alt"&gt;&lt;/LI&gt;&lt;LI&gt;for(n=0;n&lt;PO&gt;&lt;/PO&gt;&lt;/LI&gt;&lt;LI class="alt"&gt;u&lt;N&gt;=v&lt;N&gt;=(double)n; // correction: the size obtained in line 14 is not neccessarily equal to P0 (please look at my previous post). You need to make it a doubly nested loop going over an array of local_nx x (LENGTHES[1] * (LENGTHES[2]/2 + 1)) reals&lt;/N&gt;&lt;/N&gt;&lt;/LI&gt;&lt;LI&gt;&lt;/LI&gt;&lt;LI class="alt"&gt;DftiComputeForwardDM(fft,U);&lt;/LI&gt;&lt;LI&gt;DftiComputeBackwardDM(fft,U);&lt;/LI&gt;&lt;LI class="alt"&gt;&lt;/LI&gt;&lt;LI&gt;maxerr=0.0;&lt;/LI&gt;&lt;LI class="alt"&gt;for(n=0;n&lt;PO&gt;&lt;/PO&gt;&lt;/LI&gt;&lt;LI&gt;{&lt;/LI&gt;&lt;LI class="alt"&gt;err=fabs(u&lt;N&gt;-v&lt;N&gt;);&lt;/N&gt;&lt;/N&gt;&lt;/LI&gt;&lt;LI&gt;if(err&amp;gt;maxerr)&lt;/LI&gt;&lt;LI class="alt"&gt;maxerr=err;&lt;/LI&gt;&lt;LI&gt;}&lt;/LI&gt;&lt;LI class="alt"&gt;printf("maxerr=%g\n",maxerr);&lt;/LI&gt;&lt;LI&gt;&lt;/LI&gt;&lt;LI class="alt"&gt;&lt;/LI&gt;&lt;LI&gt;free(U);&lt;/LI&gt;&lt;LI class="alt"&gt;free(V);&lt;/LI&gt;&lt;LI&gt;free(W);&lt;/LI&gt;&lt;LI class="alt"&gt;&lt;/LI&gt;&lt;LI&gt;DftiFreeDescriptorDM(&amp;amp;fft);&lt;/LI&gt;&lt;LI class="alt"&gt;&lt;/LI&gt;&lt;LI&gt;MPI_Finalize(); &lt;/LI&gt;&lt;/OL&gt;I hope this helps.&lt;BR /&gt;&lt;BR /&gt;Best regards,&lt;BR /&gt;-Vladimir</description>
      <pubDate>Thu, 10 Feb 2011 20:24:12 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Is-the-real-to-complex-transform-implemented-for-cluster-FFT/m-p/782653#M1574</guid>
      <dc:creator>Vladimir_Petrov__Int</dc:creator>
      <dc:date>2011-02-10T20:24:12Z</dc:date>
    </item>
    <item>
      <title>Is the real-to-complex transform implemented for cluster FFT?</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Is-the-real-to-complex-transform-implemented-for-cluster-FFT/m-p/782654#M1575</link>
      <description>Yes. For more than one process, I would compute the end of the loops as "size / (N/2+1) * N", which is the number of doubles the given process owns -- as I understand.&lt;BR /&gt;&lt;BR /&gt;This is the same as PO for a single process, since in that case local_nx = N. Correct?&lt;BR /&gt;&lt;BR /&gt;With the above in mind, the behavior is the same.&lt;BR /&gt;&lt;BR /&gt;J&lt;BR /&gt;</description>
      <pubDate>Thu, 10 Feb 2011 21:33:00 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Is-the-real-to-complex-transform-implemented-for-cluster-FFT/m-p/782654#M1575</guid>
      <dc:creator>Jozsef</dc:creator>
      <dc:date>2011-02-10T21:33:00Z</dc:date>
    </item>
    <item>
      <title>Is the real-to-complex transform implemented for cluster FFT?</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Is-the-real-to-complex-transform-implemented-for-cluster-FFT/m-p/782655#M1576</link>
      <description>First, you correctly assume that for a single MPI proc (mpiexec -np 1 ...) local_nx will be equal to global N.&lt;BR /&gt;&lt;BR /&gt;Next, size &amp;gt;= local_nx * N * (N/2 + 1) - for some transforms a larger buffer is required, hence the equality not necessarily holds.&lt;BR /&gt;&lt;BR /&gt;Lastly, your data have to be layed out correctly (so called CCE layout) and that is done as follows:&lt;BR /&gt;&lt;BR /&gt;double *input;&lt;BR /&gt;double complex *output = input;&lt;BR /&gt;&lt;BR /&gt;int n2_padded = 2*(N/2 + 1);&lt;BR /&gt;int i0, i1, i2;&lt;BR /&gt;&lt;BR /&gt;// init input&lt;BR /&gt;for (i0=0; i0&lt;LOCAL_NX&gt;&lt;/LOCAL_NX&gt; for (i1=0; i1&lt;N&gt;&lt;/N&gt; for (i2=0; i2&lt;N&gt;&lt;/N&gt; input[(i0*N + i1)*n2_padded + i2] = get_data_from_input_global_array_at(local_start_x + i0, i1, i2);&lt;BR /&gt; }&lt;BR /&gt; }&lt;BR /&gt;}&lt;BR /&gt;&lt;BR /&gt;// do fft&lt;BR /&gt;&lt;BR /&gt;// use the computed data&lt;BR /&gt;
for (i0=0; i0&lt;LOCAL_NX_OUT&gt;&lt;/LOCAL_NX_OUT&gt;
 for (i1=0; i1&lt;N&gt;&lt;/N&gt;
 for (i2=0; i2&lt;N&gt;&lt;/N&gt;
 put_computed_data_into_output_global_array_at(local_start_x_out + i0, i1, i2) = output[(i0*N + i1)*(N/2 + 1) + i2] = ;&lt;BR /&gt;
 }&lt;BR /&gt;
 }&lt;BR /&gt;
}&lt;BR /&gt;&lt;BR /&gt;best regards,&lt;BR /&gt;-Vladimir</description>
      <pubDate>Fri, 11 Feb 2011 09:24:01 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Is-the-real-to-complex-transform-implemented-for-cluster-FFT/m-p/782655#M1576</guid>
      <dc:creator>Vladimir_Petrov__Int</dc:creator>
      <dc:date>2011-02-11T09:24:01Z</dc:date>
    </item>
    <item>
      <title>Is the real-to-complex transform implemented for cluster FFT?</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Is-the-real-to-complex-transform-implemented-for-cluster-FFT/m-p/782656#M1577</link>
      <description>This is fine, but I'm trying to get something simpler right first: on a single process (no assembly) and I'm simply trying to get the initial data back after a forward and a backward fft.&lt;BR /&gt;&lt;BR /&gt;For example:&lt;BR /&gt;&lt;BR /&gt;(1) Generate a bunch of random doubles into the NxNxN array U and make a copy in V.&lt;BR /&gt;&lt;BR /&gt;(2) Do an in-place forward and backward FFT on U.&lt;BR /&gt;&lt;BR /&gt;(3) Compare U and V, which should be the same (modulo floating point errors), irrespective of the (real, i.e. not complex) data storage between the transforms.&lt;BR /&gt;&lt;BR /&gt;I tried this for non-cluster fft and it works for both real and complex forward domains. However, for cluster fft it only works for a complex domain and doesn't for a real one.&lt;BR /&gt;&lt;BR /&gt;J</description>
      <pubDate>Fri, 11 Feb 2011 17:01:47 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Is-the-real-to-complex-transform-implemented-for-cluster-FFT/m-p/782656#M1577</guid>
      <dc:creator>Jozsef</dc:creator>
      <dc:date>2011-02-11T17:01:47Z</dc:date>
    </item>
    <item>
      <title>Is the real-to-complex transform implemented for cluster FFT?</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Is-the-real-to-complex-transform-implemented-for-cluster-FFT/m-p/782657#M1578</link>
      <description>Jozsef,&lt;BR /&gt;&lt;BR /&gt;First of all, Cluster FFT is not to be used on a single MPI process. It's the DFTI's (non-cluster FFT's) realm.&lt;BR /&gt;Second of all, it might be that this case does not even work with CFFT. I will double check and report back soon.&lt;BR /&gt;&lt;BR /&gt;Best regards,&lt;BR /&gt;-Vladimir</description>
      <pubDate>Fri, 11 Feb 2011 19:25:15 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Is-the-real-to-complex-transform-implemented-for-cluster-FFT/m-p/782657#M1578</guid>
      <dc:creator>Vladimir_Petrov__Int</dc:creator>
      <dc:date>2011-02-11T19:25:15Z</dc:date>
    </item>
    <item>
      <title>Is the real-to-complex transform implemented for cluster FFT?</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Is-the-real-to-complex-transform-implemented-for-cluster-FFT/m-p/782658#M1579</link>
      <description>Ok. The problem was not Cluster FFT-related. Rather, I didn't correctly test the array in CCE format.&lt;BR /&gt;&lt;BR /&gt;In particular, the loop&lt;BR /&gt;&lt;PRE&gt;[cpp]  maxerr = 0.0;
  for ( n = 0; n &amp;lt; PO; n++ )
  {
    err = fabs(u&lt;N&gt;-v&lt;N&gt;);
    if (err &amp;gt; maxerr)
      maxerr = err;
  }
  printf("maxerr = %gn",maxerr);[/cpp]&lt;/N&gt;&lt;/N&gt;&lt;/PRE&gt; is only fine for testing contiguous data, such as result from complex-to-complex transforms. The CCE format has some unused blocks, at the end of each row (2 doubles), which should not be compared.&lt;BR /&gt;&lt;BR /&gt;Instead of the above, I need something like&lt;BR /&gt;&lt;PRE&gt;[cpp]  maxerr = 0.0;
  for ( n = 0; n &amp;lt; N*N; n++ )
    for ( m = 0; m &amp;lt; N; m++ )
    {
      err = fabs(u[n*2*(N/2+1)+m] - v[n*2*(N/2+1)+m]);
      if (err &amp;gt; maxerr)
        maxerr = err;
     }
  printf("maxerr = %gn",maxerr);[/cpp]&lt;/PRE&gt; which gives the correct small error. Now all this works for dfti, next is to get it right for cdft, as well.&lt;BR /&gt;&lt;BR /&gt;Thanks,&lt;BR /&gt;J</description>
      <pubDate>Sat, 12 Feb 2011 03:11:11 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Is-the-real-to-complex-transform-implemented-for-cluster-FFT/m-p/782658#M1579</guid>
      <dc:creator>Jozsef</dc:creator>
      <dc:date>2011-02-12T03:11:11Z</dc:date>
    </item>
    <item>
      <title>Is the real-to-complex transform implemented for cluster FFT?</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Is-the-real-to-complex-transform-implemented-for-cluster-FFT/m-p/782659#M1580</link>
      <description>As I suspected, the issue was the same for cluster fft.&lt;BR /&gt;&lt;BR /&gt;J</description>
      <pubDate>Sat, 12 Feb 2011 17:43:15 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Is-the-real-to-complex-transform-implemented-for-cluster-FFT/m-p/782659#M1580</guid>
      <dc:creator>Jozsef</dc:creator>
      <dc:date>2011-02-12T17:43:15Z</dc:date>
    </item>
    <item>
      <title>Is the real-to-complex transform implemented for cluster FFT?</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Is-the-real-to-complex-transform-implemented-for-cluster-FFT/m-p/782660#M1581</link>
      <description>Jozsef,&lt;BR /&gt;&lt;BR /&gt;I'm glad to hear that the Good vanquished the evil (once again).&lt;BR /&gt;&lt;BR /&gt;Best regards,&lt;BR /&gt;-Vladimir</description>
      <pubDate>Sun, 13 Feb 2011 17:56:59 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Is-the-real-to-complex-transform-implemented-for-cluster-FFT/m-p/782660#M1581</guid>
      <dc:creator>Vladimir_Petrov__Int</dc:creator>
      <dc:date>2011-02-13T17:56:59Z</dc:date>
    </item>
  </channel>
</rss>

