Benchmarking: of FFT Algorithms
Benchmarking: of FFT Algorithms
Ahstract - A large number of Fast Fourier Transform efficient algorithm under application-specific constraints.
(FFT) algorithms have been developed over the years. Our approach is to benchmark each algorithm undcr a variety
Among these, the most promising are the Radix-2, of constraints, and to use the benchmark statistics to create a
Radix-4, Split-Radix, Fast Martley Transform (FHT), wrapper capable of choosing the algorithm bcst suited for a
Quick Fourier Transform (QFT), and the Decimation- given application. Obviously, object-orientcd programming
in-Time-Frequency (DITF) algorithms. In this paper, methodologies will play a large role.
we present a rigorous analysis of these algorithms that
includes the number of mathematical operations, ALGORITHMS
computational time, memory requirements, and object
code size. The results of this work will serve as a Thc definition of the Discrete Fourier Transform (DFT) is
framework for creating an object-oriented, poly- shown in (1).
functional FFT implementation which will
automatically choose the most efficient algorithm given
user-specified constraints.
-329-
requires a marginally higher number of floating-point
operations than the Radix-4, yet the FHT is faster than the
Radix-4 by more than a factor oi-2. This implies that the FHT
makes more efficient use of the resources available (cache,
pipclining, ctc.) than does the Radix-4. Also, this makes it
even morc important to look at thc order of operations
bccause multiplications and additions that can bc pipciined
need much lcss computation time than algorithms where the
flow of opcrations cannot bc casily pipelincd. This is an
cspccially important consideration €or thc current generation
of complex architcctures (such as the Pentium Pro chip).
Q FT 143 762 3476 15952 78000
We also see that, in general, the number of integer additions
D ITF 238 1000 4191 18714 80333 is a good indication o f speed. Note that the ranking of
algorithms by speed is almost the same as the ranking of the
algorithms by integer additions. The only exccption is the
QFT that secms to make up for thc high number of integer
opcrations by using vcry few floating-point multiplications.
-330-