A New Efficient Parallel Algorithm for Minimum Spanning Tree

In this paper, using the BSP/CGM model, we propose a parallel algorithm and implement it on a GPGPU to obtain a minimum spanning tree of a graph. Previous works for this problem are based on the solution of the list ranking problem which, though efficient in theory, did not produce good speedups in practice. In a later work, based on the idea of computing a structure called strut, we proposed a parallel algorithm under the BSP/CGP model to obtain a minimum spanning tree without using list ranking. It is based on the construction of an auxiliary bipartite graph and uses integer sorting. In this paper, we improve that work in some aspects. The proposed algorithm does not require the computation of the bipartite graph, and the strut construction does not require the sorting algorithm. The efficiency and scalability of the proposed algorithm are verified through experimental results obtained by an implementation on GPGPU.

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

[2]  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.

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

[4]  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).

[5]  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.

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

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

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

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

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

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

[12]  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).

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

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

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

[16]  F. Dehne,et al.  A NOTE ON COARSE GRAINED PARALLEL INTEGER SORTING , 1999 .