99
Views
0
CrossRef citations to date
0
Altmetric
Research Article

Design of a modern fast Fourier transform and cache effective bit-reversal algorithm

& ORCID Icon
Pages 229-248 | Received 23 Jan 2023, Accepted 07 Feb 2023, Published online: 02 Mar 2023

References

  • Cooley JW, Tukey JW. An algorithm for the machine calculation of complex Fourier series. Math Comput. 1965;19(90):297–301.
  • Cochran WT, Cooley JW, Favin DL, et al. What is the fast Fourier transform?. Proc IEEE. 1967;55(10):1664–1674.
  • Fich FE, Munro JI, Poblete PV. Permuting in place. SIAM J Comput. 1995;24(2):266–278.
  • Nadehara K, Miyazaki T, Kuroda I. Radix-4 FFT implementation using SIMD multimedia instructions. IEEE Comput Soc. 1999;2131–2134. DOI:10.1109/ICASSP.1999.758355
  • Wang X, Zhang Y, Ding S. A high performance FFT library with single instruction multiple data (SIMD) architecture. IEEE. 2011;630–633.
  • Diéguez AP, Amor M, Lobeiras J, et al. Solving large problem sizes of index-digit algorithms on GPU: FFT and tridiagonal system solvers. IEEE Trans Comput. 2018;67(1):86–101.
  • Durrani S, Chughtai MS, Hidayetoglu M, et al. Accelerating Fourier and number theoretic transforms using tensor cores and warp shuffles. In: 2021 30th International conference on parallel architectures and compilation techniques (PACT); 2021. p. 345–355.
  • Gandhi V, Wang H, Bourd A. Optimization of fast Fourier transform (FFT) on Qualcomm Adreno GPU. In: Proceedings of the international workshop on OpenCL; New York (NY): Association for Computing Machinery; 2019. p. 1–2; IWOCL'19. DOI:10.1145/3318170.3319372
  • Elango K, Muniandi K. A novel digital logic for bit reversal and address generations in FFT computations. Wirel Pers Commun. 2023;128(3):1827–1838. DOI:10.1007/s11277-022-10021-8
  • Takahashi D. The art of high performance computing for computational science. Vol. 1. Springer Singapore; 2019. Chapter fast Fourier transform in large-scale systems; p. 137–168.
  • Namneh RAA, Darabkh KA, Jafar IF. Efficient bit reversal algorithms in parallel computers. Int J Comput Appl. 2012;19:154–165.
  • Becoulet A, Verguet A. A depth-first iterative algorithm for the conjugate pair fast Fourier transform. IEEE Trans Signal Process. 2021;69:1537–1547.
  • Li Z, Jia H, Zhang Y, et al. Automatic generation of high-performance FFT kernels on arm and x86 cpus. IEEE Trans Parallel Distrib Syst. 2020;31(8):1925–1941.
  • Fast, modern C++ DSP framework. Available from: http://www.kfrlib.com/
  • intel integrated performance primitives; Available from: https://software.intel.com/en-us/intel-ipp/
  • Matteo F, Johnson SG. FFTW home page [online]; 2018. Available from: http://www.fftw.org/
  • Frigo M, Johnson SG. The design and implementation of FFTW3. Proc IEEE. 2005;93(2):216–231.
  • Johnson SG, Frigo M. A modified split-radix FFT with fewer arithmetic operations. IEEE Trans Signal Process. 2007;55(1):111–119.
  • Arndt Jorg. FFTs for programmers [online]; 1978. Available from: http://www.jjj.de/fxt
  • Intel corporation. intel intrinsics guide [online]; 2018. Available from: https://software.intel.com/sites/landingpage/IntrinsicsGuide/
  • Carter L, Gatlin KS. Towards an optimal bit-reversal permutation program. In: Foundations of computer science, 1998. Proceedings. 39th annual symposium on; IEEE; 1998. p. 544–553.
  • Knauth C, Adas B, Whitfield D, et al. Practically efficient methods for performing bit-reversed permutation in C++11 on the x86-64 architecture. CoRR. 2017; abs/1708.01873.
  • Anderson SE. Bit twiddling hacks; Available from: graphics.stanford.edu/seander/bithacks.html
  • CPPREFERENCE. C++ sfinae on standard library reference page; Available from: https://en.cppreference.com/w/cpp/language/sfinae
  • Simek A. Safft; Available from: https://github.com/skalathe/safft

Reprints and Corporate Permissions

Please note: Selecting permissions does not provide access to the full text of the article, please see our help page How do I view content?

To request a reprint or corporate permissions for this article, please click on the relevant link below:

Academic Permissions

Please note: Selecting permissions does not provide access to the full text of the article, please see our help page How do I view content?

Obtain permissions instantly via Rightslink by clicking on the button below:

If you are unable to obtain permissions via Rightslink, please complete and submit this Permissions form. For more information, please visit our Permissions help page.