SCV-GNN: Sparse Compressed Vector-based Graph Neural Network Aggregation
arXiv:2304.13532 · doi:10.1109/TCAD.2023.3291672
Abstract
Graph neural networks (GNNs) have emerged as a powerful tool to process graph-based data in fields like communication networks, molecular interactions, chemistry, social networks, and neuroscience. GNNs are characterized by the ultra-sparse nature of their adjacency matrix that necessitates the development of dedicated hardware beyond general-purpose sparse matrix multipliers. While there has been extensive research on designing dedicated hardware accelerators for GNNs, few have extensively explored the impact of the sparse storage format on the efficiency of the GNN accelerators. This paper proposes SCV-GNN with the novel sparse compressed vectors (SCV) format optimized for the aggregation operation. We use Z-Morton ordering to derive a data-locality-based computation ordering and partitioning scheme. The paper also presents how the proposed SCV-GNN is scalable on a vector processing system. Experimental results over various datasets show that the proposed method achieves a geometric mean speedup of and over CSC and CSR aggregation operations, respectively. The proposed method also reduces the memory traffic by a factor of and over compressed sparse column (CSC) and compressed sparse row (CSR), respectively. Thus, the proposed novel aggregation format reduces the latency and memory access for GNN inference.
References in corpus (8)
- Deep Graph Library: A Graph-Centric, Highly-Performant Package for Graph Neural Networks
- RouteNet: Leveraging Graph Neural Networks for network modeling and optimization in SDN
- SPRING: A Sparsity-Aware Reduced-Precision Monolithic 3D CNN Accelerator Architecture for Training and Inference
- LayerPipe: Accelerating Deep Neural Network Training by Intra-Layer and Inter-Layer Gradient Pipelining and Multiprocessor Scheduling
- GenGNN: A Generic FPGA Framework for Graph Neural Network Acceleration
- VersaGNN: a Versatile accelerator for Graph neural networks
- A Gradient-Interleaved Scheduler for Energy-Efficient Backpropagation for Training Neural Networks
- ZIPPER: Exploiting Tile- and Operator-level Parallelism for General and Scalable Graph Neural Network Acceleration