Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
10.1145/181014.181021acmconferencesArticle/Chapter ViewAbstractPublication PagesspaaConference Proceedingsconference-collections
Article
Free access

A comparison of parallel algorithms for connected components

Published: 01 August 1994 Publication History

Abstract

This paper presents a comparison of the pragmatic aspects of some parallel algorithms for finding connected components, together with optimizations on these algorithms. The algorithms being compared are two similar algorithms by Shiloach-Vishkin [22] and Awerbuch-Shiloach [2], a randomized contraction algorithm based on algorithms by Reif [21] and Phillips [20], and a hybrid algorithm [11]. Improvements are given for the first two to improve performance significantly, although without improving their asymptotic complexity. The hybrid combines features of the others and is generally the fastest of those tested. Timings were made using NESL [4] code as executed on a Connection Machine 2 and Cray Y-MP/C90.

References

[1]
A. Agrawal, L. Nekludova, and W. Lim. A parallel O(log n) algorithm for finding connected components in planar images. Technical Report TMC-122, Thinking Machines Corporation, Feb. 1987.
[2]
B. Awerbuch and Y. Shfloach. New connectivity and MSF algorithms for Ultracomputer and P RAM. In Proceedings of the International Conference on Parallel Processing, pages 175-179, 1983.
[3]
G. E. Blelloch. Scans as primitive parallel operations. 1EEE Transactions on Computers, C-38(11):1526- 1538, Nov. 1989.
[4]
G. E. Blelloch. NESL: A nested data-parallel language (version 2.6). Technical Report CMU-CS-93-129, Carnegie Mellon University, Apr. 1993.
[5]
G. E. Blelloch and J. C. Hardwick. Class notes: Programming parallel algorithms cs 15-840b (fall 1992). Technical Report CMU-CS-93-115, Carnegie Mellon University, Feb. 1993.
[6]
K. W. Chong and T. W. Lam. Findings connected components in O(lognloglog n) time on EREW PRAM. In 4th A CM-SIAM Symposium on Discrete Algomthms, pages 11-20, 1993.
[7]
P. D. Coddington and C. F. Baillie. Parallel cluster algorithms. Nuclear Physics B, Proceedings Supplements, 20:76-79, 1991.
[8]
H. G. Evertz. Vectorized cluster search. Nuclear Physics B, Proceedings Supplements, pages 620-622, 1992.
[9]
H. Gazit. An optimal randomized parallel algorithm for finding connected components in a graph. SIAM J. Comput., 20(6), Dec. 1991.
[10]
J. Greiner. A comparison of data-parallel algorithms for connected components. Technical Report CMU-CS-93- 191, Carnegie Mellon University, Aug. 1993.
[11]
J. Greiner and G. E. Blelloch. Data-parallel connected components algorithms. To appear in High Performance Computing, ed. Gary Sabot.
[12]
S. Hambrusch and L. TeWinkel. A study of connected component labeling algorithms on the MPP. In 3rd International Conference on Supercomput,ng, volume 1, pages 477-483, May 1988.
[13]
D. S. Hirschberg, A. K. Chandra, and D. V. Sarwate. Computing connected components on parallel computers. Commun. ACM, 22(8):461-464, 1979.
[14]
D. B. Johnson and P. Metaxas. Connected components in O(log3/2 n) parallel time for the CREW PRAM. In 32nd IEEE Annual Symposium on Foundations of Computer Science, pages 688-697, 1991.
[15]
D. R. Karger, N. Nisan, and M. Parnas. Fast connected components algorithm for the EREW P RAM. In 4th Symposium on Parallel Algorithms and Architectures, pages 373-381, 1992.
[16]
W. Lira. Fast algorithms for labeling connected components in 2-D arrays. Technical Report TMC-125, Thinking Machines Corporation, Nov. 1987.
[17]
W. Lim, A. Agrawal, and L. Neldudova. A fast parallel algorithm for labeling connected components in image arrays. Technical Report TMC-124, Thinking Machines Corporation, Apr. 1987.
[18]
H. Mino. A vectorized algorithm for cluster formation in the Swendsen-Wang dynamics.Computer Physics Communications, 66:25-30, 1991.
[19]
P. M. Pardalos and C. S. Rentala. Computational aspects of a parallel algorithm to find the connected components of a graph. Technical Report CS-89-01, Pennsylvania State University Department of Computer Science, 1989.
[20]
C. A. Phillips. Parallel graph contraction. In Symposium on Parallel Algorithms and Architectures, pages 148-157, June 1989.
[21]
J. H. Reif. Optimal parallel algorithms for integer sorting and graph connectivity. Technical Report TR-08-85, Harvard University, Mar. 1985.
[22]
Y. Shiloach and U. Vishkin. An O(log n) parallel connectivity algorithm. Journal of Algorithms, :3:57-67, 1982.
[23]
R. H. Swendsen and J.-S. Wang. Nonuniversal critical dynamics in Monte Carlo simulations. Physical! Review Letters, 58(2):86-88, Jan. 1987.
[24]
D. Talmor. Personal communication. 1991.
[25]
J. Woo and S. Sahni. Hypercube computing: Connected components. Journal of Supercomputing, 3:209- 234, 1989.
[26]
X. D. Yang. An improved algorithm for labeling connected components in a binary image. Technical Report 89-981, Cornell University, Mar. 1989.
[27]
M. Zagha. Personal communication. Feb. 1994.

Cited By

View all
  • (2024)GraphZeppelin: How to Find Connected Components (Even When Graphs Are Dense, Dynamic, and Massive)ACM Transactions on Database Systems10.1145/364384649:3(1-31)Online publication date: 16-May-2024
  • (2024)A MapReduce-Based Approach for Fast Connected Components Detection from Large-Scale NetworksBig Data10.1089/big.2022.0264Online publication date: 29-Jan-2024
  • (2022)Simple Concurrent Connected Components AlgorithmsACM Transactions on Parallel Computing10.1145/35435469:2(1-26)Online publication date: 1-Sep-2022
  • Show More Cited By

Index Terms

  1. A comparison of parallel algorithms for connected components

        Recommendations

        Comments

        Information & Contributors

        Information

        Published In

        cover image ACM Conferences
        SPAA '94: Proceedings of the sixth annual ACM symposium on Parallel algorithms and architectures
        August 1994
        374 pages
        ISBN:0897916719
        DOI:10.1145/181014
        Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

        Sponsors

        Publisher

        Association for Computing Machinery

        New York, NY, United States

        Publication History

        Published: 01 August 1994

        Permissions

        Request permissions for this article.

        Check for updates

        Qualifiers

        • Article

        Conference

        6SPAA94
        Sponsor:

        Acceptance Rates

        Overall Acceptance Rate 447 of 1,461 submissions, 31%

        Contributors

        Other Metrics

        Bibliometrics & Citations

        Bibliometrics

        Article Metrics

        • Downloads (Last 12 months)103
        • Downloads (Last 6 weeks)13
        Reflects downloads up to 15 Oct 2024

        Other Metrics

        Citations

        Cited By

        View all
        • (2024)GraphZeppelin: How to Find Connected Components (Even When Graphs Are Dense, Dynamic, and Massive)ACM Transactions on Database Systems10.1145/364384649:3(1-31)Online publication date: 16-May-2024
        • (2024)A MapReduce-Based Approach for Fast Connected Components Detection from Large-Scale NetworksBig Data10.1089/big.2022.0264Online publication date: 29-Jan-2024
        • (2022)Simple Concurrent Connected Components AlgorithmsACM Transactions on Parallel Computing10.1145/35435469:2(1-26)Online publication date: 1-Sep-2022
        • (2022)GraphZeppelin: Storage-Friendly Sketching for Connected Components on Dynamic Graph StreamsProceedings of the 2022 International Conference on Management of Data10.1145/3514221.3526146(325-339)Online publication date: 10-Jun-2022
        • (2022)Communication-efficient Massively Distributed Connected Components2022 IEEE International Parallel and Distributed Processing Symposium (IPDPS)10.1109/IPDPS53621.2022.00037(302-312)Online publication date: May-2022
        • (2022)GX-Plug: a Middleware for Plugging Accelerators to Distributed Graph Processing2022 IEEE 38th International Conference on Data Engineering (ICDE)10.1109/ICDE53745.2022.00246(2682-2694)Online publication date: May-2022
        • (2022)MapReduce Preprocess of Big Graphs for Rapid Connected Components Detection2022 IEEE 12th Annual Computing and Communication Workshop and Conference (CCWC)10.1109/CCWC54503.2022.9720798(0112-0118)Online publication date: 26-Jan-2022
        • (2021)ConnectItProceedings of the VLDB Endowment10.14778/3436905.343692314:4(653-667)Online publication date: 22-Feb-2021
        • (2020)Exploring the Design Space of Static and Incremental Graph Connectivity Algorithms on GPUsProceedings of the ACM International Conference on Parallel Architectures and Compilation Techniques10.1145/3410463.3414657(55-69)Online publication date: 30-Sep-2020
        • (2020)Connected Components on a PRAM in Log Diameter TimeProceedings of the 32nd ACM Symposium on Parallelism in Algorithms and Architectures10.1145/3350755.3400249(359-369)Online publication date: 6-Jul-2020
        • Show More Cited By

        View Options

        View options

        PDF

        View or Download as a PDF file.

        PDF

        eReader

        View online with eReader.

        eReader

        Get Access

        Login options

        Media

        Figures

        Other

        Tables

        Share

        Share

        Share this Publication link

        Share on social media