中文

VersaGNN:一种面向图神经网络的通用加速器

机器学习 2021-05-05 v1 人工智能 硬件体系结构

摘要

图神经网络(GNN)是一种通过分析图结构数据来巧妙借助节点级消息传递捕获其依赖信息的有前景的方法。它已在节点分类、图匹配、聚类和图生成等许多任务中取得当前最优(state-of-the-art)表现。由于 GNN 处理非欧几里得数据,其不规则的数据访问模式在 GPU 和 CPU 等传统架构上带来可观的计算成本与开销。我们的分析表明 GNN 采用混合计算模型。聚合(或消息传递)阶段执行向量加法,其中向量以不规则步幅读取。变换(或节点嵌入)阶段可为稠密或稀疏-稠密矩阵乘法。本工作中,我们提出 VersaGNN,一种基于 systolic array 的超低功耗通用硬件加速器,统一了稠密与稀疏矩阵乘法。通过将这一单一优化的 systolic array 应用于聚合与变换两阶段,我们显著缩减了芯片面积与能耗。随后我们将计算引擎划分为分块 systolic array 以支持稠密矩阵乘法的 Strassen 算法,大幅减少乘法次数并实现 GNN 的高吞吐计算。为平衡稀疏-稠密矩阵乘法的负载,我们还引入一种贪心算法,将压缩格式的稀疏子矩阵合并为紧凑矩阵以减少计算周期。与当前最优的 GNN 软件框架相比,VersaGNN 在 CPU 上平均实现 3712×\times 加速与 1301.25×\times 能耗降低,在 GPU 上实现 35.4×\times 加速与 17.66×\times 能耗降低。

关键词

引用

@article{arxiv.2105.01280,
  title  = {VersaGNN: a Versatile accelerator for Graph neural networks},
  author = {Feng Shi and Ahren Yiqiao Jin and Song-Chun Zhu},
  journal= {arXiv preprint arXiv:2105.01280},
  year   = {2021}
}