Parallel graph coloring algorithms for distributed GPU environments

Graph coloring is often used in parallelizing scientific computations that run in distributed and multi-GPU environments; it identifies sets of independent data that can be updated in parallel. Many algorithms exist for graph coloring on a single GPU or in distributed memory, but to the best of our...

Full description

Saved in:
Bibliographic Details
Published in:Parallel computing Vol. 110; no. C; p. 102896
Main Authors: Bogle, Ian, Slota, George M., Boman, Erik G., Devine, Karen D., Rajamanickam, Sivasankaran
Format: Journal Article
Language:English
Published: Netherlands Elsevier B.V 01.05.2022
Elsevier
Subjects:
ISSN:0167-8191, 1872-7336
Online Access:Get full text
Tags: Add Tag
No Tags, Be the first to tag this record!
Description
Summary:Graph coloring is often used in parallelizing scientific computations that run in distributed and multi-GPU environments; it identifies sets of independent data that can be updated in parallel. Many algorithms exist for graph coloring on a single GPU or in distributed memory, but to the best of our knowledge, hybrid MPI+GPU algorithms have been unexplored until this work. We present several MPI+GPU coloring approaches based on the distributed coloring algorithms of Gebremedhin et al. and the shared-memory algorithms of Deveci et al. The on-node parallel coloring uses implementations in KokkosKernels, which provide parallelization for both multicore CPUs and GPUs. We further extend our approaches to compute distance-2 and partial distance-2 colorings, giving the first known distributed, multi-GPU algorithm for these problems. In addition, we propose a novel heuristic to reduce communication for recoloring in distributed graph coloring. Our experiments show that our approaches operate efficiently on inputs too large to fit on a single GPU and scale up to graphs with 76.7 billion edges running on 128 GPUs. •We present the first multi-GPU graph coloring implementation.•Our framework solves distance-1, distance-2 and partial distance-2 coloring.•We color a mesh with 12.8 billion vertices and 76 billion edges in under 2 seconds.•Our framework generally uses fewer colors and is faster than Zoltan for distance-1.•Our framework is competitive with Zoltan for other coloring variants.
Bibliography:NA-0003525
USDOE National Nuclear Security Administration (NNSA)
ISSN:0167-8191
1872-7336
DOI:10.1016/j.parco.2022.102896