Skip to main navigation Skip to search Skip to main content

Parallelizing sequential graph computations

  • Wenfei Fan*
  • , Wenyuan Yu
  • , Jingbo Xu
  • , Jingren Zhou
  • , Xiaojian Luo
  • , Qiang Yin
  • , Ping Lu
  • , Yang Cao
  • , Ruiqi Xu
  • *Corresponding author for this work
  • University of Edinburgh
  • Beihang University
  • Shenzhen Institute of Computing Sciences
  • Alibaba Group Holding Ltd.

Research output: Contribution to journalArticlepeer-review

Abstract

This article presents GRAPE, a parallel GRAPh Engine for graph computations. GRAPE differs from prior systems in its ability to parallelize existing sequential graph algorithms as a whole, without the need for recasting the entire algorithm into a new model. Underlying GRAPE are a simple programming model and a principled approach based on fixpoint computation that starts with partial evaluation and usesanincremental function as the intermediate consequence operator. We show that users can devise existing sequential graph algorithms with minor additions, and GRAPE parallelizes the computation. Under a monotonic condition, the GRAPE parallelization guarantees to converge at correct answers as long as the sequential algorithms are correct. Moreover, we show that algorithms in MapReduce, BSP, and PRAM can be optimally simulated on GRAPE. In addition to the ease of programming, we experimentally verify that GRAPE achieves comparable performance to the state-of-the-art graph systems using real-life and synthetic graphs.

Original languageEnglish
Article number18
JournalACM Transactions on Database Systems
Volume43
Issue number4
DOIs
StatePublished - Dec 2018

Keywords

  • Convergence
  • Graph computations
  • Parallel graph query engines
  • Parallelizing sequential algorithms
  • Simulation

Fingerprint

Dive into the research topics of 'Parallelizing sequential graph computations'. Together they form a unique fingerprint.

Cite this