AWB-GCN: A Graph Convolutional Network Accelerator with Runtime Workload
  Rebalancing
  Deep learning systems have been successfully applied to Euclidean data such
as images, video, and audio. In many applications, however, information and
their relationships are better expressed with graphs. Graph Convolutional
Networks (GCNs) appear to be a promising approach to efficiently learn from
graph data structures, having shown advantages in many critical applications.
As with other deep learning modalities, hardware acceleration is critical. The
challenge is that real-world graphs are often extremely large and unbalanced;
this poses significant performance demands and design challenges.
  In this paper, we propose Autotuning-Workload-Balancing GCN (AWB-GCN) to
accelerate GCN inference. To address the issue of workload imbalance in
processing real-world graphs, three hardware-based autotuning techniques are
proposed: dynamic distribution smoothing, remote switching, and row remapping.
In particular, AWB-GCN continuously monitors the sparse graph pattern,
dynamically adjusts the workload distribution among a large number of
processing elements (up to 4K PEs), and, after converging, reuses the ideal
configuration. Evaluation is performed using an Intel D5005 FPGA with five
commonly-used datasets. Results show that 4K-PE AWB-GCN can significantly
elevate PE utilization by 7.7x on average and demonstrate considerable
performance speedups over CPUs (3255x), GPUs (80.3x), and a prior GCN
accelerator (5.1x).
