The International Conference for High Performance Computing, Networking, Storage and Analysis
Orthogonal Scheduling of Stencil Computations with Chapel Iterators.
Student: Ian Bertolacci (Colorado State University)
Supervisor: Michelle M. Strout (Colorado State University)
Abstract: Stencil computations are an important element of scientific computing that can suffer from performance caps due to poor iteration scheduling. Implementing stencil computations is already a difficult task, and the addition of specifying schedules with both good parallelism and high data locality introduces a new dimension of difficulty and code complexity. While compilers already exist to automate the task of optimization, they may lack the information required to recognize when code could be transformed to take advantage of a particular scheduling.
Using the Chapel language, we implemented tiling schedules decoupled from the implementation of the stencil computation. We observed performance gains equivalent to highly coupled code, without introducing the complexity. We will discuss the advantages of using iterators as a scheduling mechanism, as well as the possibility of creating a Chapel module of iterators that would provide developers with a simple method to include better optimized scheduling into their code.