Wait-Free Handshaking Using Rainbow Colouring

The construction of shared data objects is a fundamental issue in asynchronous concurrent systems, since these objects provide the means for communication and synchronization between processes. Constructions which guarantee that concurrent access to the shared object by processes is free from waiting are of particular interest, since they help to increase the amount of parallelism and to provide fault-tolerance. The problem of constructing a k-valued wait-free shared register out of binary subregisters of the same type where each write access consists of one subwrite (constructions with one-write) is important, since it lies at the heart of studying lower bounds of the complexities of register constructions and trade-o s between them. The rst such construction was for the safe register case; it uses k binary safe registers and exploits the properties of a rainbow coloring function of a hypercube graph. The best known construction for the regular (atomic) case uses k 2 binary regular (resp. atomic) registers, while if the one-write requirement is lifted, there exists a construction that uses 4(log k + 1) binary registers. Here we show how rainbow coloring can be extended to simulate handshaking between the reader and the writer of the register, thus o ering a wait-free solution for the atomic case with one reader, using only 3k 2 binary registers. The best known lower bound for such a construction is k 1.

[1]  Adarshpal S. Sethi,et al.  Minimal Shared Information for Concurrent Reading and Writing , 1991, WDAG.

[2]  Gary L. Peterson,et al.  Constructing multi-reader atomic values from non-atomic values , 1987, PODC '87.

[3]  Evangelos Kranakis,et al.  Atomic Multireader Register , 1987, WDAG.

[4]  David Lorge Parnas,et al.  Concurrent control with “readers” and “writers” , 1971, CACM.

[5]  Cynthia Dwork,et al.  Simple and efficient bounded concurrent timestamping or bounded concurrent timestamp systems are comprehensible! , 1992, STOC '92.

[6]  Maurice Herlihy,et al.  Wait-free synchronization , 1991, TOPL.

[7]  Richard E. Newman A Protocol for Wait-Free, Atomic, Multi-Reader Shared Variables , 1987, PODC.

[8]  Gary L. Peterson,et al.  Concurrent Reading While Writing , 1983, TOPL.

[9]  Paul G. Spirakis,et al.  Reading Many Variables in One Atomic Operation: Solutions with Linear or Sublinear Complexity , 1994, IEEE Trans. Parallel Distributed Syst..

[10]  Maurice Herlihy,et al.  Linearizability: a correctness condition for concurrent objects , 1990, TOPL.

[11]  Seif Haridi,et al.  Distributed Algorithms , 1992, Lecture Notes in Computer Science.

[12]  Gary L. Peterson,et al.  Concurrent reading while writing II: The multi-writer case , 1987, 28th Annual Symposium on Foundations of Computer Science (sfcs 1987).

[13]  Jennifer L. Welch,et al.  Bounds on the Costs of Register Implementations , 1991, WDAG.

[14]  C. Q. Lee,et al.  The Computer Journal , 1958, Nature.

[15]  Goos Kant,et al.  The File Distribution Problem for Processor Networks , 1990, SWAT.

[16]  Krishnamurthy Vidyasankar Converting Lamport's Regular Register to Atomic Register , 1988, Inf. Process. Lett..

[17]  Maurice Herlihy,et al.  Time-Lapse Snapshots , 1992, SIAM J. Comput..

[18]  John Tromp,et al.  How to construct an atomic variable , 1989 .

[19]  Krishnamurthy Vidyasankar,et al.  An Elegant 1-Writer Multireader Multivalued Atomic Register , 1989, Inf. Process. Lett..

[20]  Bard Bloom,et al.  Constructing two-writer atomic registers , 1987, PODC '87.

[21]  Ambuj K. Singh,et al.  The elusive atomic register revisited , 1987, PODC '87.

[22]  Baruch Awerbuch,et al.  Atomic shared register access by asynchronous hardware , 1986, 27th Annual Symposium on Foundations of Computer Science (sfcs 1986).

[23]  Jennifer L. Welch,et al.  Upper and lower bounds for one-write multivalued regular registers , 1991, Proceedings of the Third IEEE Symposium on Parallel and Distributed Processing.

[24]  Amos Israeli,et al.  Optimal multi-writer multi-reader atomic register , 1992, PODC '92.

[25]  Russel Schaffer,et al.  On the correctness of atomic multi-writer registers , 1988 .