具有亚对数RMR复杂度的可恢复、可中止且自适应互斥算法
Recoverable, Abortable, and Adaptive Mutual Exclusion with Sublogarithmic RMR Complexity
AI总结:
本文提出首个同时具备可中止性、点争用自适应性和亚对数RMR复杂度的可恢复互斥算法,基于FAA原语和通用转换技术,在最坏情况下实现O(log N / log log N)的通过复杂度。
摘要:
我们提出了首个可恢复互斥(RME)算法,该算法同时具备可中止性、对点争用的自适应性以及亚对数RMR复杂度。我们的算法具有$O(\min(K,\log_W N))$的RMR通过复杂度和$O(F + \min(K,\log_W N))$的RMR超通过复杂度,其中$K$是并发进程数(点争用),$W$是寄存器的大小(以位为单位),$F$是超通过中的崩溃次数。在标准假设$W=Θ(\log N)$下,这些界转化为最坏情况下的$O(\frac{\log N}{\log \log N})$通过复杂度和$O(F + \frac{\log N}{\log \log N})$超通过复杂度。我们的关键构建模块是:* 一个$D$进程可中止RME算法,对于$D \leq W$,具有$O(1)$通过复杂度和$O(1+F)$超通过复杂度。我们通过使用Fetch-And-Add(FAA)原语获得该算法,不同于先前使用Fetch-And-Store(FAS/SWAP)的RME工作。* 一个通用转换,将任何通过复杂度为$B < W$的可中止RME算法转换为通过复杂度为$O(\min(K,B))$的可中止RME锁。
英文摘要:
We present the first recoverable mutual exclusion (RME) algorithm that is simultaneously abortable, adaptive to point contention, and with sublogarithmic RMR complexity. Our algorithm has $O(\min(K,\log_W N))$ RMR passage complexity and $O(F + \min(K,\log_W N))$ RMR super-passage complexity, where $K$ is the number of concurrent processes (point contention), $W$ is the size (in bits) of registers, and $F$ is the number of crashes in a super-passage. Under the standard assumption that $W=Θ(\log N)$, these bounds translate to worst-case $O(\frac{\log N}{\log \log N})$ passage complexity and $O(F + \frac{\log N}{\log \log N})$ super-passage complexity. Our key building blocks are: * A $D$-process abortable RME algorithm, for $D \leq W$, with $O(1)$ passage complexity and $O(1+F)$ super-passage complexity. We obtain this algorithm by using the Fetch-And-Add (FAA) primitive, unlike prior work on RME that uses Fetch-And-Store (FAS/SWAP). * A generic transformation that transforms any abortable RME algorithm with passage complexity of $B < W$, into an abortable RME lock with passage complexity of $O(\min(K,B))$.
机构、总结、中文摘要均由AI分析而来,可能存在错误,请以论文正文为准。