Graph Neural Networks (GNNs) have garnered a lot of recent interest because of their success in learning representations from graph-structured data across several critical applications in cloud and HPC. Owing to their unique compute and memory characteristics that come from an interplay between dense and sparse phases of computations, the emergence of reconfigurable dataflow (aka spatial) accelerators offers promise for acceleration by mapping optimized dataflows (i.e., computation order and parallelism) for both phases. The goal of this work is to characterize and understand the design-space of dataflow choices for running GNNs on spatial accelerators in order for the compilers to optimize the dataflow based on the workload. Specifically, we propose a taxonomy to describe all possible choices for mapping the dense and sparse phases of GNNs spatially and temporally over a spatial accelerator, capturing both the intra-phase dataflow and the inter-phase (pipelined) dataflow. Using this taxonomy, we do deep-dives into the cost and benefits of several dataflows and perform case studies on implications of hardware parameters for dataflows and value of flexibility to support pipelined execution.
翻译:最近,神经网络(GNNs)吸引了许多兴趣,因为它们成功地从云和HPC中若干关键应用的图形结构数据中学习了图形结构数据。由于计算过程的密集和稀少阶段之间的相互作用具有独特的计算和记忆特性,因此出现可重新配置的数据流(aka空间)加速器有可能通过绘制两个阶段的优化数据流(即计算顺序和平行)来加快速度。这项工作的目标是确定和理解在空间加速器上运行GNS的数据流选择的设计空间,以便编译者根据工作量优化数据流。具体地说,我们建议进行分类,说明在空间加速器上空间和时间上对GNNS的密集和稀少阶段进行绘图的所有可能选择,同时记录阶段内数据流和阶段间(管道线)数据流。我们利用这一分类,对若干数据流的成本和效益进行了深层次的调整,并进行关于对数据流到数据流值的硬件参数影响以及执行中导参数的灵活性的案例研究。