ThunderRW: An In-Memory Graph Random Walk Engine (Complete Version)

07/26/2021
by   Shixuan Sun, et al.
0

As random walk is a powerful tool in many graph processing, mining and learning applications, this paper proposes an efficient in-memory random walk engine named ThunderRW. Compared with existing parallel systems on improving the performance of a single graph operation, ThunderRW supports massive parallel random walks. The core design of ThunderRW is motivated by our profiling results: common RW algorithms have as high as 73.1 slots stalled due to irregular memory access, which suffers significantly more memory stalls than the conventional graph workloads such as BFS and SSSP. To improve the memory efficiency, we first design a generic step-centric programming model named Gather-Move-Update to abstract different RW algorithms. Based on the programming model, we develop the step interleaving technique to hide memory access latency by switching the executions of different random walk queries. In our experiments, we use four representative RW algorithms including PPR, DeepWalk, Node2Vec and MetaPath to demonstrate the efficiency and programming flexibility of ThunderRW. Experimental results show that ThunderRW outperforms state-of-the-art approaches by an order of magnitude, and the step interleaving technique significantly reduces the CPU pipeline stall from 73.1 to 15.0

READ FULL TEXT

page 1

page 2

page 3

page 4

research
03/30/2022

An I/O-Efficient Disk-based Graph System for Scalable Second-Order Random Walk of Large Graphs

Random walk is widely used in many graph analysis tasks, especially the ...
research
09/18/2020

C-SAW: A Framework for Graph Sampling and Random Walk on GPUs

Many applications require to learn, mine, analyze and visualize large-sc...
research
10/10/2020

UniNet: Scalable Network Representation Learning with Metropolis-Hastings Sampling

Network representation learning (NRL) technique has been successfully ad...
research
09/27/2022

A Review: Random Walk in Graph Sampling

Graph sampling is a technique to pick a subset of vertices and/ or edges...
research
12/01/2021

Efficient and Local Parallel Random Walks

Random walks are a fundamental primitive used in many machine learning a...
research
04/14/2023

LightRW: FPGA Accelerated Graph Dynamic Random Walks

Graph dynamic random walks (GDRWs) have recently emerged as a powerful p...
research
04/16/2018

Walk-Steered Convolution for Graph Classification

Graph classification is a fundamental but challenging problem due to the...

Please sign up or login with your details

Forgot password? Click here to reset