Discussion:
fft
(too old to reply)
uche
2010-02-07 17:41:00 UTC
Permalink
Does any one have suggestions about how to parallelize an FFT code,
using openMP/threads. If there are example codes out there please let
me know.
Heiko Bauke
2010-02-08 08:38:54 UTC
Permalink
On Sun, 7 Feb 2010 09:41:00 -0800 (PST)
Post by uche
Does any one have suggestions about how to parallelize an FFT code,
using openMP/threads. If there are example codes out there please let
me know.
you may have a look at the FFTW code. http://www.fftw.org


Heiko
--
--
-- Der ehrgeizige Bürokrat träumt davon, daß seine Feder eines Tages zur
-- Lanze befördert wird. (Zarko Petan, slowenischer Aphoristiker)
-- Cluster Computing @ http://www.clustercomputing.de
-- Heiko Bauke @ http://www.mpi-hd.mpg.de/personalhomes/bauke
uche
2010-02-09 22:41:37 UTC
Permalink
Post by Heiko Bauke
On Sun, 7 Feb 2010 09:41:00 -0800 (PST)
Post by uche
Does any one have suggestions about how to parallelize an FFT code,
using openMP/threads. If there are example codes out there please let
me know.
you may have a look at the FFTW code.http://www.fftw.org
        Heiko
--
--
-- Der ehrgeizige Bürokrat träumt davon, daß seine Feder eines Tages zur
-- Lanze befördert wird. (Zarko Petan, slowenischer Aphoristiker)
Heiko,

Do you have any idea how to take the dependencies from the following
code:

for (i=0; i < m; i++)
{
tid=omp_get_num_threads();
cout<<tid<<endl;

n1 = n2;
n2 = n2 + n2;
e = -6.283185307179586/n2;
a = 0.0;

for (j=0; j < n1; j++)
{
c = cos(a);
s = sin(a);
a = a + e;
for (k=j; k < n; k=k+n2)
{
\\l
{
t1 = c*x[k+n1] - s*y[k+n1];
t2 = s*x[k+n1] + c*y[k+n1];
x[k+n1] = x[k] - t1;
y[k+n1] = y[k] - t2;
x[k] = x[k] + t1;
y[k] = y[k] + t2;
}

}
}
}

Loading...