中文

论寄存器线性化与终止性

分布式、并行与集群计算 2021-03-01 v1 数据结构与算法

摘要

在一项开创性工作中,Golab 等人表明,一个使用原子对象的随机化算法,若将其所使用的原子对象替换为线性化对象,可能会丧失其某些性质。此前尚不清楚可能丧失的性质中是否包含终止性(以概率 1)这一重要性质。在本文中,我们首先证明,对于随机化算法,终止性确实可能丧失。Golab 等人还引入了强线性化,并证明强线性化对象可如同原子对象一般使用,即便对于随机化算法亦然:它们保持算法的正确性性质,包括终止性。遗憾的是,在一些重要情形下强线性化无法实现。特别地,Helmi 等人的多写多读(MWMR)寄存器无法由单写多读(SWMR)寄存器实现出强线性化版本。因此我们提出一种新型寄存器线性化,称为写强线性化,它严格强于线性化但严格弱于强线性化。我们证明,某些使用线性化寄存器无法终止的随机化算法,在使用写强线性化寄存器时能够终止。换言之,存在线性化不足但写强线性化足够的情况。与上述不可能性结果相反,我们证明写强线性化的 MWMR 寄存器可由 SWMR 寄存器实现。然而,实现写强线性化比仅实现线性化更难:我们给出一个由 SWMR 寄存器实现 MWMR 寄存器的简单实现,并证明该实现是线性化的但非写强线性化的。最后,我们证明任何 SWMR 寄存器的线性化实现必然是写强线性化的;这适用于共享内存、消息传递以及混合系统。

关键词

引用

@article{arxiv.2102.13242,
  title  = {On Register Linearizability and Termination},
  author = {Vassos Hadzilacos and Xing Hu and Sam Toueg},
  journal= {arXiv preprint arXiv:2102.13242},
  year   = {2021}
}