Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
research-article

Exponentially Faster Massively Parallel Maximal Matching

Published: 11 October 2023 Publication History
  • Get Citation Alerts
  • Abstract

    The study of approximate matching in the Massively Parallel Computations (MPC) model has recently seen a burst of breakthroughs. Despite this progress, we still have a limited understanding of maximal matching which is one of the central problems of parallel and distributed computing. All known MPC algorithms for maximal matching either take polylogarithmic time which is considered inefficient, or require a strictly super-linear space of n1+Ω (1) per machine.
    In this work, we close this gap by providing a novel analysis of an extremely simple algorithm, which is a variant of an algorithm conjectured to work by Czumaj, Lacki, Madry, Mitrovic, Onak, and Sankowski [15]. The algorithm edge-samples the graph, randomly partitions the vertices, and finds a random greedy maximal matching within each partition. We show that this algorithm drastically reduces the vertex degrees. This, among other results, leads to an O(log log Δ) round algorithm for maximal matching with O(n) space (or even mildly sublinear in n using standard techniques).
    As an immediate corollary, we get a 2 approximate minimum vertex cover in essentially the same rounds and space, which is the optimal approximation factor under standard assumptions. We also get an improved O(log log Δ) round algorithm for 1 + ε approximate matching. All these results can also be implemented in the congested clique model in the same number of rounds.

    References

    [1]
    Kook Jin Ahn and Sudipto Guha. 2015. Access to data and number of iterations: Dual primal algorithms for maximum matching under resource constraints. In Proceedings of the 27th ACM Symposium on Parallelism in Algorithms and Architectures (SPAA’15). 202–211. DOI:
    [2]
    Noga Alon, László Babai, and Alon Itai. 1986. A fast and simple randomized parallel algorithm for the maximal independent set problem. J. Algorithms 7, 4 (1986), 567–583. DOI:
    [3]
    Alexandr Andoni, Aleksandar Nikolov, Krzysztof Onak, and Grigory Yaroslavtsev. 2014. Parallel algorithms for geometric graph problems. In Proceedings of the 46th Annual ACM Symposium on Theory of Computing (STOC’14). 574–583. DOI:
    [4]
    Sepehr Assadi. 2017. Simple round compression for parallel vertex cover. arXiv:1709.04599. Retrieved from https://arxiv.org/abs/1709.04599
    [5]
    Sepehr Assadi, MohammadHossein Bateni, Aaron Bernstein, Vahab Mirrokni, and Cliff Stein. 2019. Coresets meet EDCS: Algorithms for matching and vertex cover on massive graphs. In Proceedings of the 30th Annual ACM-SIAM Symposium on Discrete Algorithms (SODA’19). 1616–1635.
    [6]
    Sepehr Assadi and Sanjeev Khanna. 2017. Randomized composable coresets for matching and vertex cover. In Proceedings of the 29th ACM Symposium on Parallelism in Algorithms and Architectures (SPAA’17). 3–12. DOI:
    [7]
    Sepehr Assadi, S. Cliff Liu, and Robert E. Tarjan. 2021. An auction algorithm for bipartite matching in streaming and massively parallel computation models. In Proceedings of the 4th Symposium on Simplicity in Algorithms (SOSA’21). 165–171. DOI:
    [8]
    Sepehr Assadi, Xiaorui Sun, and Omri Weinstein. 2019. Massively parallel algorithms for finding well-connected components in sparse graphs. In Proceedings of the 2019 ACM Symposium on Principles of Distributed Computing (PODC’19). 461–470.
    [9]
    Leonid Barenboim, Michael Elkin, Seth Pettie, and Johannes Schneider. 2012. The locality of distributed symmetry breaking. In Proceedings of the 53rd Annual IEEE Symposium on Foundations of Computer Science (FOCS’12). 321–330. DOI:
    [10]
    MohammadHossein Bateni, Soheil Behnezhad, Mahsa Derakhshan, MohammadTaghi Hajiaghayi, Raimondas Kiveris, Silvio Lattanzi, and Vahab S. Mirrokni. 2017. Affinity clustering: Hierarchical clustering at scale. In Proceedings of the 30th Annual Conference on Neural Information Processing Systems (NIPS’17). 6867–6877. Retrieved from http://papers.nips.cc/paper/7262-affinity-clustering-hierarchical-clustering-at-scale
    [11]
    Paul Beame, Paraschos Koutris, and Dan Suciu. 2017. Communication steps for parallel query processing. J. ACM 64, 6 (2017), 40:1–40:58. DOI:
    [12]
    Soheil Behnezhad, Mahsa Derakhshan, Hossein Esfandiari, Elif Tan, and Hadi Yami. 2017. Brief announcement: Graph matching in massive datasets. In Proceedings of the 29th ACM Symposium on Parallelism in Algorithms and Architectures (SPAA’17). 133–136. DOI:
    [13]
    Soheil Behnezhad, Mahsa Derakhshan, and MohammadTaghi Hajiaghayi. 2018. Brief announcement: Semi-MapReduce meets congested clique. arXiv:1802.10297. Retrieved from https://arxiv.org/abs/1802.10297
    [14]
    Soheil Behnezhad, Mahsa Derakhshan, MohammadTaghi Hajiaghayi, and Richard M. Karp. 2018. Massively parallel symmetry breaking on sparse graphs: MIS and maximal matching. arXiv:1807.06701. Retrieved from https://arxiv.org/abs/1807.06701
    [15]
    Artur Czumaj, Jakub Lacki, Aleksander Madry, Slobodan Mitrovic, Krzysztof Onak, and Piotr Sankowski. 2018. Round compression for parallel matching algorithms. In Proceedings of the 50th Annual ACM SIGACT Symposium on Theory of Computing (STOC’18). 471–484. DOI:
    [16]
    Jeffrey Dean and Sanjay Ghemawat. 2008. MapReduce: Simplified data processing on large clusters. Commun. ACM 51, 1 (2008), 107–113. DOI:
    [17]
    Manuela Fischer, Slobodan Mitrović, and Jara Uitto. 2022. Deterministic \((1 + \varepsilon)\) -approximate maximum matching with \(\operatorname{poly}(1/\varepsilon)\) passes in the semi-streaming model and beyond. In Proceedings of the 54th Annual ACM SIGACT Symposium on Theory of Computing (STOC’22). 248–260. Retrieved from
    [18]
    Buddhima Gamlath, Sagar Kale, Slobodan Mitrovic, and Ola Svensson. 2019. Weighted matchings via unweighted augmentations. In Proceedings of the 2019 ACM Symposium on Principles of Distributed Computing (PODC’19). 491–500.
    [19]
    Mohsen Ghaffari. 2017. Distributed MIS via all-to-all communication. In Proceedings of the 2017 ACM Symposium on Principles of Distributed Computing (PODC’17). 141–149. DOI:
    [20]
    Mohsen Ghaffari, Themis Gouleakis, Christian Konrad, Slobodan Mitrovic, and Ronitt Rubinfeld. 2018. Improved massively parallel computation algorithms for MIS, matching, and vertex cover. In Proceedings of the 2018 ACM Symposium on Principles of Distributed (PODC’18). 129–138. DOI:
    [21]
    Mohsen Ghaffari, Themis Gouleakis, Christian Konrad, Slobodan Mitrović, and Ronitt Rubinfeld. 2018. Improved massively parallel computation algorithms for MIS, matching, and vertex cover. In Proceedings of the 2018 ACM Symposium on Principles of Distributed Computing (PODC’18). 129–138. Retrieved from
    [22]
    Mohsen Ghaffari and Jara Uitto. 2019. Sparsifying distributed algorithms with ramifications in massively parallel computation and centralized local computation. In Proceedings of the 30th Annual ACM-SIAM Symposium on Discrete Algorithms (SODA’19). 1636–1653.
    [23]
    Michael T. Goodrich, Nodari Sitchinava, and Qin Zhang. 2011. Sorting, searching, and simulation in the MapReduce framework. In Proceedings of the 22nd International Symposium on Algorithms and Computation (ISAAC’11). 374–383. DOI:
    [24]
    Amos Israeli and Alon Itai. 1986. A fast and simple randomized parallel algorithm for maximal matching. Inf. Process. Lett. 22, 2 (1986), 77–80. DOI:
    [25]
    Howard J. Karloff, Siddharth Suri, and Sergei Vassilvitskii. 2010. A model of computation for MapReduce. In Proceedings of the 21st Annual ACM-SIAM Symposium on Discrete Algorithms (SODA’10). 938–948. DOI:
    [26]
    Subhash Khot and Oded Regev. 2008. Vertex cover might be hard to approximate to within \(2- \varepsilon\) . J. Comput. System Sci. 74, 3 (2008), 335–349.
    [27]
    Silvio Lattanzi, Benjamin Moseley, Siddharth Suri, and Sergei Vassilvitskii. 2011. Filtering: A method for solving graph problems in MapReduce. In Proceedings of the 23rd ACM Symposium on Parallelism in Algorithms and Architectures (SPAA’11). 85–94. DOI:
    [28]
    Christoph Lenzen. 2013. Optimal deterministic routing and sorting on the congested clique. In Proceedings of the 2013 ACM Symposium on Principles of Distributed Computing (PODC’13). 42–50. DOI:
    [29]
    Zvi Lotker, Boaz Patt-Shamir, and Adi Rosén. 2009. Distributed approximate matching. SIAM J. Comput. 39, 2 (2009), 445–460. DOI:
    [30]
    Michael Luby. 1985. A simple parallel algorithm for the maximal independent set problem. In Proceedings of the 17th Annual ACM Symposium on Theory of Computing (STOC’85). 1–10. DOI:
    [31]
    Andrew McGregor. 2005. Finding graph matchings in data streams. In Proceedings of the Approximation, Randomization. and Combinatorial Optimization Algorithms and Techniques. Springer, 170–181.
    [32]
    Huy N. Nguyen and Krzysztof Onak. 2008. Constant-time approximation algorithms via local improvements. In Proceedings of the 49th Annual IEEE Symposium on Foundations of Computer Science (FOCS’08). 327–336. DOI:
    [33]
    Krzysztof Onak. 2018. Round compression for parallel graph algorithms in strongly sublinear space. arXiv:1807.08745. Retrieved from https://arxiv.org/abs/1807.08745
    [34]
    J. Michael Steele. 1986. An Efron–Stein inequality for nonsymmetric statistics. The Annals of Statistics 14, 2 (1986), 753–758.
    [35]
    Tom White. 2011. Hadoop: The Definitive Guide (2nd. ed.). O’Reilly. Retrieved from https://www.oreilly.com/library/view/hadoop-the-definitive/9781449398644/
    [36]
    Yuichi Yoshida, Masaki Yamamoto, and Hiro Ito. 2009. An improved constant-time approximation algorithm for maximum matchings. In Proceedings of the 41st Annual ACM Symposium on Theory of Computing (STOC’09). 225–234. DOI:
    [37]
    Matei Zaharia, Mosharaf Chowdhury, Michael J. Franklin, Scott Shenker, and Ion Stoica. 2010. Spark: Cluster computing with working sets. In Proceedings of the 2nd USENIX Workshop on Hot Topics in Cloud Computing (HotCloud’10). Retrieved from https://www.usenix.org/conference/hotcloud-10/spark-cluster-computing-working-sets

    Cited By

    View all

    Recommendations

    Comments

    Information & Contributors

    Information

    Published In

    cover image Journal of the ACM
    Journal of the ACM  Volume 70, Issue 5
    October 2023
    388 pages
    ISSN:0004-5411
    EISSN:1557-735X
    DOI:10.1145/3627674
    Issue’s Table of Contents

    Publisher

    Association for Computing Machinery

    New York, NY, United States

    Publication History

    Published: 11 October 2023
    Online AM: 25 August 2023
    Accepted: 22 June 2023
    Revised: 23 May 2023
    Received: 05 December 2022
    Published in JACM Volume 70, Issue 5

    Permissions

    Request permissions for this article.

    Check for updates

    Author Tags

    1. Massively parallel computing
    2. MPC
    3. matching

    Qualifiers

    • Research-article

    Contributors

    Other Metrics

    Bibliometrics & Citations

    Bibliometrics

    Article Metrics

    • Downloads (Last 12 months)188
    • Downloads (Last 6 weeks)3

    Other Metrics

    Citations

    Cited By

    View all

    View Options

    Get Access

    Login options

    Full Access

    View options

    PDF

    View or Download as a PDF file.

    PDF

    eReader

    View online with eReader.

    eReader

    Full Text

    View this article in Full Text.

    Full Text

    Media

    Figures

    Other

    Tables

    Share

    Share

    Share this Publication link

    Share on social media