Exploring the Design Space of Static and Incremental Graph Connectivity Algorithms on GPUs
Name
3410463.3414657.pdf
Size
1.53 MB
Format
Adobe PDF
Checksum (MD5)
b14f3b873473062f39a736982575c445
Author(s) • •
Hong, Changwan
Dhulipala, Laxman
Shun, Julian
Date Issued
2020
Journal
Parallel Architectures and Compilation Techniques - Conference Proceedings, PACT
Publisher
ACM
Version
Final published version
Abstract
© 2020 Association for Computing Machinery. Connected components and spanning forest are fundamental graphalgorithms due to their use in many important applications, suchas graph clustering and image segmentation. GPUs are an idealplatform for graph algorithms due to their high peak performanceand memory bandwidth. While there exist several GPU connectivity algorithms in the literature, many design choices have notyet been explored. In this paper, we explore various design choicesin GPU connectivity algorithms, including sampling, linking, andtree compression, for both the static as well as the incrementalsetting. Our various design choices lead to over 300 new GPU implementations of connectivity, many of which outperform state-ofthe-art. We present an experimental evaluation, and show that weachieve an average speedup of 2.47x speedup over existing static algorithms. In the incremental setting, we achieve a throughput of upto 48.23 billion edges per second. Compared to state-of-the-art CPUimplementations on a 72-core machine, we achieve a speedup of8.26 14.51x for static connectivity and 1.85 13.36x for incrementalconnectivity using a Tesla V100 GPU.
MIT Department
Massachusetts Institute of Technology. Computer Science and Artificial Intelligence Laboratory
Terms of Use
Article is made available in accordance with the publisher's policy and may be subject to US copyright law. Please refer to the publisher's site for terms of use.
Persistent DSpace Link
DOI of Published Version
https://doi.org/10.1145/3410463.3414657