Practical parallel algorithms for minimum spanning trees

We study parallel algorithms for computing the minimum spanning tree of a weighted undirected graph G with n vertices and m edges. We consider an input graph G with m/n/spl ges/p, where p is the number of processors. For this case, we show that simple algorithms with data-independent communication patterns are efficient both in theory and in practice. The algorithms are evaluated theoretically using Valiant's (1990) BSP model of parallel computation and empirically through implementation results.

[1]  Henry D. Shapiro,et al.  An Empirical Assessment of Algorithms for Constructing a Minimum Spanning Tree , 1992, Computational Support for Discrete Mathematics.

[2]  Ben H. H. Juurlink,et al.  Experimental validation of parallel computation models on the Intel Paragon , 1998, Proceedings of the First Merged International Parallel Processing Symposium and Symposium on Parallel and Distributed Processing.

[3]  Leslie G. Valiant,et al.  A bridging model for parallel computation , 1990, CACM.

[4]  Jeffery L. Kennington,et al.  Minimal spanning trees: an empirical investigation of parallel algorithms , 1989, Parallel Comput..

[5]  Friedhelm Meyer auf der Heide,et al.  Truly Efficient Parallel Algorithms: 1-optimal Multisearch for an Extension of the BSP Model , 1998, Theor. Comput. Sci..

[6]  Philip N. Klein,et al.  A randomized linear-time algorithm for finding minimum spanning trees , 1994, STOC '94.

[7]  Andrew Rau-Chaplin,et al.  Scalable parallel geometric algorithms for coarse grained multicomputers , 1993, SCG '93.

[8]  Torsten Suel,et al.  Towards efficiency and portability: programming with the BSP model , 1996, SPAA '96.

[9]  Ben H. H. Juurlink,et al.  Communication-optimal parallel minimum spanning tree algorithms (extended abstract) , 1998, SPAA '98.

[10]  Ronald L. Graham,et al.  On the History of the Minimum Spanning Tree Problem , 1985, Annals of the History of Computing.

[11]  Bernard Chazelle A faster deterministic algorithm for minimum spanning trees , 1997, Proceedings 38th Annual Symposium on Foundations of Computer Science.

[12]  Anne Condon,et al.  Parallel implementation of Bouvka's minimum spanning tree algorithm , 1996, Proceedings of International Conference on Parallel Processing.

[13]  Ka Wong Chong Finding minimum spanning trees on the EREW PRAM , 1996 .

[14]  Micah Adler,et al.  Communication-optimal Parallel Minimum Spanning Tree Algorithms , 1998, SPAA 1998.

[15]  Baruch Awerbuch,et al.  New Connectivity and MSF Algorithms for Shuffle-Exchange Network and PRAM , 1987, IEEE Transactions on Computers.

[16]  Richard Cole,et al.  Finding minimum spanning forests in logarithmic time and linear work using random sampling , 1996, SPAA '96.

[17]  Ramesh Subramonian,et al.  LogP: a practical model of parallel computation , 1996, CACM.

[18]  Robert E. Tarjan,et al.  Fibonacci heaps and their uses in improved network optimization algorithms , 1984, JACM.

[19]  Friedhelm Meyer auf der Heide,et al.  Truly Efficient Parallel Algorithms: c-Optimal Multisearch for an Extension of the BSP Model (Extended Abstract) , 1995, ESA.

[20]  Frank Dehne,et al.  Randomized parallel list ranking for distributed memory multiprocessors , 1996, International Journal of Parallel Programming.

[21]  Donald B. Johnson,et al.  A parallel algorithm for computing minimum spanning trees , 1992, SPAA '92.

[22]  Armin Bäumker,et al.  Parallel algorithms for image processing: practical algorithms with experiments , 1996, Proceedings of International Conference on Parallel Processing.

[23]  Donald E. Knuth,et al.  The Stanford GraphBase - a platform for combinatorial computing , 1993 .

[24]  Francis Y. L. Chin,et al.  Efficient parallel algorithms for some graph problems , 1982, CACM.

[25]  Philip N. Klein,et al.  A randomized linear-time algorithm to find minimum spanning trees , 1995, JACM.