Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
10.1145/3626183.3659976acmconferencesArticle/Chapter ViewAbstractPublication PagesspaaConference Proceedingsconference-collections
research-article
Open access

Deterministic and Low-Span Work-Efficient Parallel Batch-Dynamic Trees

Published: 17 June 2024 Publication History

Abstract

Dynamic trees are a well-studied and fundamental building block of dynamic graph algorithms dating back to the seminal work of Sleator and Tarjan [STOC'81, (1981), pp. 114-122]. The problem is to maintain a tree subject to online edge insertions and deletions while answering queries about the tree, such as the heaviest weight on a path, etc. In the parallel batch-dynamic setting, the goal is to process batches of edge updates work efficiently in low (polylog n) span. Two work-efficient algorithms are known: batch-parallel Euler Tour Trees by Tseng et al. [ALENEX'19, (2019), pp. 92--106] and parallel Rake-Compress (RC) Trees by Acar et al. [ESA'20, (2020), pp. 2:1--2:23]. Both however are randomized and work efficient in expectation. Several downstream results that use these data structures (and indeed to the best of our knowledge, all known work-efficient parallel batch-dynamic graph algorithms) are therefore also randomized.
In this work, we give the first deterministic work-efficient solution to the problem. Our algorithm maintains a parallel RC-Tree on n vertices subject to batches of k edge updates deterministically in worst-case O(k log(1 + n/k)) work and O(log n loglog k) span on the Common-CRCW PRAM. We also show how to improve the span of the randomized algorithm from O(log n log* n) to O(log n).
Lastly, as a result of our new deterministic algorithm, we also derandomize several downstream results that make use of parallel batch-dynamic dynamic trees, previously for which the only efficient solutions were randomized.

References

[1]
Umut A Acar, Daniel Anderson, Guy E Blelloch, and Laxman Dhulipala. 2019. Parallel batch-dynamic graph connectivity. In ACM Symposium on Parallelism in Algorithms and Architectures (SPAA).
[2]
Umut A Acar, Daniel Anderson, Guy E. Blelloch, Laxman Dhulipala, and Sam Westrick. 2020. Parallel Batch-dynamic Trees via Change Propagation. In European Symposium on Algorithms (ESA).
[3]
Umut A Acar, Guy E Blelloch, Robert Harper, Jorge L Vittes, and Shan Leung Maverick Woo. 2004. Dynamizing static algorithms, with applications to dynamic trees and history independence. In ACM-SIAM Symposium on Discrete Algorithms (SODA).
[4]
Umut A Acar, Guy E Blelloch, and Jorge L Vittes. 2005. An experimental analysis of change propagation in dynamic trees. In Algorithm Engineering and Experiments (ALENEX).
[5]
Ravindra K Ahuja, James B Orlin, and Robert E Tarjan. 1989. Improved time bounds for the maximum flow problem. SIAM J. on Computing 18, 5 (1989), 939--954.
[6]
Stephen Alstrup, Jacob Holm, Kristian De Lichtenberg, and Mikkel Thorup. 2005. Maintaining information in fully dynamic trees with top trees. ACM Trans. Algorithms (TALG) 1, 2 (2005), 243--264.
[7]
Daniel Anderson. 2023. Parallel Batch-Dynamic Algorithms. Ph.D. Dissertation. Department of Computer Science, Carnegie Mellon University.
[8]
Daniel Anderson and Guy E Blelloch. 2021. Parallel Minimum Cuts in ??(??log2 ??) Work and Low Depth. In ACM Symposium on Parallelism in Algorithms and Architectures (SPAA).
[9]
Daniel Anderson, Guy E Blelloch, and Kanat Tangwongsan. 2020. Work-Efficient Batch-Incremental Minimum Spanning Trees with Applications to the Sliding- WindowModel. In ACM Symposium on Parallelism in Algorithms and Architectures (SPAA).
[10]
Guy E. Blelloch. 1993. Prefix Sums and Their Applications. In Synthesis of Parallel Algorithms, John Reif (Ed.). Morgan Kaufmann.
[11]
Guy E. Blelloch. 1996. Programming Parallel Algorithms. Commun. ACM 39, 3 (March 1996).
[12]
Guy E. Blelloch, Jeremy T Fineman, Yan Gu, and Yihan Sun. 2020. Optimal parallel algorithms in the binary-forking model. In ACM Symposium on Parallelism in Algorithms and Architectures (SPAA).
[13]
Richard P Brent. 1974. The parallel evaluation of general arithmetic expressions. J. ACM 21, 2 (1974), 201--206.
[14]
Richard Cole and Uzi Vishkin. 1986. Approximate and exact parallel scheduling with applications to list, tree and graph problems. In IEEE Symposium on Foundations of Computer Science (FOCS).
[15]
Richard Cole and Uzi Vishkin. 1986. Deterministic coin tossing with applications to optimal parallel list ranking. Information and Control 70, 1 (1986), 32--53.
[16]
Richard Cole and Uzi Vishkin. 1991. Approximate parallel scheduling. II. Applications to logarithmic-time optimal parallel graph algorithms. Information and computation 92, 1 (1991), 1--47.
[17]
Paolo Ferragina and Fabrizio Luccio. 1994. Batch dynamic algorithms for two graph problems. In International Conference on Parallel Architectures and Languages Europe.
[18]
Paolo Ferragina and Fabrizio Luccio. 1996. Three techniques for parallel maintenance of a minimum spanning tree under batch of updates. Parallel processing letters 6, 02 (1996), 213--222.
[19]
Steven Fortune and James Wyllie. 1978. Parallelism in random access machines. In ACM Symposium on Theory of Computing (STOC).
[20]
Greg N Frederickson. 1985. Data structures for on-line updating of minimum spanning trees, with applications. SIAM J. on Computing 14, 4 (1985), 781--798.
[21]
Greg N Frederickson. 1997. Ambivalent data structures for dynamic 2-edgeconnectivity and k smallest spanning trees. SIAM J. on Computing 26, 2 (1997), 484--538.
[22]
Greg N Frederickson. 1997. A data structure for dynamically maintaining rooted trees. J. Algorithms 24, 1 (1997), 37--65.
[23]
Pawe? Gawrychowski, Shay Mozes, and Oren Weimann. 2020. Minimum Cut in ??(??log2 ??) Time. In Intl. Colloq. on Automata, Languages and Programming (ICALP).
[24]
Hillel Gazit, Gary L Miller, and Shang-Hua Teng. 1988. Optimal tree contraction in the EREW model. In Concurrent Computations. Springer, 139--156.
[25]
Barbara Geissmann and Lukas Gianinazzi. 2018. Parallel minimum cuts in nearlinear work and low depth. In ACM Symposium on Parallelism in Algorithms and Architectures (SPAA).
[26]
Mohsen Ghaffari, Christoph Grunau, and Jiahao Qu. 2023. Nearly Work-Efficient Parallel DFS in Undirected Graphs. In ACM Symposium on Parallelism in Algorithms and Architectures (SPAA).
[27]
J. Gil, Y. Matias, and U. Vishkin. 1991. Towards a theory of nearly constant time parallel algorithms. In IEEE Symposium on Foundations of Computer Science (FOCS).
[28]
Andrew Goldberg, Serge Plotkin, and Gregory Shannon. 1987. Parallel symmetrybreaking in sparse graphs. In ACM Symposium on Theory of Computing (STOC).
[29]
Andrew V Goldberg, Michael D Grigoriadis, and Robert E Tarjan. 1991. Use of dynamic trees in a network simplex algorithm for the maximum flow problem. Mathematical Programming 50, 1 (1991), 277--290.
[30]
Andrew V Goldberg and Serge A Plotkin. 1987. Parallel (? 1)-coloring of constant-degree graphs. Inf. Process. Lett. 25, 4 (1987), 241--245.
[31]
Andrew V Goldberg and Robert E Tarjan. 1988. A new approach to the maximumflow problem. Journal of the ACM (JACM) 35, 4 (1988), 921--940.
[32]
Tal Goldberg and Uri Zwick. 1995. Optimal deterministic approximate parallel prefix sums and their applications. In Proceedings of the Third Israel Symposium on the Theory of Computing and Systems.
[33]
Monika Rauch Henzinger and Valerie King. 1995. Randomized dynamic graph algorithms with polylogarithmic time per operation. In ACM Symposium on Theory of Computing (STOC). ACM.
[34]
Monika R Henzinger and Valerie King. 2001. Maintaining minimum spanning forests in dynamic graphs. SIAM J. on Computing 31, 2 (2001), 364--374.
[35]
Jacob Holm and Kristian de Lichtenberg. 1998. Top-trees and dynamic graph algorithms. Master's thesis. Citeseer.
[36]
Jacob Holm, Kristian De Lichtenberg, and Mikkel Thorup. 2001. Poly-logarithmic deterministic fully-dynamic algorithms for connectivity, minimum spanning tree, 2-edge, and biconnectivity. J. ACM 48, 4 (2001), 723--760.
[37]
J. JaJa. 1992. Introduction to Parallel Algorithms. Addison-Wesley Professional.
[38]
Hermann Jung and Kurt Mehlhorn. 1988. Parallel algorithms for computing maximal independent sets in trees and for updating minimum spanning trees. Inf. Process. Lett. 27, 5 (1988), 227--236.
[39]
Bruce M Kapron, Valerie King, and Ben Mountjoy. 2013. Dynamic graph connectivity in polylogarithmic worst case time. In ACM-SIAM Symposium on Discrete Algorithms (SODA).
[40]
David R Karger. 2000. Minimum cuts in near-linear time. J. ACM 47, 1 (2000), 46--76.
[41]
Quanquan C. Liu, Jessica Shi, Shangdi Yu, Laxman Dhulipala, and Julian Shun. 2022. Parallel Batch-Dynamic Algorithms for k-Core Decomposition and Related Graph Problems.
[42]
Michael Luby. 1985. A simple parallel algorithm for the maximal independent set problem. In ACM Symposium on Theory of Computing (STOC).
[43]
Daniele Micciancio. 1997. Oblivious data structures: applications to cryptography. In ACM Symposium on Theory of Computing (STOC).
[44]
Gary L. Miller and John H. Reif. 1985. Parallel Tree Contraction and Its Application. In IEEE Symposium on Foundations of Computer Science (FOCS). IEEE.
[45]
Shaunak Pawagi and Owen Kaser. 1993. Optimal parallel algorithms for multiple updates of minimum spanning trees. Algorithmica 9, 4 (1993), 357--381.
[46]
Seth Pettie and Vijaya Ramachandran. 2002. A randomized time-work optimal parallel algorithm for finding a minimum spanning forest. SIAM J. on Computing 31, 6 (2002), 1879--1895.
[47]
Xiaojun Shen and Weifa Liang. 1993. A parallel algorithm for multiple edge updates of minimum spanning trees. In International Parallel Processing Symposium (IPPS).
[48]
Daniel D Sleator and Robert Endre Tarjan. 1983. A data structure for dynamic trees. J. Comput. Syst. Sci. 26, 3 (1983), 362--391.
[49]
Robert E Tarjan. 1997. Dynamic trees as search trees via euler tours, applied to the network simplex algorithm. Mathematical Programming 78, 2 (1997), 169--177.
[50]
Robert E Tarjan and Renato F Werneck. 2005. Self-adjusting top trees. In ACMSIAM Symposium on Discrete Algorithms (SODA).
[51]
Thomas Tseng, Laxman Dhulipala, and Guy Blelloch. 2019. Batch-parallel euler tour trees. In 2019 Proceedings of the Twenty-First Workshop on Algorithm Engineering and Experiments (ALENEX). SIAM, 92--106.
[52]
Tom Tseng, Laxman Dhulipala, and Julian Shun. 2022. Parallel Batch-Dynamic Minimum Spanning Forest and the Efficiency of Dynamic Agglomerative Graph Clustering. In ACM Symposium on Parallelism in Algorithms and Architectures (SPAA).
[53]
Renato F Werneck. 2006. Design and analysis of data structures for dynamic trees. Ph.D. Dissertation. Princeton University.

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Conferences
SPAA '24: Proceedings of the 36th ACM Symposium on Parallelism in Algorithms and Architectures
June 2024
510 pages
ISBN:9798400704161
DOI:10.1145/3626183
This work is licensed under a Creative Commons Attribution-ShareAlike International 4.0 License.

Sponsors

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 17 June 2024

Check for updates

Author Tags

  1. batch-dynamic algorithms
  2. dynamic trees
  3. parallel graph algorithms

Qualifiers

  • Research-article

Funding Sources

Conference

SPAA '24
Sponsor:

Acceptance Rates

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

Upcoming Conference

SPAA '25
37th ACM Symposium on Parallelism in Algorithms and Architectures
July 28 - August 1, 2025
Portland , OR , USA

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • 0
    Total Citations
  • 235
    Total Downloads
  • Downloads (Last 12 months)235
  • Downloads (Last 6 weeks)36
Reflects downloads up to 25 Jan 2025

Other Metrics

Citations

View Options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Login options

Figures

Tables

Media

Share

Share

Share this Publication link

Share on social media