Skip to main content

A Practical OpenMP Implementation of Bit-Reversal for Fast Fourier Transform

  • Conference paper
Scalable Information Systems (INFOSCALE 2009)

Abstract

In this paper, we describe our experience of creating an OpenMP implementation of Bit-reversal for Fast Fourier Transform programs from the existing un-parallelizable sequential algorithm. The aim of this work is to present an analysis of a case study showing the development of a shared memory parallel Bit-reversal for the FFT parallel code with practical and efficient use of multi-core machines. We present our implementation and discuss the results of the case study in terms of program improvement that may be needed to help parallel application developers with similar high performance goals. Our preliminary studies, results and experiments based on FFT code running on a four 4-cores Intel Xeon64 CPUs /Dell 6850 platform. The experimental results show that the performance of our new parallel code on 16 cores shared-memory machine are promising.

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 39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight 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

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Chapman, B., Bregier, F., Patil, A., Prabhakar, A.: Achieving High Performance under OpenMP on ccNUMA and Software Distributed Shared Memory Systems. Concurrency and Computation Practice and Experience 14, 1–17 (2002)

    Article  MATH  Google Scholar 

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

    Article  MathSciNet  MATH  Google Scholar 

  3. Bollman, D., Seguel, J., Feo, J.: Fast Digit-Index Permutations. Scientific Progress 5(2), 137–146 (1996)

    Article  Google Scholar 

  4. Karp, A.H.: Bit Reversal on Uniprocessors. SIAM Review 38, 289–307 (1996)

    Article  MathSciNet  MATH  Google Scholar 

  5. Liu, Z., Chapman, B., Wen, Y., Huang, L., Weng, T.H., Hernandez, O.: Analyses for the Translation of OpenMP Codes into SPMD Style with Array Privatization. In: Voss, M.J. (ed.) WOMPAT 2003. LNCS, vol. 2716, pp. 26–41. Springer, Heidelberg (2003)

    Chapter  Google Scholar 

  6. Lokhmotov, A., Mycroft, A.: Optimal bit-reversal using vector permutations. In: Proceedings of ACM Symposium on the 19th Parallel Algorithms and Architectures, pp. 198–199 (2007)

    Google Scholar 

  7. OpenMP Architecture Review Board. Fortran 2.0 and C/C++ 2.0 Specifications, http://www.openmp.org

  8. Rodriguez, J.J.: An improved Bit-reversal algorithm for the fast Fourier transform. In: Proceedings of International Conference on Acoustics, Speech, and Signal Processing, vol. 3, pp. 1407–1410 (1988)

    Google Scholar 

  9. Rubio, M., Gómez, P., Drouiche, K.: A new superfast bit reversal algorithm. International Journal of Adaptive Control and Signal Processing 16(10), 703–707 (2002)

    Article  MATH  Google Scholar 

  10. Seguel, J., Bollman, D., Feo, J.: A Framework for the Design and Implementation of FFT Permutation Algorithms. IEEE Transactions on Parallel and Distributed Systems 11(7), 625–635 (2000)

    Article  Google Scholar 

  11. Wallcraft, A.J.: SPMD OpenMP vs. MPI for Ocean Models. In: Proceedings of First European Workshops on OpenMP (EWOMP 1999), Lund, Sweden (1999)

    Google Scholar 

  12. Zhang, Z., Zhang, X.: Fast Bit-Reversals on Uniprocessors and Shared-Memory Multiprocessors. SIAM Journal on Scientific Computing 22(6), 2113–2134 (2000)

    Article  MathSciNet  MATH  Google Scholar 

  13. Takahashi, D., Sato, M., Boku, T.: An OpenMP Implementation of Parallel FFT and Its Performance on IA-64 Processors. In: Voss, M.J. (ed.) WOMPAT 2003. LNCS, vol. 2716, pp. 99–108. Springer, Heidelberg (2003)

    Chapter  Google Scholar 

  14. Frigo, M., Leiserson, C.E., Randall, K.H.: The Implementation of the Cilk-5 Multithreaded Language. In: ACM SIGPLAN 1998 Conference on Programming Language Design and Implementation, pp. 212–223 (1998)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2009 ICST Institute for Computer Science, Social Informatics and Telecommunications Engineering

About this paper

Cite this paper

Weng, TH., Huang, SW., Perng, RK., Hsu, CH., Li, KC. (2009). A Practical OpenMP Implementation of Bit-Reversal for Fast Fourier Transform. In: Mueller, P., Cao, JN., Wang, CL. (eds) Scalable Information Systems. INFOSCALE 2009. Lecture Notes of the Institute for Computer Sciences, Social Informatics and Telecommunications Engineering, vol 18. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-10485-5_15

Download citation

  • DOI: https://doi.org/10.1007/978-3-642-10485-5_15

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-642-10484-8

  • Online ISBN: 978-3-642-10485-5

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics