Understanding Read-Write Wait-Free Coverings in the Fully-Anonymous Shared-Memory Model
Giuliano Losa, Eli Gafni
TL;DR
This work investigates the fully-anonymous shared-memory model where processors and registers lack any naming. It introduces the notion of group solvability to extend classic tasks to anonymous settings and analyzes the eventual-pattern structure of stable views, proving that stable views form a DAG with a unique source. Leveraging this structure, it gives a wait-free snapshot algorithm using only $N$ registers, then derives adaptive renaming with $N(N+1)/2$ names and an obstruction-free consensus protocol via long-lived snapshots. The results illuminate how anonymity shapes task solvability, demonstrate that a minimal register bound suffices for several fundamental problems, and open questions about atomic snapshots and broader group-solvable tasks in fully-anonymous systems.
Abstract
In the fully-anonymous (shared-memory) model, inspired by a biological setting, processors have no identifiers and memory locations are anonymous. This means that there is no pre-existing agreement among processors on any naming of the memory locations. In this work, we ask fundamental questions about the fully-anonymous model in the hope to obtain a better understanding of the role of naming and anonymity in distributed computing. First, we ask what it means to solve a task under processor anonymity. With tasks such as renaming, the traditional notion obviously does not apply. Instead of restricting ourselves to colorless tasks, we propose using the notion of group solvability, which allows transferring any task to processor-anonymous models. Second, the difficulty with anonymity is that processors can hardly avoid covering and then overwriting each other's writes, erasing information written by their predecessors. To get to the bottom of this phenomenon, we ask what system configurations are stable when processors keep reading and writing ad infinitum. Resolving this question leads us to a wait-free solution to the snapshot task, which then allows us to solve renaming and obstruction-free consensus.
