303.ostencil
SPEC ACCEL Benchmark Description

Benchmark Name

303.ostencil


Benchmark Author

Li-Wen Chang, John A. Stratton

Ported to OpenACC by Mathew Colgrove


Benchmark Program General Category

Thermodynamics


Benchmark Description

The importance of solving partial differential equations (PDE) numerically as well as the computationally intensive nature of this class of application have made PDE solvers an interesting candidate for accelerators. In the benchmark we include a stencil code, representing an iterative Jacobi solver of the heat equation on a 3-D structured grid, which can also be used as a buliding block for more advanced multi-grid PDE solvers. The GPU-optimized version draws from several published works on the topic, containing a combination of 2D blocking [Rivera et al.] in the X-Y plane, and register-tiling (coarsening) along the Z-direction, similar to the one developed by Datta et al. Even with these optimizations, the performance limitation is global memory bandwidth for current GPU architectures we have tested.


Input Description

303.ostencil's input is driven wholly from the command line, witch specifies the size of the stencil grid to create and the number of iterations to perform.


Output Description

303.ostencil outputs a file containing the final cell values, with one line per cell in row-major order.


Programming Language

C


Threading Model

OpenACC


Known portability issues

None.


References


Last updated: $Date: 2015-03-02 15:15:22 -0500 (Mon, 02 Mar 2015) $