We study the cost of using message passing to implement linearizable read/write objects for shared-memory multiprocessors under various assumptions on the available timing information. We take as cost measures the worst-case response times for performing read and write operations in distributed implementations of virtual shared memory consisting of such objects, and the sum of these response times. It is assumed that processes have clocks that run at the same rate as real time and are within δ of each other, for some known precision constant δ ⩾ 0. All messages incur a delay in the range [ d− u, d] for some known constants u and d, 0 ⩽ u ⩽ d. For the perfect clocks model, where clocks are perfectly synchronized, i.e., δ = 0, and every message incurs a delay of exactly d, we present a linearizable implementation which achieves worst-case response times for read and write operations of βd and (1 − β) d, respectively; β is a trade-off parameter, 0 ⩽ β ⩽ 1, which may be tuned to account for the relative frequencies of read and write operations. This implementation is optimal with respect to the sum of the worst-case response times for read and write operations. We next turn to the approximately synchronized clocks model, where clocks are only approximately synchronized, i.e., β > 0, and message delays can vary, i.e., u > 0. Our first major result is the first known linearizable implementation for this model which achieves worst-case response times of less than βd + 3 u + min { δ, u} + ε, and ( l − β) d + 3 u for read and write operations, respectively, under a mild restriction on the trade-off parameter β, 0 ⩽ β < 1− u d ; ε is any arbitrary constant such that 0 ⩽ ε ⩽ min {2 u, d − u}. This implementation employs a novel use of approximately synchronized clocks in order to utilize the lower bound on message delay time and achieve bounds on worst-case response times that depend on the message delay uncertainty u. For a wide range of values of u, these bounds improve upon previously known ones for implementations that supports consistency conditions even weaker than linearizability. Our next major result is a lower bound of d + min {δ, u} 2 on the sum of the worst-case response times for read and write operations, for the approximately synchronized clocks model. This bound applies to linearizable implementations possessing some natural symmetry properties; the bound is shown using the technique of “shifting” executions. Corresponding lower bounds, but with no symmetry assumptions, are shown on the individual worst-case response times for read and write operations. Our bounds for the approximately synchronized clocks model extend naturally to the imperfect clocks model, where clocks may be arbitrarily far from each other, i.e., δ = ∞.
Read full abstract