An Example Application: Fourier Transform

  • Veljko Milutinović
  • Jakob Salom
  • Nemanja Trifunovic
  • Roberto Giorgi
Part of the Computer Communications and Networks book series (CCN)


This chapter represents an example of accelerating the Cooley-Tukey algorithm with the Maxeler MAX3 machine and gives the results of the achieved acceleration. First, it explains the importance and usages of the Cooley-Tukey algorithm. Second, it gives mathematical explanation of the algorithm and algorithm’s pseudo code and explains different ways to implement the algorithm. The implementation with best time and memory complexity is explained in detail. Third, it explains how the algorithm has been accelerated using DataFlow engines. Fourth, it explains the experiments done to measure acceleration and present the results. The final results are presented as various graphs with explanations.


  1. [Cooley1969]
    Cooley J, Lewis P, Welch P (1969) The fast fourier transform and its applications. IEEE Trans Educ 12(1):77–85CrossRefGoogle Scholar
  2. [Frigo2014]
    (2014) FFT benchmark results [Online], December. Available:
  3. [Hunter2012]
    Hunter J (2014) Matplotlib [Online], December. Available:
  4. [Maxeler2015]
    Maxeler (2015) Multiscale dataFlow programming. Maxeler Technologies Ltd, LondonGoogle Scholar

Copyright information

© Springer International Publishing Switzerland 2015

Authors and Affiliations

  • Veljko Milutinović
    • 1
  • Jakob Salom
    • 2
  • Nemanja Trifunovic
    • 3
  • Roberto Giorgi
    • 4
  1. 1.School of Electrical EngineeringUniversity of BelgradeBelgradeSerbia
  2. 2.MISANUBelgradeSerbia
  3. 3.Maxeler Technologies Inc.Palo AltoUSA
  4. 4.University of SienaSienaItaly

Personalised recommendations