Skip to main content

Abstract

The fast Fourier transform (FFT) is an efficient implementation of the discrete Fourier transform (DFT) . The FFT is widely used in numerous applications in engineering, science, and mathematics. This chapter presents an introduction to the basis of the FFT and its implementation in parallel computing. Parallel computation is becoming indispensable in solving the large-scale problems that arise in a wide variety of applications. The chapter provides a thorough and detailed explanation of FFT for parallel computers. The algorithms are presented in pseudocode, and a complexity analysis is provided. This chapter also provides up-to-date computational techniques relevant to the FFT in state-of-the-art processors.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 99.00
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 129.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info
Hardcover Book
USD 129.99
Price excludes VAT (USA)
  • Durable hardcover edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Notes

  1. 1.

    http://www.ffte.jp/

References

  1. 2DECOMP & FFT—Library for 2D Pencil Decomposition and Distributed FFTs. http://www.2decomp.org/

  2. TOP500 Supercomputer Sites. http://www.top500.org/

  3. O. Ayala, L.P. Wang, Parallel implementation and scalability analysis of 3D fast Fourier transform using 2D domain decomposition. Parallel Comput. 39, 58–77 (2013)

    Article  MathSciNet  Google Scholar 

  4. D.H. Bailey, FFTs in external or hierarchical memory. J. Supercomput. 4, 23–35 (1990)

    Article  Google Scholar 

  5. W.T. Cochran, J.W. Cooley, D.L. Favin, H.D. Helms, R.A. Kaenel, W.W. Lang, G.C. Maling, D.E. Nelson, C.M. Rader, P.D. Welch, What is the fast Fourier transform? IEEE Trans. Audio Electroacoust. 15, 45–55 (1967)

    Article  Google Scholar 

  6. J.W. Cooley, J.W. Tukey, An algorithm for the machine calculation of complex Fourier series. Math. Comput. 19, 297–301 (1965)

    Article  MathSciNet  Google Scholar 

  7. M. Eleftheriou, B.G. Fitch, A. Rayshubskiy, T.J.C. Ward, R.S. Germain, Scalable framework for 3D FFTs on the Blue Gene/L supercomputer: implementation and early performance measurements. IBM J. Res. Dev. 49, 457–464 (2005)

    Article  Google Scholar 

  8. B. Fang, Y. Deng, G. Martyna, Performance of the 3D FFT on the 6D network torus QCDOC parallel supercomputer. Comput. Phys. Commun. 176, 531–538 (2007)

    Article  Google Scholar 

  9. A. Faraj, X. Yuan, Automatic generation and tuning of MPI collective communication routines, in Proceedings of 19th ACM International Conference on Supercomputing (ICS’05) (2005), pp. 393–402

    Google Scholar 

  10. M. Frigo, S.G. Johnson, The design and implementation of FFTW3. Proc. IEEE 93, 216–231 (2005)

    Article  Google Scholar 

  11. R. Kumar, A. Mamidala, D.K. Panda, Scaling all-to-all collective on multi-core systems, in Proceedings of 2008 IEEE International Parallel and Distributed Processing Symposium (IPDPS 2008) (2008)

    Google Scholar 

  12. MVAPICH: MPI over InfiniBand and iWARP. http://mvapich.cse.ohio-state.edu/

  13. NVIDIA Corporation, CUFFT Library User’s Guide (2017). http://docs.nvidia.com/cuda/pdf/CUFFT_Library.pdf

  14. D. Pekurovsky, P3DFFT: a framework for parallel computations of Fourier transforms in three dimensions. SIAM J. Sci. Comput. 34, C192–C209 (2012)

    Article  MathSciNet  Google Scholar 

  15. The Portland Group, CUDA Fortran Programming Guide and Reference (2017). http://www.pgroup.com/doc/pgicudaforug.pdf

  16. M. Püschel, J.M.F. Moura, J.R. Johnson, D. Padua, M.M. Veloso, B.W. Singer, J. Xiong, F. Franchetti, A. Gačić, Y. Voronenko, K. Chen, R.W. Johnson, N. Rizzolo, SPIRAL: code generation for DSP transforms. Proc. IEEE 93, 232–275 (2005)

    Article  Google Scholar 

  17. G.E. Rivard, Direct fast Fourier transform of bivariate functions. IEEE Trans. Acoust. Speech Signal Process. ASSP-25, 250–252 (1977)

    Article  Google Scholar 

  18. R.C. Singleton, An algorithm for computing the mixed radix fast Fourier transform. IEEE Trans. Audio Electroacoust. 17, 93–103 (1969)

    Article  Google Scholar 

  19. D. Takahashi, A blocking algorithm for parallel 1-D FFT on shared-memory parallel computers, in Proceedings of 6th International Conference on Applied Parallel Computing (PARA 2002). Lecture Notes in Computer Science, vol. 2367 (Springer, 2002), pp. 380–389

    Google Scholar 

  20. D. Takahashi, Automatic tuning for parallel FFTs, in Software Automatic Tuning: From Concepts to State-of-the-Art Results, ed. by K. Naono, K. Teranishi, J. Cavazos, R. Suda (Springer, 2010), pp. 49–67

    Google Scholar 

  21. D. Takahashi, An implementation of parallel 3-D FFT with 2-D decomposition on a massively parallel cluster of multi-core processors, in Proceedings of 8th International Conference on Parallel Processing and Applied Mathematics (PPAM 2009), Part I, Workshop on Memory Issues on Multi- and Manycore Platforms. Lecture Notes in Computer Science, vol. 6067 (Springer, 2010), pp. 606–614

    Google Scholar 

  22. D. Takahashi, Implementation of parallel 1-D FFT on GPU clusters, in Proceedings of 2013 IEEE 16th International Conference on Computational Science and Engineering (CSE 2013) (2013), pp. 174–180

    Google Scholar 

  23. C. Temperton, Self-sorting mixed-radix fast Fourier transforms. J. Comput. Phys. 52, 1–23 (1983)

    Article  MathSciNet  Google Scholar 

  24. C. Van Loan, Computational Frameworks for the Fast Fourier Transform (SIAM Press, Philadelphia, PA, 1992)

    Book  Google Scholar 

  25. H. Wang, S. Potluri, M. Luo, A.K. Singh, S. Sur, D.K. Panda, MVAPICH2-GPU: optimized GPU to GPU communication for infiniband clusters. Comput. Sci.—Res. Dev. 26, 257–266 (2011)

    Article  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Daisuke Takahashi .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2019 Springer Nature Singapore Pte Ltd.

About this chapter

Check for updates. Verify currency and authenticity via CrossMark

Cite this chapter

Takahashi, D. (2019). Fast Fourier Transform in Large-Scale Systems. In: Geshi, M. (eds) The Art of High Performance Computing for Computational Science, Vol. 1. Springer, Singapore. https://doi.org/10.1007/978-981-13-6194-4_8

Download citation

  • DOI: https://doi.org/10.1007/978-981-13-6194-4_8

  • Published:

  • Publisher Name: Springer, Singapore

  • Print ISBN: 978-981-13-6193-7

  • Online ISBN: 978-981-13-6194-4

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics