A New Perspective of Graph Data and A Generic and Efficient Method for Large Scale Graph Data Traversal

by   Chenglong Zhang, et al.

The BFS algorithm is a basic graph data processing algorithm and many other graph data processing algorithms have similar architectural features with BFS algorithm and can be built on the basis of BFS algorithm model. We analyze the differences between graph algorithms and traditional high-performance algorithms in detail, propose a new way of classifying algorithms into data independent algorithm and data correlation algorithm based on their run-time correlation with data, and use this new classification to explain the validity of the methods proposed in this paper. Through a deeper analysis of graph data, we propose a new fundamental perspective on understanding graph data, establishing a link between two basic data structures, graph and tree, and viewing graph data as consisting of smaller subgraphs and edge trees. Small degree vertices are found to be one of important cause of random memory access. Based on this, we propose a general, easy to implement, and efficient method for graph data processing, with the basic idea of treating low-degree vertices and core subgraphs separately, thus significantly reducing the size of random memory access and improving the efficiency of memory access. Finally, we evaluated the performance of the method on three major data center computing platforms (Intel, AMD, and ARM), and the experiments showed that it brought 19.7 performance-power ratio of 282.70 MTEPS/s on the ARM platform, ranking it among the Green graph500 in November 2019. World No. 1 on the big dataset list.



page 1

page 10

page 12


Moving Processing to Data: On the Influence of Processing in Memory on Data Management

Near-Data Processing refers to an architectural hardware and software pa...

Multi-Stage Graph Peeling Algorithm for Probabilistic Core Decomposition

Mining dense subgraphs where vertices connect closely with each other is...

A Structure-aware Approach for Efficient Graph Processing

With the advent of the big data, graph are processed in an iterative man...

Graphlet-based lazy associative graph classification

The paper addresses the graph classification problem and introduces a mo...

Salable Breadth-First Search on a GPU Cluster

On a GPU cluster, the ratio of high computing power to communication ban...

Random Graphs with Prescribed K-Core Sequences: A New Null Model for Network Analysis

In the analysis of large-scale network data, a fundamental operation is ...

Graph500 from OCaml-Multicore Perspective

OCaml is an industrial-strength, multi-paradigm programming language, wi...
This week in AI

Get the week's most popular data science and artificial intelligence research sent straight to your inbox every Saturday.