中文

基于交换对象的共识的空间复杂度

分布式、并行与集群计算 2023-08-04 v2

摘要

近三十年前,人们证明了解决nn个进程间无阻碍共识需要Ω(n)\Omega(\sqrt{n})个寄存器。该下界在2018年被改进为nn个寄存器,恰好与最佳上界匹配。Ω(n)\Omega(\sqrt{n})的空间复杂度下界实际上适用于一类称为无历史对象(historyless objects)的对象,包括寄存器、test-and-set对象和可读交换(readable swap)对象。然而,每一个已知的基于无历史对象的nn进程无阻碍共识算法都使用Ω(n)\Omega (n)个对象。我们给出了针对两类无历史对象的共识算法的首个Ω(n)\Omega (n)空间复杂度下界。首先,我们证明任何基于交换(swap)对象的无阻碍共识算法至少使用n1n-1个对象。更一般地,我们证明任何基于交换对象的无阻碍kk-集一致(kk-set agreement)算法至少使用nk1\lceil \frac{n}{k}\rceil - 1个对象。这是当k>1k > 1时用交换对象解决kk-集一致的空间复杂度的首个非常数下界。我们还给出了一个基于nkn-k个交换对象的无阻碍kk-集一致算法,在k=1k=1时恰好匹配我们的下界。其次,我们证明任何基于域大小为bb的可读交换对象的无阻碍二元共识算法至少使用n23b+1\frac{n-2}{3b+1}个对象。由于任何无历史对象都可由具有相同域的可读交换对象模拟,我们的结果意味着任何基于域大小为bb的无历史对象的无阻碍共识算法至少使用n23b+1\frac{n-2}{3b+1}个对象。对于b=2b = 2,我们给出了n2n-2的稍优下界。已知最好的基于域大小为22的可读交换对象的无阻碍二元共识算法使用2n12n-1个对象,在渐近意义上与我们的下界匹配。

关键词

引用

@article{arxiv.2305.06507,
  title  = {The Space Complexity of Consensus from Swap},
  author = {Sean Ovens},
  journal= {arXiv preprint arXiv:2305.06507},
  year   = {2023}
}