Sparsity-Aware Communication for Distributed Graph Neural Network Training
Ujjaini Mukhodopadhyay, Alok Tripathy, Oguz Selvitopi, Katherine Yelick, Aydin Buluc
TL;DR
This work tackles the communication bottleneck in distributed full-batch Graph Neural Network (GNN) training by introducing sparsity-aware SpMM algorithms that communicate only necessary data. It develops 1D and 1.5D sparsity-aware methods and leverages graph partitioning to minimize both total and maximum inter-process communication, with Graph-VB (GVB) outperforming traditional METIS in many scenarios. The approach demonstrates up to 14X speedups on 256 GPUs and, on some graphs, reduces communication to near-zero relative to sparsity-oblivious baselines, validating its practicality for large-scale GNN training. The results suggest that sparsity-aware communication, combined with multi-criteria partitioning, can significantly enhance scalability and may extend to other communication-avoiding schemes and partitions.
Abstract
Graph Neural Networks (GNNs) are a computationally efficient method to learn embeddings and classifications on graph data. However, GNN training has low computational intensity, making communication costs the bottleneck for scalability. Sparse-matrix dense-matrix multiplication (SpMM) is the core computational operation in full-graph training of GNNs. Previous work parallelizing this operation focused on sparsity-oblivious algorithms, where matrix elements are communicated regardless of the sparsity pattern. This leads to a predictable communication pattern that can be overlapped with computation and enables the use of collective communication operations at the expense of wasting significant bandwidth by communicating unnecessary data. We develop sparsity-aware algorithms that tackle the communication bottlenecks in GNN training with three novel approaches. First, we communicate only the necessary matrix elements. Second, we utilize a graph partitioning model to reorder the matrix and drastically reduce the amount of communicated elements. Finally, we address the high load imbalance in communication with a tailored partitioning model, which minimizes both the total communication volume and the maximum sending volume. We further couple these sparsity-exploiting approaches with a communication-avoiding approach (1.5D parallel SpMM) in which submatrices are replicated to reduce communication. We explore the tradeoffs of these combined optimizations and show up to 14X improvement on 256 GPUs and on some instances reducing communication to almost zero resulting in a communication-free parallel training relative to a popular GNN framework based on communication-oblivious SpMM.
