Dynamic Graph Neural Networks (DGNNs) are becoming increasingly popular due to their effectiveness in analyzing and predicting the evolution of complex interconnected graph-based systems. However, hardware deployment of DGNNs still remains a challenge. First, DGNNs do not fully utilize hardware resources because temporal data dependencies cause low hardware parallelism. Additionally, there is currently a lack of generic DGNN hardware accelerator frameworks, and existing GNN accelerator frameworks have limited ability to handle dynamic graphs with changing topologies and node features. To address the aforementioned challenges, in this paper, we propose DGNN-Booster, which is a novel Field-Programmable Gate Array (FPGA) accelerator framework for real-time DGNN inference using High-Level Synthesis (HLS). It includes two different FPGA accelerator designs with different dataflows that can support the most widely used DGNNs. We showcase the effectiveness of our designs by implementing and evaluating two representative DGNN models on ZCU102 board and measuring the end-to-end performance. The experiment results demonstrate that DGNN-Booster can achieve a speedup of up to 5.6x compared to the CPU baseline (6226R), 8.4x compared to the GPU baseline (A6000) and 2.1x compared to the FPGA baseline without applying optimizations proposed in this paper. Moreover, DGNN-Booster can achieve over 100x and over 1000x runtime energy efficiency than the CPU and GPU baseline respectively. Our implementation code and on-board measurements are publicly available at https://github.com/sharc-lab/DGNN-Booster.
翻译:动态图神经网络因其在分析和预测基于复杂互连图的系统演化方面的有效性而日益流行。然而,动态图神经网络的硬件部署仍然是一个挑战。首先,由于时序数据依赖性导致硬件并行度低,动态图神经网络无法充分利用硬件资源。此外,目前缺乏通用的动态图神经网络硬件加速器框架,现有图神经网络加速器框架在处理拓扑和节点特征变化的动态图方面能力有限。针对上述挑战,本文提出DGNN-Booster,这是一种新颖的基于高级综合的现场可编程门阵列加速器框架,用于实时动态图神经网络推理。它包含两种不同数据流的FPGA加速器设计,可支持最广泛使用的动态图神经网络。我们通过在ZCU102开发板上实现并评估两个代表性动态图神经网络模型,并测量端到端性能,展示了我们设计的有效性。实验结果表明,与CPU基线(6226R)相比,DGNN-Booster可实现最高5.6倍的加速,与GPU基线(A6000)相比可达8.4倍,与未应用本文所提优化的FPGA基线相比可达2.1倍。此外,DGNN-Booster的运行时能效分别比CPU和GPU基线高100倍以上和1000倍以上。我们的实现代码和板级测量数据已在https://github.com/sharc-lab/DGNN-Booster公开提供。