Title :
Short vector code generation for the discrete Fourier transform
Author :
Franchetti, Franz ; Püschel, Markus
Author_Institution :
Tech. Univ. of Vienna, Austria
Abstract :
In this paper we use a mathematical approach to automatically generate high performance short vector code for the discrete Fourier transform (DFT). We represent the well-known Cooley-Tukey fast Fourier transform in a mathematical notation and formally derive a "short vector variant". Using this recursion we generate for a given DFT a large number of different algorithms, represented as formulas, and translate them into short vector code. Then we present a vector code specific dynamic programming method that searches in the space of different implementations for the fastest on the given architecture. We implemented this approach as part of the SPIRAL library generator On Pentium III and 4, our automatically generated SSE and SSE2 vector code compares favorably with the hand-tuned Intel vendor library.
Keywords :
discrete Fourier transforms; dynamic programming; program compilers; Cooley-Tukey fast Fourier transform; Intel vendor library; SPIRAL library generator; discrete Fourier transform; mathematical approach; mathematical notation; short vector code generation; vector code specific dynamic programming; Computer aided instruction; Computer architecture; Digital signal processing; Discrete Fourier transforms; Discrete transforms; Fast Fourier transforms; High performance computing; Libraries; Programming profession; Spirals;
Conference_Titel :
Parallel and Distributed Processing Symposium, 2003. Proceedings. International
Print_ISBN :
0-7695-1926-1
DOI :
10.1109/IPDPS.2003.1213153