Dynamic Load Balancing Strategies for Graph Applications on GPUs

11/01/2017
by   Ananya Raval, et al.
0

Acceleration of graph applications on GPUs has found large interest due to the ubiquitous use of graph processing in various domains. The inherent irregularity in graph applications leads to several challenges for parallelization. A key challenge, which we address in this paper, is that of load-imbalance. If the work-assignment to threads uses node-based graph partitioning, it can result in skewed task-distribution, leading to poor load-balance. In contrast, if the work-assignment uses edge-based graph partitioning, the load-balancing is better, but the memory requirement is relatively higher. This makes it unsuitable for large graphs. In this work, we propose three techniques for improved load-balancing of graph applications on GPUs. Each technique brings in unique advantages, and a user may have to employ a specific technique based on the requirement. Using Breadth First Search and Single Source Shortest Paths as our processing kernels, we illustrate the effectiveness of each of the proposed techniques in comparison to the existing node-based and edge-based mechanisms.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
11/20/2019

An Adaptive Load Balancer For Graph Analytical Applications on GPUs

Load balancing graph analytics workloads on GPUs is difficult because of...
research
04/23/2021

In-Situ Assessment of Device-Side Compute Work for Dynamic Load Balancing in a GPU-Accelerated PIC Code

Maintaining computational load balance is important to the performant be...
research
12/17/2022

GPU Load Balancing

Fine-grained workload and resource balancing is the key to high performa...
research
08/25/2022

An analysis of load-balancing algorithms on edge-Markovian evolving graphs

Analysis of algorithms on time-varying networks (often called evolving g...
research
12/18/2020

Fast and Efficient Parallel Breadth-First Search with Power-law Graph Transformation

In the big data era, graph computing is widely used to exploit the hidde...
research
11/03/2020

Distributing Sparse Matrix/Graph Applications in Heterogeneous Clusters – an Experimental Study

Many problems in scientific and engineering applications contain sparse ...
research
06/29/2017

Fast Processing of Large Graph Applications Using Asynchronous Architecture

Graph algorithms and techniques are increasingly being used in scientifi...

Please sign up or login with your details

Forgot password? Click here to reset