【24h】

Batch-Parallel Euler Tour Trees

机译:批次并行欧拉旅游树

获取原文

摘要

The dynamic trees problem is to maintain a forest undergoing edge insertions and deletions while supporting queries for information such as connectivity. There are many existing data structures for this problem, but few of them are capable of exploiting parallelism in the batch setting, in which large batches of edges are inserted or deleted from the forest at once. In this paper, we demonstrate that the Euler tour tree, an existing sequential dynamic trees data structure, can be parallelized in the batch setting. For a batch of k updates over a forest of n vertices, our parallel Euler tour trees perform O(k log(1 +n/k)) expected work with O(log n) depth with high probability. Our work bound is asymptotically optimal, and we improve on the depth bound achieved by Acar for the batch-parallel dynamic trees problem. Our main building block for parallelizing Euler tour trees is a batch-parallel skip list data structure, which we believe may be of independent interest. Euler tour trees require a sequence data structure capable of joins and splits. Traditionally, balanced binary trees are used, but they are difficult to join or split in parallel when processing batches of updates. We show that skip lists, on the other hand, support batches of joins or splits of size k over n elements with O(k log(1 + n/k)) work in expectation and O(log n) depth with high probability. We also achieve the same efficiency bounds for augmented skip lists, which allows us to augment our Euler tour trees to support subtree queries. Our data structures achieve between 67-96 × self-relative speedup on 72 cores with hyper-threading on large batch sizes. Our data structures also significantly outperform the fastest existing sequential dynamic trees data structures empirically.
机译:动态树问题是在支持诸如连接之类的信息的查询时维护经过边缘插入和删除的森林。存在许多现有的数据结构对于该问题,但是其中很少有能力在批量设置中利用并行性,其中大量边缘立即从森林中插入或删除。在本文中,我们证明了欧拉旅游树,现有的顺序动态树数据结构,可以在批处理中并行化。对于一批在N个顶点的森林上更新,我们的并行欧拉旅游树执行O(k log(1 + n / k))预期使用具有高概率的O(log n)深度。我们的工作绑定是渐近的最佳状态,我们改善了ACAR为批量平行动态树问题实现的深度束缚。我们的主要构建块并行化欧拉旅游树是一个批量并行跳过列表数据结构,我们认为可能具有独立的兴趣。欧拉旅游树要求能够加入和分裂的序列数据结构。传统上,使用平衡二元树,但在处理批次更新时,它们难以并行加入或分开。另一方面,我们示出了跳过列表,另一方面,使用O(k log(1 + n / k))在N个元素中支持批次或大小k的分裂,在期望和o(log n)深度具有高概率。我们还实现了增强跳过列表的相同效率界限,这使我们能够增加我们的欧拉旅游树来支持子树查询。我们的数据结构在72个核心上实现了67-96×自相对加速,在大批量大小上具有超线程。我们的数据结构也明确优于现有的最快的连续动态树数据结构。

著录项

相似文献

  • 外文文献
  • 中文文献
  • 专利
获取原文

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号