Ugrapher: High-Performance Graph Operator Computation Via Unified Abstraction for Graph Neural Networks.

Yangjie Zhou,Jingwen Leng,Yaoxu Song,Shuwen Lu,Mian Wang,Chao Li,Minyi Guo,Wenting Shen,Yong Li,Wei Lin,Xiangwen Liu,Hanqing Wu
DOI: https://doi.org/10.1145/3575693.3575723
2023-01-01
Abstract:As graph neural networks (GNNs) have achieved great success in many graph learning problems, it is of paramount importance to support their efficient execution. Different graphs and different operators present different patterns during execution. However, there is still a gap in the existing GNN acceleration research to explore adaptive parallelism. We show that existing GNN frameworks rely on handwritten static kernels, which fail to achieve the best performance across different graph operators and input graph structures. In this work, we propose uGrapher, a unified interface that achieves general high performance for different graph operators and datasets. The existing GNN frameworks can easily integrate our design for its simple and unified API. We take a principled approach that decouples a graph operator’s computation and schedule to achieve that. We first build a GNN-specific operator abstraction that incorporates the semantics of graph tensors and graph loops. We explore various schedule strategies based on the abstraction that can balance the well-established trade-off relationship between parallelism, locality, and efficiency. Our evaluation shows that uGrapher can bring up to 29.1× (3.5× on average) performance improvement over the state-of-the-art baselines on two studied NVIDIA GPUs.
What problem does this paper attempt to address?