Table of Contents
Fetching ...

AutoGMap: Learning to Map Large-scale Sparse Graphs on Memristive Crossbars

Bo Lyu, Shengbo Wang, Shiping Wen, Kaibo Shi, Yin Yang, Lingfang Zeng, Tingwen Huang

TL;DR

This work proposes the dynamic sparsity-aware mapping scheme generating method that models the problem with a sequential decision-making model, and optimizes it by reinforcement learning (RL) algorithm (REINFORCE).

Abstract

The sparse representation of graphs has shown great potential for accelerating the computation of graph applications (e.g., Social Networks, Knowledge Graphs) on traditional computing architectures (CPU, GPU, or TPU). But the exploration of large-scale sparse graph computing on processing-in-memory (PIM) platforms (typically with memristive crossbars) is still in its infancy. To implement the computation or storage of large-scale or batch graphs on memristive crossbars, a natural assumption is that a large-scale crossbar is demanded, but with low utilization. Some recent works question this assumption, to avoid the waste of storage and computational resource, the fixed-size or progressively scheduled ''block partition'' schemes are proposed. However, these methods are coarse-grained or static, and are not effectively sparsity-aware. This work proposes the dynamic sparsity-aware mapping scheme generating method that models the problem with a sequential decision-making model, and optimizes it by reinforcement learning (RL) algorithm (REINFORCE). Our generating model (LSTM, combined with the dynamic-fill scheme) generates remarkable mapping performance on a small-scale graph/matrix data (complete mapping costs 43% area of the original matrix) and two large-scale matrix data (costing 22.5% area on qh882 and 17.1% area on qh1484). Our method may be extended to sparse graph computing on other PIM architectures, not limited to the memristive device-based platforms.

AutoGMap: Learning to Map Large-scale Sparse Graphs on Memristive Crossbars

TL;DR

This work proposes the dynamic sparsity-aware mapping scheme generating method that models the problem with a sequential decision-making model, and optimizes it by reinforcement learning (RL) algorithm (REINFORCE).

Abstract

The sparse representation of graphs has shown great potential for accelerating the computation of graph applications (e.g., Social Networks, Knowledge Graphs) on traditional computing architectures (CPU, GPU, or TPU). But the exploration of large-scale sparse graph computing on processing-in-memory (PIM) platforms (typically with memristive crossbars) is still in its infancy. To implement the computation or storage of large-scale or batch graphs on memristive crossbars, a natural assumption is that a large-scale crossbar is demanded, but with low utilization. Some recent works question this assumption, to avoid the waste of storage and computational resource, the fixed-size or progressively scheduled ''block partition'' schemes are proposed. However, these methods are coarse-grained or static, and are not effectively sparsity-aware. This work proposes the dynamic sparsity-aware mapping scheme generating method that models the problem with a sequential decision-making model, and optimizes it by reinforcement learning (RL) algorithm (REINFORCE). Our generating model (LSTM, combined with the dynamic-fill scheme) generates remarkable mapping performance on a small-scale graph/matrix data (complete mapping costs 43% area of the original matrix) and two large-scale matrix data (costing 22.5% area on qh882 and 17.1% area on qh1484). Our method may be extended to sparse graph computing on other PIM architectures, not limited to the memristive device-based platforms.
Paper Structure (11 sections, 24 equations, 13 figures, 4 tables, 3 algorithms)

This paper contains 11 sections, 24 equations, 13 figures, 4 tables, 3 algorithms.

Figures (13)

  • Figure 1: Diagram of matrix-vector multiplication propagation ($y=Ax$) with the matrix reordering method. The matrix $A^{'}$ is programmed into a batch of small-scale crossbars, and the transformed vector $x^{'}$ serves as the inputs of the crossbars. Finally, the switch circuit is resorted to realize the reverse transformation $y=P^{T}y^{'}$.
  • Figure 2: The comparison of coverage ratio and blocks area (cost) under different mapping schemes. To realize the complete mapping (coverage), the mapping blocks generally cost much more area, as the left scheme shows. But the middle and rights schemes are infeasible for the deployment, which fails to reach the complete coverage.
  • Figure 3: Left: Illustration of the optimization problem defined in Eq. (2). The block size is the optimization variable, but the number of which is not determined. Right: Illustration of the optimization problem defined in Eq. (3). Each grid point on the diagonal needs a decision indicating whether to start a new block or continue the frontier one, the variable number is determined.
  • Figure 4: Up: Fill the gaps with fixed-size blocks, with the fully-connected network model the binary classification problem, the output value means to fill or not, as Eq. (11). Down: Fill the gaps with dynamic size blocks, with the fully-connected network model the multi-classification problem, as Eq. (12), the classification output stands for the portion of current fill-block size, e.g., indices $[0, 1, 2, 3, 4, 5]$ stands for the ratio $[0, 1/5, 2/5, 3/5, 4/5, 1]$.
  • Figure 5: Illustration of the adjacency matrix mapping onto the crossbar for matrix-vector multiplication. The diagonal and fill-blocks are mapped onto the allowable small-scale crossbars. According to the Kirchhoff’s Current Law, blocks in the same row are connected, and the corresponding sub-vector serves as the input of the crossbar, respectively.
  • ...and 8 more figures