An efficient and fast parallel-connected component algorithm
- 1 July 1990
- journal article
- Published by Association for Computing Machinery (ACM) in Journal of the ACM
- Vol. 37 (3) , 626-642
- https://doi.org/10.1145/79147.214077
Abstract
A parallel algorithm for computing the connected components of undirected graphs is presented. Shared memory computation models are assumed. For a graph of e edges and n nodes, the time complexity of the algorithm is Ο( e/p + ( n log n )/ p + log 2 n ) with p processors. The algorithm can be further refined to yield time complexity Ο( H ( e , n , p )/ p + ( n log n )/( p log( n / p )) + log 2 n ), where H ( e, n, p ) is very close to Ο( e ). These results show that linear speedup can be obtained for up to p ≤ e /log 2 n processors when e ≥ n log n . Linear speedup can still be achieved with up to p ≤ n ε processors, 0 ≤ ε < 1, for graphs satisfying e ≥ n log (*) n . Our results can be further improved if a more efficient integer sorting algorithm is available.Keywords
This publication has 9 references indexed in Scilit:
- The power of parallel prefixIEEE Transactions on Computers, 1985
- On Parallel SearchingSIAM Journal on Computing, 1985
- Parallel graph algorithmsACM Computing Surveys, 1984
- Efficient parallel algorithms for some graph problemsCommunications of the ACM, 1982
- An O(logn) parallel connectivity algorithmJournal of Algorithms, 1982
- Parallel algorithms for the connected components and minimal spanning tree problemsInformation Processing Letters, 1982
- A fast parallel algorithm for routing in permutation networksIEEE Transactions on Computers, 1981
- UltracomputersACM Transactions on Programming Languages and Systems, 1980
- Computing connected components on parallel computersCommunications of the ACM, 1979