Engineering A Workload-balanced Push-Relabel Algorithm for Massive Graphs on GPUs

Fuente: arXiv
Salvato in:
Dettagli Bibliografici
Autori principali: Hsieh, Chou-Ying, Lin, Po-Chieh, Kuo, Sy-Yen
Natura: Preprint
Pubblicazione: 2024
Soggetti:
Accesso online:
Tags: Aggiungi Tag
Nessun Tag, puoi essere il primo ad aggiungerne!!
_version_ 1866914736170336256
author Hsieh, Chou-Ying
Lin, Po-Chieh
Kuo, Sy-Yen
author_facet Hsieh, Chou-Ying
Lin, Po-Chieh
Kuo, Sy-Yen
contents The push-relabel algorithm is an efficient algorithm that solves the maximum flow/ minimum cut problems of its affinity to parallelization. As the size of graphs grows exponentially, researchers have used Graphics Processing Units (GPUs) to accelerate the computation of the push-relabel algorithm further. However, prior works need to handle the significant memory consumption to represent a massive residual graph. In addition, the nature of their algorithms has inherently imbalanced workload distribution on GPUs. This paper first identifies the two challenges with the memory and computational models. Based on the analysis of these models, we propose a workload-balanced push-relabel algorithm (WBPR) with two enhanced compressed sparse representations (CSR) and a vertex-centric approach. The enhanced CSR significantly reduces memory consumption, while the vertex-centric approach alleviates the workload imbalance and improves the utilization of the GPU. In the experiment, our approach reduces the memory consumption from O(V^2) to O(V + E). Moreover, we can achieve up to 7.31x and 2.29x runtime speedup compared to the state-of-the-art on real-world graphs in maximum flow and bipartite matching tasks, respectively. Our code will be open-sourced for further research on accelerating the push-relabel algorithm.
format Preprint
id arxiv_https___arxiv_org_abs_2404_00270
institution arXiv
publishDate 2024
record_format arxiv
spellingShingle Engineering A Workload-balanced Push-Relabel Algorithm for Massive Graphs on GPUs
Hsieh, Chou-Ying
Lin, Po-Chieh
Kuo, Sy-Yen
Distributed, Parallel, and Cluster Computing
Data Structures and Algorithms
The push-relabel algorithm is an efficient algorithm that solves the maximum flow/ minimum cut problems of its affinity to parallelization. As the size of graphs grows exponentially, researchers have used Graphics Processing Units (GPUs) to accelerate the computation of the push-relabel algorithm further. However, prior works need to handle the significant memory consumption to represent a massive residual graph. In addition, the nature of their algorithms has inherently imbalanced workload distribution on GPUs. This paper first identifies the two challenges with the memory and computational models. Based on the analysis of these models, we propose a workload-balanced push-relabel algorithm (WBPR) with two enhanced compressed sparse representations (CSR) and a vertex-centric approach. The enhanced CSR significantly reduces memory consumption, while the vertex-centric approach alleviates the workload imbalance and improves the utilization of the GPU. In the experiment, our approach reduces the memory consumption from O(V^2) to O(V + E). Moreover, we can achieve up to 7.31x and 2.29x runtime speedup compared to the state-of-the-art on real-world graphs in maximum flow and bipartite matching tasks, respectively. Our code will be open-sourced for further research on accelerating the push-relabel algorithm.
title Engineering A Workload-balanced Push-Relabel Algorithm for Massive Graphs on GPUs
topic Distributed, Parallel, and Cluster Computing
Data Structures and Algorithms
url https://arxiv.org/abs/2404.00270