快速快照并发Braun堆
Fast Snapshottable Concurrent Braun Heaps
摘要:
本文提出了一种新的并发堆算法,基于一个无状态的形状属性,有效地保持平衡插入和removeMin操作实现与移交锁定。它还提供了一个O(1)线性化的快照操作的基础上懒惰写时复制语义。这样的快照可用于在迭代期间提供堆的一致视图,以及进行推测性更新(稍后可能会删除)。该算法的简单性使其易于被证明是正确的,并且形状属性的选择提供了与高度优化的跳过列表实现竞争的优先级队列性能(并且对最坏情况的时间复杂度具有更强的界限)。提供了一个Scala参考实现。
英文摘要:
This paper proposes a new concurrent heap algorithm, based on a stateless shape property, which efficiently maintains balance during insert and removeMin operations implemented with hand-over-hand locking. It also provides a O(1) linearizable snapshot operation based on lazy copy-on-write semantics. Such snapshots can be used to provide consistent views of the heap during iteration, as well as to make speculative updates (which can later be dropped). The simplicity of the algorithm allows it to be easily proven correct, and the choice of shape property provides priority queue performance which is competitive with highly optimized skiplist implementations (and has stronger bounds on worst-case time complexity). A Scala reference implementation is provided.
机构、总结、中文摘要均由AI分析而来,可能存在错误,请以论文正文为准。