TL;DR
This paper explores various design choices for GPU-based static and incremental graph connectivity algorithms, introducing over 300 implementations that significantly outperform existing methods in speed and throughput.
Contribution
It systematically investigates design options like sampling, linking, and tree compression, creating numerous GPU algorithms with improved performance for connectivity tasks.
Findings
Achieves 2.47x speedup over existing static algorithms.
Reaches up to 48.23 billion edges/sec in incremental setting.
Outperforms CPU implementations by up to 14.51x.
Abstract
Connected components and spanning forest are fundamental graph algorithms due to their use in many important applications, such as graph clustering and image segmentation. GPUs are an ideal platform for graph algorithms due to their high peak performance and memory bandwidth. While there exist several GPU connectivity algorithms in the literature, many design choices have not yet been explored. In this paper, we explore various design choices in GPU connectivity algorithms, including sampling, linking, and tree compression, for both the static as well as the incremental setting. Our various design choices lead to over 300 new GPU implementations of connectivity, many of which outperform state-of-the-art. We present an experimental evaluation, and show that we achieve an average speedup of 2.47x speedup over existing static algorithms. In the incremental setting, we achieve a throughput…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Code & Models
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
