Parameterized algorithm for replicated objects with local reads

by   Changyu Bi, et al.

We consider the problem of implementing linearizable objects that support both read and read-modify-write (RMW) operations in message-passing systems with process crashes. Since in many systems read operations vastly outnumber RMW operations, we are interested in implementations that emphasize the efficiency of read operations. We present a parametrized algorithm for partially synchronous systems where processes have access to external clocks that are synchronized within ϵ. With this algorithm, every read operation is local (intuitively, it does not trigger messages). If a read is not concurrent with a conflicting RMW, it is performed immediately with no waiting; furthermore, even with a concurrent conflicting RMW, a read experiences very little delay in the worst-case. For example, the algorithm's parameters can be set to ensure that every read takes ϵ time in the worst-case. To the best of our knowledge this is the first algorithm to achieve this bound in the partially synchronous systems that we assume here. Our parametrized algorithm generalizes the (non-parameterized) lease-based algorithm of Chandra et al. [6] where the worst-case time for reads is 3δ, where δ is the maximum message delay. The algorithm's parameters can be used to trade-off the worst-case times for read and RMW operations. They can also be used to take advantage of the fact that in many message-passing systems the delay of most messages is order of magnitudes smaller than the maximum message delay δ: for example, the parameters can be set so that, in "nice" periods where message delays are δ^* ≪δ, reads take at most ϵ time while RMWs take at most 3 δ^* time.


page 1

page 2

page 3

page 4


Unleashing and Speeding Up Readers in Atomic Object Implementations

Providing efficient emulations of atomic read/write objects in asynchron...

Lattice Agreement in Message Passing Systems

This paper studies the lattice agreement problem and the generalized lat...

Concurrent Fixed-Size Allocation and Free in Constant Time

Our goal is to efficiently solve the dynamic memory allocation problem i...

Optimal Quasi-Gray Codes: Does the Alphabet Matter?

A quasi-Gray code of dimension n and length ℓ over an alphabet Σ is a se...

Storage-Efficient Shared Memory Emulation

We study the design of storage-efficient algorithms for emulating atomic...

Self-Stabilizing Periodic Mutual-exclusive Propagation in Sparse Networks

Message propagation is fundamental in constructing distributed systems u...

Local Mutual Exclusion for Dynamic, Anonymous, Bounded Memory Message Passing Systems

Mutual exclusion is a classical problem in distributed computing that pr...

Please sign up or login with your details

Forgot password? Click here to reset