Fast Minimum Spanning Tree for Large Graphs on the GPU

Loading...
Thumbnail Image
Date
2009
Journal Title
Journal ISSN
Volume Title
Publisher
The Eurographics Association
Abstract
Graphics Processor Units are used for many general purpose processing due to high compute power available on them. Regular, data-parallel algorithms map well to the SIMD architecture of current GPU. Irregular algorithms on discrete structures like graphs are harder to map to them. Efficient data-mapping primitives can play crucial role in mapping such algorithms onto the GPU. In this paper, we present a minimum spanning tree algorithm on Nvidia GPUs under CUDA, as a recursive formulation of Boruvka's approach for undirected graphs. We implement it using scalable primitives such as scan, segmented scan and split. The irregular steps of supervertex formation and recursive graph construction are mapped to primitives like split to categories involving vertex ids and edge weights. We obtain 30 to 50 times speedup over the CPU implementation on most graphs and 3 to 10 times speedup over our previous GPU implementation. We construct the minimum spanning tree on a 5 million node and 30 million edge graph in under 1 second on one quarter of the Tesla S1070 GPU.
Description

        
@inproceedings{
:10.1145/1572769.1572796
, booktitle = {
High-Performance Graphics
}, editor = {
David Luebke and Philipp Slusallek
}, title = {{
Fast Minimum Spanning Tree for Large Graphs on the GPU
}}, author = {
Vineet, Vibhav
and
Harish, Pawan
and
Patidar, Suryakant
and
Narayanan, P. J.
}, year = {
2009
}, publisher = {
The Eurographics Association
}, ISSN = {
2079-8687
}, ISBN = {
978-1-60558-603-8
}, DOI = {
/10.1145/1572769.1572796
} }
Citation