Abstract

The proliferation of data in graph form calls for the development of scalable graph algorithms that exploit parallel processing environments. One such problem is the computation of a graph's minimum spanning forest (MSF). Past research has proposed several parallel algorithms for this problem, yet none of them scales to large, high-density graphs. In this paper we propose a novel, scalable, parallel MSF algorithm for undirected weighted graphs. Our algorithm leverages Prim's algorithm in a parallel fashion, concurrently expanding several subsets of the computed MSF. Our effort focuses on minimizing the communication among different processors without constraining the local growth of a processor's computed subtree. In effect, we achieve a scalability that previous approaches lacked. We implement our algorithm in CUDA, running on a GPU and study its performance using real and synthetic, sparse as well as dense, structured and unstructured graph data. Our experimental study demonstrates that our algorithm outperforms the previous state-of-the-art GPU-based MSF algorithm, while being several orders of magnitude faster than sequential CPU-based algorithms.
- Boost C++ graph library. http://www.boost.org.Google Scholar
- CUDA Zone: Toolkit & SDK. http://developer.nvidia.com/what-cuda.Google Scholar
- CUDPP. http://cudpp.googlecode.com.Google Scholar
- The Ninth DIMACS challenge on shortest paths. http://www.dis.uniroma1.it/~challenge9/.Google Scholar
- GTgraph - A suite of synthetic random graph generators. https://sdm.lbl.gov/~kamesh/software/GTgraph/.Google Scholar
- Stanford large network dataset collection. http://snap.stanford.edu/data.Google Scholar
- D. A. Bader and G. Cong. Fast shared-memory algorithms for computing the minimum spanning forest of sparse graphs. In IPDPS, 2004.Google Scholar
Cross Ref
- D. A. Bader and G. Cong. Fast shared-memory algorithms for computing the minimum spanning forest of sparse graphs. JPDC, 66 (11): 1366--1378, 2006. Google Scholar
Digital Library
- O. Boruvka. O jistém problému minimálním (about a certain minimal problem). Práce mor. prírodoved. spol. v Brne III, pages 37--58, 1926.Google Scholar
- J. Carle and D. Simplot-Ryl. Energy-efficient area monitoring for sensor networks. Computer, 37 (2): 40--46, 2004. Google Scholar
Digital Library
- S. Chung and A. Condon. Parallel implementation of boruvka's minimum spanning tree algorithm. Parallel Processing Symposium, International, 0: 302, 1996. Google Scholar
Digital Library
- J. Cong, L. He, C.-K. Koh, and P. H. Madden. Performance optimization of VLSI interconnect layout. 21 (1-2): 1--94, 1996. Google Scholar
Digital Library
- T. H. Cormen, C. Stein, R. L. Rivest, and C. E. Leiserson. Introduction to algorithms. MIT Press, third edition, 2009. ISBN 0070131511. Google Scholar
Digital Library
- F. Dehne and S. Götz. Practical parallel algorithms for minimum spanning trees. In SRDS, 1998. Google Scholar
Digital Library
- N. K. Govindaraju, B. Lloyd, W. Wang, M. Lin, and D. Manocha. Fast computation of database operations using graphics processors. In SIGMOD, 2004. Google Scholar
Digital Library
- N. K. Govindaraju, J. Gray, R. Kumar, and D. Manocha. GPUTeraSort: high performance graphics co-processor sorting for large database management. In SIGMOD, 2006. Google Scholar
Digital Library
- E. Horowitz and S. Sahni. Fundamentals of computer algorithms. Potomac, Md., Computer Science Press, 1978. Google Scholar
Digital Library
- J. Joseph B. Kruskal. On the shortest spanning subtree of a graph and the traveling salesman problem. Proc. Amer. Math. Soc., 7: 48--50, 1956.Google Scholar
Cross Ref
- S. Kang and D. A. Bader. An efficient transactional memory algorithm for computing minimum spanning forest of sparse graphs. In PPoPP, 2009. Google Scholar
Digital Library
- J. Kleinberg and Éva Tardos. The minimum spanning tree problem. In Algorithm Design. Pearson/Addison-Wesley, Boston, 2006.Google Scholar
- E. S. Larsen and D. McAllister. Fast matrix multiplies using graphics hardware. In Supercomputing, 2001. Google Scholar
Digital Library
- X.-Y. Li, Y. Wang, and W.-Z. Song. Applications of k-local mst for topology control and broadcasting in wireless ad hoc networks. IEEE TPDS, 15 (12): 1057--1069, 2004. Google Scholar
Digital Library
- W. B. March, P. Ram, and A. G. Gray. Fast euclidean minimum spanning tree: algorithm, analysis, and applications. In KDD, 2010. Google Scholar
Digital Library
- B. M. E. Moret and H. D. Shapiro. An empirical assessment of algorithms for constructing a minimal spanning tree. In DIMACS Monographs, 1994.Google Scholar
- S. Nobari, X. Lu, P. Karras, and S. Bressan. Fast random graph generation. In EDBT, 2011. Google Scholar
Digital Library
- R. C. Prim. Shortest connection networks and some generalizations. Bell System Technical Journal, 36: 1389--1401, 1957.Google Scholar
Cross Ref
- P. W. Rafael C. Gonzalez. Digital Image Processing. Addison-Wesley, 1987. Google Scholar
Digital Library
- N. Satish, M. Harris, and M. Garland. Designing efficient sorting algorithms for manycore GPUs. In IPDPS, 2009. Google Scholar
Digital Library
- S. Sengupta, M. Harris, Y. Zhang, and J. D. Owens. Scan primitives for GPU computing. In Graphics Hardware, 2007. Google Scholar
Digital Library
- R. E. Tarjan. Data structures and network algorithms. Society for Industrial and Applied Mathematics, Philadelphia, 1983. Google Scholar
Digital Library
- V. Vineet, P. Harish, S. Patidar, and P. J. Narayanan. Fast minimum spanning tree for large graphs on the gpu. In HPG, 2009. Google Scholar
Digital Library
- X. Wang, X. Wang, and D. Mitchell~Wilkes. A divide-and-conquer approach for minimum spanning tree-based clustering. IEEE TKDE, 21 (7): 945--958, 2009. Google Scholar
Digital Library
- D. J. Watts and S. H. Strogatz. Collective dynamics of 'small-world' networks. Nature, (393): 440--442, 1998.Google Scholar
- Y. Xu, V. Olman, and D. Xu. Clustering gene expression data using a graph-theoretic approach: an application of minimum spanning trees. Bioinformatics, 18 (4): 536--545(10), 2002.Google Scholar
Cross Ref
- C. Zhong, D. Miao, and R. Wang. A graph-theoretical clustering method based on two rounds of minimum spanning trees. Pattern Recogn., 43 (3): 752--766, 2010. Google Scholar
Digital Library
Index Terms
Scalable parallel minimum spanning forest computation
Recommendations
Scalable parallel minimum spanning forest computation
PPoPP '12: Proceedings of the 17th ACM SIGPLAN symposium on Principles and Practice of Parallel ProgrammingThe proliferation of data in graph form calls for the development of scalable graph algorithms that exploit parallel processing environments. One such problem is the computation of a graph's minimum spanning forest (MSF). Past research has proposed ...
The Euler Tour Technique and Parallel Rooted Spanning Tree
ICPP '04: Proceedings of the 2004 International Conference on Parallel ProcessingMany parallel algorithms for graph problems start with finding a spanning tree and rooting the tree to define some structural relationship on the vertices which can be used by following problem specific computations. The generic procedure is to find an ...
A fast, parallel spanning tree algorithm for symmetric multiprocessors (SMPs)
The ability to provide uniform shared-memory access to a significant number of processors in a single SMP node brings us much closer to the ideal PRAM parallel computer. Many PRAM algorithms can be adapted to SMPs with few modifications. Yet there are ...







Comments