DGNN-Booster: A Generic FPGA Accelerator Framework For Dynamic Graph Neural Network Inference

Hanqiu Chen,Cong Hao
DOI: https://doi.org/10.48550/arXiv.2304.06831
2023-04-14
Abstract: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 <a class="link-external link-https" href="https://github.com/sharc-lab/DGNN-Booster" rel="external noopener nofollow">this https URL</a>.
Hardware Architecture,Artificial Intelligence,Machine Learning
What problem does this paper attempt to address?
This paper attempts to solve several key problems in the hardware deployment of Dynamic Graph Neural Networks (DGNNs): 1. **Low hardware parallelism**: Due to temporal data dependencies, DGNNs are difficult to fully utilize hardware resources, resulting in low parallelism. 2. **High memory consumption and frequent memory accesses**: Graph embeddings evolving over time lead to large memory consumption and frequent data transmissions. 3. **High energy consumption**: DGNNs have high energy consumption because of computationally - intensive matrix multiplications and complex mathematical operations. 4. **Lack of a general - purpose hardware accelerator framework**: Existing GNN accelerator frameworks have limited ability to handle dynamic graphs with changing topologies and node features. To address these challenges, the paper proposes a novel FPGA accelerator framework named DGNN - Booster, which supports real - time DGNN inference and has the following features: - **Multi - level parallelism**: Through hardware architecture optimization, multi - level parallelism is achieved, aiming to provide lower energy consumption and higher real - time performance than CPUs and GPUs. - **Two different accelerator designs**: Two FPGA accelerator designs that support different data flow patterns can support the most commonly used DGNN models. - **Hardware - efficient architecture design**: Hardware efficiency is improved through techniques such as task - scheduling schemes, graph re - numbering, and format conversion. Through these innovations, DGNN - Booster can significantly improve the inference speed and energy efficiency of DGNNs on FPGA, thereby providing effective hardware support for the practical applications of dynamic graph neural networks.