Published July 21, 2018 | Version v0.9-alpha
Software Open

johnpzh/graphphi: GraphPhi: Efficient Parallel Graph Processing on Emerging Throughput-oriented Architectures


  • 1. W&M


Modern parallel architecture design has increasingly turned to throughput-oriented devices to address concerns about energy efficiency and power consumption. However, graph applications cannot tap into the full potential of such architectures because of their highly unstructured computations and irregular memory accesses. In this paper, we present GraphPhi, a new approach to graph processing on emerging Intel Xeon Phi-like architectures by addressing the restrictions of migrating existing graph processing frameworks on shared memory multi-core CPUs to this new architecture.

Specifically, GraphPhi consists of 1) an optimized hierarchical blocked graph representation to enhance the data locality for both edges and vertices within and among threads, 2) a hybrid vertex-centric and edge-centric execution to efficiently find and process active edges, and 3) a uniform MIMD-SIMD scheduler integrated with a lock-free update support to achieve both good thread-level load balance and SIMD-level utilization. Besides, our efficient MIMD-SIMD execution is capable of hiding memory latency by increasing the number of concurrent memory access requests, thus benefiting more from the latest High-Bandwidth Memory technique. We evaluate our GraphPhi on six graph processing applications. Compared to two state-of-the-art shared memory graph processing frameworks, it results in speedups up to 4X and 35X, respectively.



Files (6.4 MB)

Name Size Download all
6.4 MB Preview Download

Additional details

Related works