TY - GEN
T1 - Parallel batch-dynamic trees via change propagation
AU - Acar, Umut A.
AU - Anderson, Daniel
AU - Blelloch, Guy E.
AU - Dhulipala, Laxman
AU - Westrick, Sam
N1 - Publisher Copyright:
© Umut A. Acar, Daniel Anderson, Guy E. Blelloch, Laxman Dhulipala, and Sam Westrick
PY - 2020/8/1
Y1 - 2020/8/1
N2 - The dynamic trees problem is to maintain a forest subject to edge insertions and deletions while facilitating queries such as connectivity, path weights, and subtree weights. Dynamic trees are a fundamental building block of a large number of graph algorithms. Although traditionally studied in the single-update setting, dynamic algorithms capable of supporting batches of updates are increasingly relevant today due to the emergence of rapidly evolving dynamic datasets. Since processing updates on a single processor is often unrealistic for large batches of updates, designing parallel batch-dynamic algorithms that achieve provably low span is important for many applications. In this work, we design the first work-efficient parallel batch-dynamic algorithm for dynamic trees that is capable of supporting both path queries and subtree queries, as well as a variety of nonlocal queries. Previous work-efficient dynamic trees of Tseng et al. were only capable of handling subtree queries [ALENEX’19, (2019), pp. 92–106]. To achieve this, we propose a framework for algorithmically dynamizing static round-synchronous algorithms to obtain parallel batch-dynamic algorithms. In our framework, the algorithm designer can apply the technique to any suitably defined static algorithm. We then obtain theoretical guarantees for algorithms in our framework by defining the notion of a computation distance between two executions of the underlying algorithm. Our dynamic trees algorithm is obtained by applying our dynamization framework to the parallel tree contraction algorithm of Miller and Reif [FOCS’85, (1985), pp. 478–489], and then performing a novel analysis of the computation distance of this algorithm under batch updates. We show that k updates can be performed in O(k log(1 + n/k)) work in expectation, which matches the algorithm of Tseng et al. while providing support for a substantially larger number of queries and applications.
AB - The dynamic trees problem is to maintain a forest subject to edge insertions and deletions while facilitating queries such as connectivity, path weights, and subtree weights. Dynamic trees are a fundamental building block of a large number of graph algorithms. Although traditionally studied in the single-update setting, dynamic algorithms capable of supporting batches of updates are increasingly relevant today due to the emergence of rapidly evolving dynamic datasets. Since processing updates on a single processor is often unrealistic for large batches of updates, designing parallel batch-dynamic algorithms that achieve provably low span is important for many applications. In this work, we design the first work-efficient parallel batch-dynamic algorithm for dynamic trees that is capable of supporting both path queries and subtree queries, as well as a variety of nonlocal queries. Previous work-efficient dynamic trees of Tseng et al. were only capable of handling subtree queries [ALENEX’19, (2019), pp. 92–106]. To achieve this, we propose a framework for algorithmically dynamizing static round-synchronous algorithms to obtain parallel batch-dynamic algorithms. In our framework, the algorithm designer can apply the technique to any suitably defined static algorithm. We then obtain theoretical guarantees for algorithms in our framework by defining the notion of a computation distance between two executions of the underlying algorithm. Our dynamic trees algorithm is obtained by applying our dynamization framework to the parallel tree contraction algorithm of Miller and Reif [FOCS’85, (1985), pp. 478–489], and then performing a novel analysis of the computation distance of this algorithm under batch updates. We show that k updates can be performed in O(k log(1 + n/k)) work in expectation, which matches the algorithm of Tseng et al. while providing support for a substantially larger number of queries and applications.
KW - Dynamic algorithms
KW - Dynamic trees
KW - Graph algorithms
KW - Parallel algorithms
UR - http://www.scopus.com/inward/record.url?scp=85092536123&partnerID=8YFLogxK
UR - http://www.scopus.com/inward/citedby.url?scp=85092536123&partnerID=8YFLogxK
U2 - 10.4230/LIPIcs.ESA.2020.2
DO - 10.4230/LIPIcs.ESA.2020.2
M3 - Conference contribution
AN - SCOPUS:85092536123
T3 - Leibniz International Proceedings in Informatics, LIPIcs
BT - 28th Annual European Symposium on Algorithms, ESA 2020
A2 - Grandoni, Fabrizio
A2 - Herman, Grzegorz
A2 - Sanders, Peter
PB - Schloss Dagstuhl- Leibniz-Zentrum fur Informatik GmbH, Dagstuhl Publishing
T2 - 28th Annual European Symposium on Algorithms, ESA 2020
Y2 - 7 September 2020 through 9 September 2020
ER -