Skip to main content

Experiments on Speeding Up the Recursive Fast Fourier Transform by Using AVX-512 SIMD Instructions

  • Conference paper
  • First Online:
Applications in Electronics Pervading Industry, Environment and Society (ApplePies 2022)

Abstract

The Fast Fourier Transform is probably one of the most studied algorithms of all time. New techniques regarding hardware and software are often applied and tested on it, but the interest in FFT is still large because of its applications - signal and image processing, numerical computations, etc. In this paper, we start from a trivial recursive version of the algorithm and we speed it up using AVX-512 Single Instruction Multiple Data (SIMD) instructions on an Intel i7 CPU with native support to AVX-512. In particular, we study the impact of two different storage choices of vector of complex numbers: block interleaving and complex interleaving. Experimental results show that automatic vectorization provides a 10.65% (\(\sim 1.12\times \)) speedup, while with vectorization done by hand the speedup reaches 33.78% (\(\sim 1.51\times \)). We have made our code publicly available, which could be helpful for SIMD instructions teaching purposes.

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

Access this chapter

Subscribe and save

Springer+ Basic
$34.99 /Month
  • Get 10 units per month
  • Download Article/Chapter or eBook
  • 1 Unit = 1 Article or 1 Chapter
  • Cancel anytime
Subscribe now

Buy Now

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Similar content being viewed by others

Notes

  1. 1.

    https://www.intel.com/content/www/us/en/docs/intrinsics-guide/index.html.

  2. 2.

    The machine we used has an Intel® Xeon®, 15 GiB of RAM and Ubuntu 4.15.0-171 as OS.

References

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

    Article  Google Scholar 

  2. Vizcaino, P., Mantovani, F., Labarta, J.: Accelerating fft using nec sx-aurora vector engine. In: Chaves, R., et al. (eds.) Euro-Par 2021. LNCS, vol. 13098, pp. 179–190. Springer, Cham (2022). https://doi.org/10.1007/978-3-031-06156-1_15

    Chapter  Google Scholar 

  3. Popovici, D.T., Franchetti, F., Low, T.M.: Mixed data layout kernels for vectorized complex arithmetic. In: 2017 IEEE High Performance Extreme Computing Conf. (HPEC), pp. 1–7 (2017)

    Google Scholar 

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

    Article  MathSciNet  MATH  Google Scholar 

  5. Gentleman, W.M., Sande, G.: Fast Fourier Transforms: for fun and profit. In: Proceedings of the November 7–10, 1966, Fall Joint Computer Conference, ser. AFIPS ’66 (Fall), pp. 563–578. Association for Computing Machinery, New York (1966). https://doi.org/10.1145/1464291.1464352

  6. Sharp, D., Stoyanov, M., Tomov, S., Dongarra, J.: A more portable HeFFTe: implementing a fallback algorithm for Scalable Fourier Transforms. In: 2021 IEEE High Performance Extreme Computing Conf. (HPEC), pp. 1–5 (2021)

    Google Scholar 

  7. Takahashi, D.: High-Performance FFT Algorithms, pp. 41–68. Springer, Singapore (2020). https://doi.org/10.1007/978-981-13-9965-7_6

Download references

Acknowledgments

Work partially supported by H2020 project TEXTAROSSA (grant no. 956831), https://textarossa.eu/) and partially by the Italian Ministry of Education and Research (MUR), CrossLab project (Departments of Excellence). We also want to thank Prof. Carlo Vallati for providing the machine used to run the experiments and Emanuele Ruffaldi for interesting discussions on the topic.

Author information

Authors and Affiliations

Authors

Corresponding authors

Correspondence to Giacomo Sansone or Marco Cococcioni .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2023 The Author(s), under exclusive license to Springer Nature Switzerland AG

About this paper

Check for updates. Verify currency and authenticity via CrossMark

Cite this paper

Sansone, G., Cococcioni, M. (2023). Experiments on Speeding Up the Recursive Fast Fourier Transform by Using AVX-512 SIMD Instructions. In: Berta, R., De Gloria, A. (eds) Applications in Electronics Pervading Industry, Environment and Society. ApplePies 2022. Lecture Notes in Electrical Engineering, vol 1036. Springer, Cham. https://doi.org/10.1007/978-3-031-30333-3_34

Download citation

  • DOI: https://doi.org/10.1007/978-3-031-30333-3_34

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-031-30332-6

  • Online ISBN: 978-3-031-30333-3

  • eBook Packages: EngineeringEngineering (R0)

Publish with us

Policies and ethics