Skip to main content

Accelerating the Red/Black SOR Method Using GPUs with CUDA

  • Conference paper
Parallel Processing and Applied Mathematics (PPAM 2011)

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

Abstract

This work presents our strategy, applied optimizations and results in our effort to exploit the computational capabilities of GPUs under the CUDA environment in solving the Laplacian PDE. The parallelizable red/black SOR method was used. Additionally, a program for the CPU, featuring OpenMP, was developed as a performance reference. Significant performance improvements were achieved by using optimization methods which proved to have substantial speedup in performance. Eventually, a direct comparison of performance of both versions was realised. A 51x speedup was measured for the CUDA version over the CPU version, exceeding 134GB/sec bandwidth. Memory access patterns prove to be a critical factor in efficient program execution on GPUs and it is, therefore, appropriate to follow data reorganization in order to achieve the highest feasible memory throughput.

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. NVidia CUDA Reference Manual v. 3.1 NVidia (2010)

    Google Scholar 

  2. NVidia CUDA Toolkit 3.1 CUBLAS Library NVidia (2010)

    Google Scholar 

  3. NVidia CUDA C Best Practices Guide Version 3.1 NVidia (2010)

    Google Scholar 

  4. The OpenCL Specification Khronos group (2009)

    Google Scholar 

  5. OpenMP Application Program Interface version 3.0 OpenMP Architecture Review Board (2008)

    Google Scholar 

  6. Kirk, D.B., Hwu, W.W.: Programming Massively Parallel Processors. Morgan Kaufmann (2009)

    Google Scholar 

  7. Burden, R.L., Faires, D.: Numerical Analysis, 7th edn. Brooks Cole (2000)

    Google Scholar 

  8. Nickolls, J., Buck, I., Garland, M., Skadron, K.: Scalable Parallel Programming with CUDA. ACM Queue 6(2), 40–53 (2008)

    Article  Google Scholar 

  9. Amorim, R., Haase, G., Liebmann, M., Weber, R.: Comparing CUDA and OpenGL implementations for a Jacobi iteration SpezialForschungsBereich F 32, 025 (December 2008)

    Google Scholar 

  10. Ha, L., Krger, J., Joshi, S., Silva, C.T.: Multiscale Unbiased Diffeomorphic Atlas Construction on Multi-GPUs. GPU Computing Gems. Morgan Kaufmann (2011)

    Google Scholar 

  11. Komatsu, K., Soga, T., Egawa, R., Takizawa, H., Kobayashi, H., Takahashi, S., Sasaki, D., Nakahashi, K.: Parallel processing of the Building-Cube Method on a GPU platform Computers & Fluids (2011) (in press, corrected proof)

    Google Scholar 

  12. Cecilia, J.M., Garcìa, J.M., Ujaldòn, M.: CUDA 2D Stencil Computations for the Jacobi Method Para 2010 - State of the Art in Scientific and Parallel Computing (2010)

    Google Scholar 

  13. Amador, G., Gomes, A.: A CUDA-based Implementation of Stable Fluids in 3D with Internal and Moving Boundaries. In: 2010 International Conference on Computational Science and Its Applications (2010)

    Google Scholar 

  14. Amador, G., Gomes, A.: CUDA-based Linear Solvers for Stable Fluids. In: International Conference on Information Science and Applications, ICISA (2010)

    Google Scholar 

  15. Venkatasubramanian, S., Vuduc, R.W.: Tuned and wildly asynchronous stencil kernels for hybrid CPU/GPU systems. In: 23rd International Conference on Supercomputing (2009)

    Google Scholar 

  16. Datta, K., Murphy, M., Volkovand, V., Williams, S., Carter, J., Oliker, L., Patterson, D., Shalf, J., Yelick, K.: Stencil computation optimization and auto-tuning on state-of-the-art multicore architectures. In: ACM/IEEE Conference on Supercomputing (2008)

    Google Scholar 

  17. Krüger, J., Westermann, R.: Linear algebra operators for GPU implementation of numerical algorithms. In: ACM SIGGRAPH 2003 (2003)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2012 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Konstantinidis, E., Cotronis, Y. (2012). Accelerating the Red/Black SOR Method Using GPUs with CUDA. In: Wyrzykowski, R., Dongarra, J., Karczewski, K., Waśniewski, J. (eds) Parallel Processing and Applied Mathematics. PPAM 2011. Lecture Notes in Computer Science, vol 7203. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-31464-3_60

Download citation

  • DOI: https://doi.org/10.1007/978-3-642-31464-3_60

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-642-31463-6

  • Online ISBN: 978-3-642-31464-3

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics