Back to Search Start Over

Intel Cilk Plus for complex parallel algorithms: “Enormous Fast Fourier Transforms” (EFFT) library.

Authors :
Asai, Ryo
Vladimirov, Andrey
Source :
Parallel Computing. Oct2015, Vol. 48, p125-142. 18p.
Publication Year :
2015

Abstract

In this paper we demonstrate the methodology for parallelizing the computation of large one-dimensional discrete fast Fourier transforms (DFFTs) on multi-core Intel Xeon processors. DFFTs based on the recursive Cooley–Tukey method have to control cache utilization, memory bandwidth and vector hardware usage, and at the same time scale across multiple threads or compute nodes. Our method builds on a single-threaded Intel Math Kernel Library (MKL) implementation of real-to-complex DFFT, and uses the Intel Cilk Plus framework for thread parallelism. We demonstrate the ability of Intel Cilk Plus to handle parallel recursion with nested loop-centric parallelism without tuning the code to the number of cores or cache metrics. The result of our work is a library called EFFT that performs 1D DFTs of size 2 N for N ≥ 21 faster than the corresponding Intel MKL parallel DFT implementation by up to 1.5 × , and faster than FFTW by up to 2.5x. The code of EFFT is available for free download under the GPLv3 license. This work provides a new efficient DFFT implementation, and at the same time demonstrates an educational example of how computer science problems with complex parallel patterns can be optimized for high performance using the Intel Cilk Plus framework. [ABSTRACT FROM AUTHOR]

Details

Language :
English
ISSN :
01678191
Volume :
48
Database :
Academic Search Index
Journal :
Parallel Computing
Publication Type :
Academic Journal
Accession number :
109278823
Full Text :
https://doi.org/10.1016/j.parco.2015.05.004