Stateful dataflow multigraphs: a data-centric model for performance portability on heterogeneous architectures
Stateful dataflow multigraphs: a data-centric model for performance portability on heterogeneous architectures
复制标题
有状态数据流多重图:以数据为中心的模型,用于异构架构上的性能可移植性
DOI:
--
复制
发表时间:
2019
期刊:
影响因子:
--
通讯作者:
T. Hoefler
中科院分区:
文献类型:
--
作者:
Tal Ben;J. D. F. Licht;A. Ziogas;Timo Schneider;T. Hoefler
The ubiquity of accelerators in high-performance computing has driven programming complexity beyond the skill-set of the average domain scientist. To maintain performance portability in the future, it is imperative to decouple architecture-specific programming paradigms from the underlying scientific computations. We present the Stateful DataFlow multiGraph (SDFG), a data-centric intermediate representation that enables separating program definition from its optimization. By combining fine-grained data dependencies with high-level control-flow, SDFGs are both expressive and amenable to program transformations, such as tiling and double-buffering. These transformations are applied to the SDFG in an interactive process, using extensible pattern matching, graph rewriting, and a graphical user interface. We demonstrate SDFGs on CPUs, GPUs, and FPGAs over various motifs --- from fundamental computational kernels to graph analytics. We show that SDFGs deliver competitive performance, allowing domain scientists to develop applications naturally and port them to approach peak hardware performance without modifying the original scientific code.