The Design and Implementation of FFTW3 (FFTW3的设计和实现).pdf
文本预览下载声明
1
The Design and Implementation of FFTW3
Matteo Frigo and Steven G. Johnson
(Invited Paper)
Abstract— FFTW is an implementation of the discrete Fourier of a multi-dimensional array. (Most implementations sup-
transform (DFT) that adapts to the hardware in order to port only a single DFT of contiguous data.)
maximize performance. This paper shows that such an approach • FFTW supports DFTs of real data, as well as of real
can yield an implementation that is competitive with hand-
optimized libraries, and describes the software structure that symmetric/antisymmetric data (also called discrete co-
makes our current FFTW3 version flexible and adaptive. We sine/sine transforms).
further discuss a new algorithm for real-data DFTs of prime size, The interaction of the user with FFTW occurs in two
a new way of implementing DFTs by means of machine-specific stages: planning, in which FFTW adapts to the hardware,
“SIMD” instructions, and how a special-purpose compiler can
and execution, in which FFTW performs useful work for the
derive optimized implementations of the discrete cosine and sine
transforms automatically from a DFT algorithm. user. To compute a DFT, the user first invokes the FFTW
planner , specifying the problem to be solved. The problem is
Index Terms— FF
显示全部