Repository logo
 

Separating implementation concerns in stencil computations for semiregular grids

Date

2013

Authors

Stone, Andrew, author
Strout, Michelle Mills, advisor
Massey, Daniel, committee member
Pallickara, Shrideep, committee member
Randall, David, committee member

Journal Title

Journal ISSN

Volume Title

Abstract

In atmospheric and ocean simulation programs, stencil computations occur on semiregular grids where subdomains of the grid are regular (i.e. stored in an array), but boundaries between subdomains connect in an irregular fashion. Implementations of stencils on semiregular grids often have grid connectivity details tangled with stencil computation code. When grid connectivity concerns tangle with stencil code it becomes difficult for programmers to modify the code. This is because any change made will have to account for grid connectivity. In this dissertation we introduce programming abstractions for the class of semiregular grids and describe a prototype Fortran 90+ library called GridWeaver that implements these abstractions. Implementing these abstractions requires determining the communication schedule given an orthogonal specification of the grid decomposition and solving nodes in the grid with a non-standard number of neighbors. We present solutions to these issues that work within the context of grids used in atmospheric and ocean simulations. We also show that to maintain the performance while still providing a separation of concerns, it is necessary for a source-to source translator to perform inlining between user code and the GridWeaver runtime library code. We present performance results for stencil computations extracted from the Parallel Ocean Program and Global Cloud-Resolving Model.

Description

Rights Access

Subject

stencil computations
active libraries
climate simulation
domain-specific languages
earth simulation
semiregular grids

Citation

Associated Publications