A Structured Grid Solver with Polyhedral+Dataflow Representation

Document Type

Conference Proceeding

Publication Date



Proto is a C++ embedded Domain Specific Library for stencil-based computations. Proto is augmented in this work with a polyhedral dataflow intermediate representation (IR). The IR exposes several promising transformations. Each IR instances produces a performance model, and source code in C++. Generated code is annotated with OpenMP or OpenACC pragmas for shared-memory or accelerator parallelism. Performance is measured on modern multicore CPU and GPU platforms.


LCPC 2019: Languages and Compilers for Parallel Computing is volume 11998 of the Lecture Notes in Computer Science book series.