Rubik: A Hierarchical Architecture for Efficient Graph Learning
arXiv:2009.12495
Abstract
Graph convolutional network (GCN) emerges as a promising direction to learn the inductive representation in graph data commonly used in widespread applications, such as E-commerce, social networks, and knowledge graphs. However, learning from graphs is non-trivial because of its mixed computation model involving both graph analytics and neural network computing. To this end, we decompose the GCN learning into two hierarchical paradigms: graph-level and node-level computing. Such a hierarchical paradigm facilitates the software and hardware accelerations for GCN learning. We propose a lightweight graph reordering methodology, incorporated with a GCN accelerator architecture that equips a customized cache design to fully utilize the graph-level data reuse. We also propose a mapping methodology aware of data reuse and task-level parallelism to handle various graphs inputs effectively. Results show that Rubik accelerator design improves energy efficiency by 26.3x to 1375.2x than GPU platforms across different datasets and GCN models.
References in corpus (13)
- Community structure in social and biological networks
- Inductive Representation Learning on Large Graphs
- Graph Embedding Techniques, Applications, and Performance: A Survey
- Graph Neural Networks: A Review of Methods and Applications
- Deep Convolutional Networks on Graph-Structured Data
- Cluster-GCN: An Efficient Algorithm for Training Deep and Large Graph Convolutional Networks
- Fast Graph Representation Learning with PyTorch Geometric
- Graph Convolutional Matrix Completion
- FastGCN: Fast Learning with Graph Convolutional Networks via Importance Sampling
- GaAN: Gated Attention Networks for Learning on Large and Spatiotemporal Graphs
- Adaptive Sampling Towards Fast Graph Representation Learning
- Practical and Optimal LSH for Angular Distance
- Deep Learning on Graphs: A Survey