Logo Cineca Logo SCAI

You are here

FFT exercise 4

 

Make a parallel program that computes the Fourier Transform of a 3D set of data, using the following specifications:

 

Use Fortran or C:

 

–Use 2decomp&FFT lib, if you write a Fortran program: info at http://www.2decomp.org/fft_api.html

 

–Use P3DFFT lib, if you write a C program: info at http://code.google.com/p/p3dfft/wiki/UserGuide

 

Input array: Real array of 64x64x64 points.

 

Input function: f(x,y,z) = sin(x) * sin(y) * sin(z); where x, y, z = 0, …, 63

 

Output array: Complex array

 

Using the results, compute the anti-transform, and compare the results with the original data.

 

Compare the times of execution obtained using 12, 24, 36, 48 cores.

 

Use MPI_WTIME function: MPI_Wtime.html