Accelerating single iteration performance of CUDA-based 3D reaction-diffusion simulations

John K. Holmen, David L. Foster

Research output: Contribution to journalArticlepeer-review

2 Scopus citations

Abstract

The most commonly used approach for solving reaction-diffusion systems relies upon stencil computations. Although stencil computations feature low compute intensity, they place high demands on memory bandwidth. Fortunately, GPU computing allows for the heavy reliance of stencil computations on neighboring data points to be exploited to significantly increase simulation speeds by reducing these memory bandwidth demands. Upon reviewing previously published works, a wide-variety of efforts have been made to optimize NVIDIA CUDA-based stencil computations. However, a critical aspect contributing to algorithm performance is commonly glossed over: the halo region loading technique utilized in conjunction with a given spatial blocking technique. This paper presents an in-depth examination of this aspect and the associated single iteration performance impacts when using symmetric, nearest neighbor 19-point stencils. This is accomplished by closely examining how the simulated space is partitioned into thread blocks and the balance between memory accesses, divergence, and computing threads. The resulting optimization strategy for accelerating 3-dimensional reaction-diffusion simulations offers up to 2.45 times speedup for single-precision floating point numbers in reference to GPU-based speedups found within the previously published work that this paper directly extends. In reference to our multithreaded CPU-based implementation, the resulting optimization strategy offers up to 8.69 times speedup for single-precision floating point numbers.

Original languageEnglish
Pages (from-to)343-363
Number of pages21
JournalInternational Journal of Parallel Programming
Volume42
Issue number2
DOIs
StatePublished - Apr 2014
Externally publishedYes

Funding

Acknowledgments This research was supported by an equipment donation from the NVIDIA Corporation as a part of the Academic Partnership Program.

Keywords

  • Halo region loading techniques
  • NVIDIA CUDA
  • Reaction-diffusion systems
  • Spatial blocking techniques
  • Stencil computations

Fingerprint

Dive into the research topics of 'Accelerating single iteration performance of CUDA-based 3D reaction-diffusion simulations'. Together they form a unique fingerprint.

Cite this