Recoverable, Abortable, and Adaptive Mutual Exclusion with Sublogarithmic RMR Complexity

11/15/2020
by   Daniel Katzan, et al.
0

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(log N/loglog N) passage complexity and O(F + log N/loglog N) super-passage complexity. Our key building blocks are: * A D-process abortable RME algorithm, for D ≤ 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)).

READ FULL TEXT

Please sign up or login with your details

Forgot password? Click here to reset