Intel® MPI Library
Get help with building, analyzing, optimizing, and scaling high-performance computing (HPC) applications.

2D FFT performance on cluster

andrei1
Beginner
1,328 Views
Hi there,
I need to take an advantage of calculation of 2D FFT on the grid, say, 512x512 using the cluster.
Algorithm consists of 3 steps:
1. 1D FFT's on the raws of the matrix
2. Matrix transpose
3. Repetition of the step 1.
One-processor tests show that the Step 2 (matrix transpose) is the most time consuming part of the algorithm. So, while parallelization of Step 1 is pretty straightforward on the cluster, the matrix transpose on the cluster becomes a bottleneck.
There is a group of people from the East Coast who worked on the problem and presumably achieved linear growth of FFT performance on the cluster up to 16 processors, which is quite impressive.
The question is, if Intel cluster library can handle the problem of parallelization of 2D FFT on the cluster?
Andrei
0 Kudos
7 Replies
Henry_G_Intel
Employee
1,328 Views

Hello Andrei,

The Intel Cluster Math Kernel Library 8.1can do distributed-memory, parallel FFT's. The following website has more information: http://www.intel.com/cd/software/products/asmo-na/eng/perflib/mkl/266852.htm. You can download Cluster MKL and get a 30-day license from this site too.

Please share your performance results if you try Cluster MKL.

Best regards,

Henry

0 Kudos
andrei1
Beginner
1,328 Views
Hi Henry,



I looked at the performance graphs in the link in your reply.



How can one get 5 Gflops performance on 1.5 Ghz processor (I mean 1D FFT graph)?



Andrei

Message Edited by andrei@cox.net on 04-12-200607:53 AM

0 Kudos
Henry_G_Intel
Employee
1,328 Views

Hi Andrei,

The Itanium 2processor can dofour floating-point operations per clock cycle. Therefore, the theoretical peak of a 1.5 GHz Itanium 2 is 6 GFLOPS.

Henry

0 Kudos
andrei1
Beginner
1,328 Views
Henry, thanks for the answer.



I think that different graphs for the cluster performance estimate would be useful -- acceleration factor versus number of processors used for, say, 512x512 FFT. In fact, they are common in literature.



It is easy to understand from the existing graphs that such dependence is close to linear up to 4 processors. It is also clear that it will start to deviate from linear dependence at specific number of processors. Question -- how many and how fast?



Is there any place to take a look at such graphs?



Thanks, Andrei
0 Kudos
Henry_G_Intel
Employee
1,328 Views

Hi Andrei,

I'm not aware ofany other graphs or published benchmarks of MKL DFT performance. I can't estimate the scalability of your calculation. However, a 512x512 FFT is considered a small calculation on a good workstation or server. I recommend that you measure the serialMKLperformance before investing any effort in a distributed-memory, parallel solution. Depending on your system, MKL can probably compute a 512x512 transform in less than a second.Ifso, adistributed-memory, parallel solution will be slower because of the communication overhead.

Henry

0 Kudos
andrei1
Beginner
1,328 Views
Hi Henry,





Thank you for your answers. In fact, 512x512 grid is just entry level



for my problem and I hope that system overhead will be significantly



lower for higher grid dimension.



Appreciate your cooperation, Andrei
0 Kudos
tcrony70
Beginner
1,328 Views
Regarding the 1.5GHz Itanium 2's peak performance of 6 GFlops, I would have thought that for short precision data, the peak would be higher through the use of whichever SIMD is actually present.
Tim
0 Kudos
Reply