Coding Stencil Computations Using the Pochoir Stencil-Specification Language

Yuan Tang, Rezaul Alam Chowdhury, Chi-Keung Luk, and Charles Leiserson

Proceedings of the 3rd USENIX Workshop on Hot Topics in Parallelism (HotPar 2011), Berkeley, California, May 26-27, 2011

Pochoir is a compiler for a domain-specific language embedded in C++ which produces excellent code from a simple specification of a desired stencil computation. Pochoir allows a wide variety of boundary conditions to be specified, and it automatically parallelizes and optimizes cache performance. Benchmarks of Pochoir-generated code demonstrate a performance advantage of 2-10 times over straightforward parallel loop code. This paper describes the Pochoir specification language and shows how a wide range of stencil computations can be easily specified.

Download (copyright restrictions may apply): PSPDF