A Survey on Graph Processing Accelerators: Challenges and Opportunities

论文传送门

作者

  • 华中科技大学
    • Chuang-Yi Gui
    • Long Zheng
    • Xiao-Fei Liao
    • Hai Jin
  • 新加坡国立大学
    • Bingsheng He
    • Xin-Yu Chen
  • 中国科学院计算技术研究所
    • Cheng Liu

摘要

图是一种众所周知的数据结构,用于表示各种应用程序中的关联关系,例如数据科学和及其学习。尽管在开发图处理系统以改进传统架构的性能和能源效率方面已有大量的现有工作,专用硬件解决方案,也成为图加速器是必不可少的,其提供的好处远远超过那些纯软件解决方案。在本文中,我们对图处理加速器进行了系统的调查。具体来说,我们将对图处理加速器的三个核心组建中的相关技术进行回顾:预处理、并行图计算和运行时调度。我们还将检查基准和现有图处理加速器的结果。有趣的是,由于图处理的多样性和复杂性,我们发现没有在三个方面都是赢家的硬件配置。最后,我们详细介绍并讨论了几个挑战,并进一步探索了将来研究的机遇。

Introduction

  • Preprocessing
    • 使数据能够放进内存
    • 与某些模型相配
    • 合适的图表达
  • Parallel Graph Computation
    • 迭代范式
    • 硬件平台:FPGA、ASIC、PIM
    • 软硬件协同设计
  • Runtime Scheduling
    • 保证正确性和有效性
    • 数据通信、执行模式、调度策略

Building blocks for graph processing accelerators

A Survey on Graph Processing Accelerators: Challenges and Opportunities_第1张图片

Preliminaries

Graph features

  • Sparsity
    • 节点平均度数小
  • Power-Law Distribution
    • 少部分节点关联了大多数边
  • Small-World Structure
    • 任意两个节点在不多的跳数内可达
    • 对图的划分造成了困难

Graph Algorithms

  • Breadth-First Search (BFS)
  • Single Source Shortest Path (SSSP)
  • Betweenness Centrality (BC)
  • PageRank
  • Connected Components (CC)
  • Triangle Counting (TC)
  • Graph Coloring (GC)
  • Collaborative Filtering (CF)
  • k-core Decomposition (kCore)
  • Minimal Spanning Tree (MST)

Unique Features of Graph Processing

  • Intensive Data Access
  • Irregular Computation.
  • Poor Locality
  • High Data Dependency

Brief Introduction to Graph Processing on Modern Commodity Processors

  • Graph Processing on CPUs
    • distributed systems
    • exploits the potential of single machine
  • Graph Processing on GPUs

Graph Preprocessing

  • Graph Layout Reorganization
    • edge array
      • Coordinate List (COO)
    • compressed adjacency list
      • Compressed Sparse Row (CSR)
      • Compressed Sparse Column (CSC)
    • Combining Information
    • Encoding Index
    • Index-Aware Ordering
    • Degree-Aware Ordering
    • Conflict-Aware Ordering
  • Graph Partitioning
    • Source-oriented
    • Destination-oriented
    • Grid
    • Heuristic

Parallel Graph Computation

  • Iterative Paradigm
    • Vertex-centric
    • Edge-centric
    • Hybrid

A Survey on Graph Processing Accelerators: Challenges and Opportunities_第2张图片

  • Dedicated Hardware Acceleration

    • FPGA-Based Designs
    • ASIC-Based Designs
    • PIM-Enabled Designs
  • Large-Scale Graph Processing Acceleration

    • Out-of-Core Solution
    • Multiple Accelerators Extension
    • Heterogeneous Acceleration
  • Sophisticated Co-Designs

    • Parallelism Extension
      • Pipeline Duplication
      • Split Kernel
      • Using Dataflow Paradigm
    • Memory Access Optimization
      • Enhancing Memory-Level Parallelism (MLP).
      • Improving Bandwidth Utilization
      • Reshaping Cache Hierarchy
    • Energy Efficiency Optimization
      • Leveraging Emerging Memory Technologies
      • Power-Gating Schemes

A Survey on Graph Processing Accelerators: Challenges and Opportunities_第3张图片

Runtime Scheduling

  • Runtime Considerations
    • Data Conflicts
    • Workload Balance
  • Communication Model
    • Message-Based Pattern
    • Shared Memory Based Pattern
  • Execution Mode
    • Synchronous Mode
    • Asynchronous Mode
    • Information Flow Direction
  • Scheduling Scheme
    • Block-Based Scheduling
    • Frontier-Based Scheduling
    • Priority-Based Scheduling

Graph Accelerator Evaluation

  • Evaluation Metrics
    • TEPS
    • TEPS/W
  • Summary of Results
    • Graph Benchmark
    • Platform Parameter
    • Preprocessing
    • Graph Processing Framework
    • Programming Model.
    • Development Trend
  • Case Study
    • AccuGraph

A Survey on Graph Processing Accelerators: Challenges and Opportunities_第4张图片

Challenges and Opportunities

Challenges

  • Programmability
  • Supporting Large Graphs
  • Time-Evolving Graphs
  • Complex Attributes of Graphs
  • Machine Learning on Graphs
  • Hardware Interfaces
  • Tool Chains
  • Compiler Support

Opportunities

  • Widespread Adoption
  • Emerging Technologies
  • FPGA on the Cloud
  • Rise of Specialized Architectures in Artificial Intelligence

思考

Critical thinking:
benchmark 对于不同任务的侧重程度不一
通过硬件加速大图数据的数据库存取效率

Creative thinking:
比较一些工业界使用的图计算学习框架

How to apply to our work:
对于大图数据的分析要注重预处理和计算,最后可以结合可视化进行分析。
graph reordering, graph partition 之前关注不足,之后的工作可以借鉴。

你可能感兴趣的:(论文阅读,论文)