New BSP/CGM algorithms for spanning trees

Computing a spanning tree (ST) and a minimum ST (MST) of a graph are fundamental problems in graph theory and arise as a subproblem in many applications. In this article, we propose parallel algorithms to these problems. One of the steps of previous parallel MST algorithms relies on the heavy use of parallel list ranking which, though efficient in theory, is very time-consuming in practice. Using a different approach with a graph decomposition, we devised new parallel algorithms that do not make use of the list ranking procedure. We proved that our algorithms are correct, and for a graph G = ( V , E ) , | V | = n , and | E | = m , the algorithms can be executed on a Bulk Synchronous Parallel/Coarse Grained Multicomputer (BSP/CGM) model using O ( log p ) communications rounds with O ( n + m p ) computation time for each round. To show that our algorithms have good performance on real parallel machines, we have implemented them on graphics processing unit. The obtained speedups are competitive and showed that the BSP/CGM model is suitable for designing general purpose parallel algorithms.

[1]  Dilip V. Sarwate,et al.  Computing connected components on parallel computers , 1979, CACM.

[2]  Thanh-Tung Cao,et al.  Scalable parallel minimum spanning forest computation , 2012, PPoPP '12.

[3]  Edson Cáceres,et al.  A Parallel Algorithm for Minimum Spanning Tree on GPU , 2017, 2017 International Symposium on Computer Architecture and High Performance Computing Workshops (SBAC-PADW).

[4]  Edson Cáceres,et al.  Experimental results of a coarse-grained parallel algorithm for spanning tree and connected components , 2010, HPCS.

[5]  Jan van Leeuwen,et al.  Handbook Of Theoretical Computer Science, Vol. A , 1990 .

[6]  Anderson C. Lima,et al.  Solving the maximum subsequence sum and related problems using BSP/CGM model and multi-GPU CUDA , 2016, Journal of the Brazilian Computer Society.

[7]  John H. Reif,et al.  Depth-First Search is Inherently Sequential , 1985, Inf. Process. Lett..

[8]  Martin Mares,et al.  The saga of minimum spanning trees , 2008, Comput. Sci. Rev..

[9]  Lucas C. Cordeiro,et al.  Bounded model checking for fixed-point digital filters , 2016, Journal of the Brazilian Computer Society.

[10]  Jayme Luiz Szwarcfiter,et al.  On Finding Euler Tours in Parallel , 1993, Parallel Process. Lett..

[11]  Andrew Rau-Chaplin,et al.  Scalable parallel computational geometry for coarse grained multicomputers , 1996, Int. J. Comput. Geom. Appl..

[12]  Mamun Abdullah-al,et al.  An efficient Minimum Spanning Tree algorithm , 2016 .

[13]  Sanguthevar Rajasekaran,et al.  An efficient Minimum Spanning Tree algorithm , 2016, 2016 IEEE Symposium on Computers and Communication (ISCC).

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

[15]  Martin Kalin,et al.  A graph generation software package , 1991, SIGCSE '91.

[16]  J. Kruskal On the shortest spanning subtree of a graph and the traveling salesman problem , 1956 .

[17]  P J Narayanan,et al.  Fast minimum spanning tree for large graphs on the GPU , 2009, High Performance Graphics.

[18]  Vitaly Osipov,et al.  The Filter-Kruskal Minimum Spanning Tree Algorithm , 2009, ALENEX.

[19]  Dexter Kozen,et al.  The Design and Analysis of Algorithms , 1991, Texts and Monographs in Computer Science.

[20]  Dhrubajyoti Goswami,et al.  An Efficient Transaction-Based GPU Implementation of Minimum Spanning Forest Algorithm , 2017, 2017 International Conference on High Performance Computing & Simulation (HPCS).

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

[22]  Jayme Luiz Szwarcfiter,et al.  Experimental results of a coarse-grained parallel algorithm for spanning tree and connected components , 2004, 2010 International Conference on High Performance Computing & Simulation.

[23]  R. Prim Shortest connection networks and some generalizations , 1957 .

[24]  Kenneth A. Hawick,et al.  Parallel graph component labelling with GPUs and CUDA , 2010, Parallel Comput..

[25]  Keshav Pingali,et al.  Morph algorithms on GPUs , 2013, PPoPP '13.

[26]  Afonso Ferreira,et al.  Efficient Parallel Graph Algorithms for Coarse-Grained Multicomputers and BSP , 2002, Algorithmica.