Communication-Efficient Graph Neural Networks with Probabilistic Neighborhood Expansion Analysis and Caching

Tim Kaler, Alexandros-Stavros Iliopoulos, Philip Murzynowski, Tao B. Schardl, Charles E. Leiserson +1 more
5/4/2023
cs.LGcs.DCcs.PF

No official code found. Best implementation: MITIBMxGraph/SALIENT_plusplus (8 stars, Apache-2.0, last commit 2023-07-28). 1 more below.

Abstract

Training and inference with graph neural networks (GNNs) on massive graphs has been actively studied since the inception of GNNs, owing to the widespread use and success of GNNs in applications such as recommendation systems and financial forensics. This paper is concerned with minibatch training and inference with GNNs that employ node-wise sampling in distributed settings, where the necessary partitioning of vertex features across distributed storage causes feature communication to become a major bottleneck that hampers scalability. To significantly reduce the communication volume without compromising prediction accuracy, we propose a policy for caching data associated with frequently accessed vertices in remote partitions. The proposed policy is based on an analysis of vertex-wise inclusion probabilities (VIP) during multi-hop neighborhood sampling, which may expand the neighborhood far beyond the partition boundaries of the graph. VIP analysis not only enables the elimination of the communication bottleneck, but it also offers a means to organize in-memory data by prioritizing GPU storage for the most frequently accessed vertex features. We present SALIENT++, which extends the prior state-of-the-art SALIENT system to work with partitioned feature data and leverages the VIP-driven caching policy. SALIENT++ retains the local training efficiency and scalability of SALIENT by using a deep pipeline and drastically reducing communication volume while consuming only a fraction of the storage required by SALIENT. We provide experimental results with the Open Graph Benchmark data sets and demonstrate that training a 3-layer GraphSAGE model with SALIENT++ on 8 single-GPU machines is 7.1 faster than with SALIENT on 1 single-GPU machine, and 12.7 faster than with DistDGL on 8 single-GPU machines.

View on arXivView PDF

Code Implementations(2)

Apache-2.0

The official SALIENT++ system described in the paper "Communication-Efficient Graph Neural Networks with Probabilistic Neighborhood Expansion Analysis and Caching".

84C++, PythonMay 4, 20233 years agoApache-2.0
Apache-2.0

Artifact for the MLSys 2023 paper "Communication-Efficient Graph Neural Networks with Probabilistic Neighborhood Expansion Analysis and Caching"

41C++, ShellMar 31, 20233 years agoApache-2.0

Similar Papers

Cite this paper

@article{kaler2023communicationefficient,
  title  = {Communication-Efficient Graph Neural Networks with Probabilistic Neighborhood Expansion Analysis and Caching},
  author = {Tim Kaler and Alexandros-Stavros Iliopoulos and Philip Murzynowski and Tao B. Schardl and Charles E. Leiserson and Jie Chen},
  year   = {2023},
  eprint = {2305.03152},
  archivePrefix = {arXiv},
  url    = {http://arxiv.org/abs/2305.03152v1}
}

Add a badge to your README

Shows whether official code is linked for this paper.

Code of Paper badge
[![Code of Paper](https://codeofpaper.com/badge/2305.03152.svg)](https://codeofpaper.com/paper/2305.03152)

Discussion