The split-radix FFT computes a size-n complex DFT, when n is a large power of 2, using just \(4n\lg n-6n+8\) arithmetic operations on real numbers. This operation count was first announced in 1968, stood unchallenged for more than thirty years, and was widely believed to be best possible.

Recently James Van Buskirk posted software demonstrating that the split-radix FFT is not optimal. Van Buskirk’s software computes a size-n complex DFT using only \((34/9+o(1))n\lg n\) arithmetic operations on real numbers. There are now three papers attempting to explain the improvement from 4 to 34/9: Johnson and Frigo, IEEE Transactions on Signal Processing, 2007; Lundy and Van Buskirk, Computing, 2007; and this paper.

This paper presents the “tangent FFT,” a straightforward in-place cache-friendly DFT algorithm having exactly the same operation counts as Van Buskirk’s algorithm. This paper expresses the tangent FFT as a sequence of standard polynomial operations, and pinpoints how the tangent FFT saves time compared to the split-radix FFT. This description is helpful not only for understanding and analyzing Van Buskirk’s improvement but also for minimizing the memory-access costs of the FFT.


Tangent FFT split-radix FFT modified split-radix FFT scaled odd tail DFT convolution polynomial multiplication algebraic complexity communication complexity 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    1968 Fall Joint Computer Conference. In: AFIPS conference proceedings, vol. 33, part one. See [13] (1968)Google Scholar
  2. 2.
    Cooley, J.W., Tukey, J.W.: An Algorithm for the Machine Calculation of Complex Fourier Series. Mathematics of Computation 19, 297–301 (1965)zbMATHCrossRefMathSciNetGoogle Scholar
  3. 3.
    Duhamel, P., Hollmann, H.: Split-Radix FFT algorithm. Electronics Letters 20, 14–16 (1984)CrossRefGoogle Scholar
  4. 4.
    Duhamel, P., Vetterli, M.: Fast Fourier Transforms: a Tutorial Review and a State of the Art. Signal Processing 19, 259–299 (1990)zbMATHCrossRefMathSciNetGoogle Scholar
  5. 5.
    Fiduccia, C.M.: Polynomial Evaluation Via the Division Algorithm: the Fast Fourier Transform Revisited. In: [10], pp. 88–93 (1972)Google Scholar
  6. 6.
    Gauss, C.F.: Werke, Band 3 Königlichen Gesellschaft der Wissenschaften. Göttingen (1866)Google Scholar
  7. 7.
    Johnson, S.G., Frigo, M.: A Modified Split-Radix FFT with Fewer Arithmetic Operations. IEEE Trans. on Signal Processing 55, 111–119 (2007)CrossRefGoogle Scholar
  8. 8.
    Lundy, T.J., Van Buskirk, J.: A New Matrix Approach to Real FFTs and Convolutions of Length 2k. Computing 80, 23–45 (2007)zbMATHCrossRefMathSciNetGoogle Scholar
  9. 9.
    Martens, J.B.: Recursive Cyclotomic Factorization—A New Algorithm for Calculating the Discrete Fourier Transform. IEEE Trans. Acoustics, Speech, and Signal Processing 32, 750–761 (1984)zbMATHCrossRefMathSciNetGoogle Scholar
  10. 10.
    Rosenberg, A.L.: Fourth Annual ACM Symposium on Theory Of Computing. Association for Computing Machinery, New York (1972)Google Scholar
  11. 11.
    Sorensen, H.V., Heideman, M.T., Burrus, C.S.: On Computing the Split-Radix FFT. IEEE Trans. Acoustics, Speech, and Signal Processing 34, 152–156 (1986)CrossRefGoogle Scholar
  12. 12.
    Vetterli, M., Nussbaumer, H.J.: Simple FFT and DCT Algorithms with Reduced Number of Operations. Signal Processing 6, 262–278 (1984)MathSciNetGoogle Scholar
  13. 13.
    Yavne, R.: An Economical Method for Calculating the Discrete Fourier Transform. In: [1], pp. 115–125 (1968)Google Scholar
  14. 14.
    Zhou, F., Kornerup, P.: A New Fast Discrete Fourier Transform. J. VLSI Signal Processing 20, 219–232 (1998)CrossRefGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2007

Authors and Affiliations

  • Daniel J. Bernstein
    • 1
  1. 1.Department of Mathematics, Statistics, and Computer Science (M/C 249), University of Illinois at Chicago, Chicago, IL 60607–7045USA

Personalised recommendations