Skip to main content

Performance of Parallel Bit-Reversal with Cilk and UPC for Fast Fourier Transform

  • Conference paper
Advances in Grid and Pervasive Computing (GPC 2010)

Part of the book series: Lecture Notes in Computer Science ((LNTCS,volume 6104))

Included in the following conference series:

  • 1721 Accesses

Abstract

Bit-reversal is widely known being an important program, as essential part of Fast Fourier Transform. If not carefully and well designed, it may easily take large portion of FFT application’s total execution time. In this paper, we present a parallel implementation of Bit-reversal for FFT using Cilk and UPC. Based on our previous work of creating parallel Bit-reversal using OpenMP in SPMD style from an unparallelized and sequential algorithm, we could note that keeping the existing parallelism by reorganizing the same program using Cilk and UPC libraries is possible yet achieving good performance. Experimental results were obtained by executing these parallel codes on two multi-core SMP platforms, and they show to be very promising.

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

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

Similar content being viewed by others

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  Google Scholar 

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

    Article  MATH  MathSciNet  Google Scholar 

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

    Google Scholar 

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

    Article  MathSciNet  Google Scholar 

  5. Liu, Z., Chapman, B., Wen, Y., Huang, L., Weng, T., 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. 244–259. 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  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. Weng, T.-H., Huang, S.-W., Perng, R.-K., Hsu, C.-H., Li, K.-C.: A Practical OpenMP Implementation of Bit-reversal for Fast Fourier Transform. In: Proceeding of the 4th International Conference on Scalable Information Systems (ICST 2009), Hong Kong, June 10-11 (2009)

    Google Scholar 

  15. Berkeley UPC Documentation, http://upc.lbl.gov/docs/

  16. El-Ghazawi, T., Smith, L.: UPC: Unified Parallel C. In: Proceedings of the 2006 ACM. IEEE conference on Supercomputing (2006)

    Google Scholar 

  17. 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 

  18. The MIT Cilk Project, http://supertech.csail.mit.edu/cilk/

  19. Frigo, M.: Multithreaded programming in Cilk. In: Proceddings of the 2007 international workshop on parallel symbolic computation (2007)

    Google Scholar 

  20. Leiserson, C.E.: The Cilk++ concurrency platform. In: Annual ACM IEEE Design Automation Conference archive, Proceedings of the 46th Annual Design Automation Conference, pp. 522–527 (2009)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2010 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Weng, TH., Huang, SW., Liau, WD., Li, KC. (2010). Performance of Parallel Bit-Reversal with Cilk and UPC for Fast Fourier Transform. In: Bellavista, P., Chang, RS., Chao, HC., Lin, SF., Sloot, P.M.A. (eds) Advances in Grid and Pervasive Computing. GPC 2010. Lecture Notes in Computer Science, vol 6104. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-13067-0_26

Download citation

  • DOI: https://doi.org/10.1007/978-3-642-13067-0_26

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-642-13066-3

  • Online ISBN: 978-3-642-13067-0

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics