This paper presents an economical, randomized, wait-free construction of an n-process test-and-set bit from read write registers. The test-and-set shared object has two atomic operations, test&set, which atomically reads the bit and sets its value to 1, and the reset operation that resets the bit to 0.
We identify two new complexity measures by which to evaluate waitfree algorithms: (a) The amount of randomness used, and (b) ‘Parallel-Time’-the maximum sequential depth of an execution (i.e. longest chain of operations that must precede each other).
The previously best known algorithm for n-process test-and-set [Her91] takes an expected Ω(n2) parallel time, and Ω(n4) sequential time per operation, and Ω(n2log n) space per processor. In contrast, our direct implementation improves this on all counts by using O(log n) coin flips, O(log n) parallel time, O(n) sequential time, per operation, and O(n) space per processor. Thus the question on the difference in the expected complexity of randomized constructions of concurrent objects from read/write registers is raised.
KeywordsMutual Exclusion Consensus Problem Round Number Parallel Time Concurrent Object
Unable to display preview. Download preview PDF.
- [Abr88]K. Abrahamson. On achieving consensus using a shared memory. In Proc. of the 7th ACM Symp. on Principles of Distributed Computing, pages 291–302, 1988.Google Scholar
- [ADS89]Hagit Attiya, Danny Dolev, and Nir Shavit. Bounded polynomial randomized consensus. Extended Abstract, January 1989.Google Scholar
- [AH90]J. Aspnes and M. Herlihy. Fast randomized consensus using shared memory. Journal of Algorithms, pages 281–294, September 1990.Google Scholar
- [Asp90]J. Aspnes. Time and space efficient randomized consensus. In Proc. of the Ninth ACM Symp. on Principles of Distributed Computing, pages 325–331, August 1990.Google Scholar
- [BR91]G. Bracha and O. Rachman. Randomized consensus in expected o(n2logn) operations. In Proceedings of the 4th International Workshop on Distributed Algorithms, October 1991.Google Scholar
- [Her88]M. P. Herlihy. Impossibility and universality results for wait-free synchronization. In Proc. of the Seventh ACM Symp. on Principles of Distributed Computing, pages 291–302, 1988.Google Scholar
- [Her91]M. P. Herlihy. Randomized wait-free concurrent objects. In Proc. of the Tenth ACM Symp. on Principles of Distributed Computing, pages 11–22, 1991.Google Scholar
- [IL87]A. Israeli and M. Li. Bounded time stamps. In Proc. of the 28th IEEE Annual Symp. on Foundation of Computer Science, pages 362–371, October 1987.Google Scholar
- [LAA87]M. C. Loui and H. H. Abu-Amara. Memory requirements for agreement among unreliable asynchronous processes. Advances in Computing Research, JAI Press, 4:163–183, 1987.Google Scholar
- [LTV89]M. Li, J. Tromp, and P. M. B. Vitányi. How to construct concurrent wait-free variables. Technical Report CS-8916, CWI, Amsterdam, April 1989. See also: pp. 488–505 in: Proc. International Colloquium on Automata, Languages, and Programming, Lecture Notes in Computer Science, Vol. 372, Springer Verlag, 1989.Google Scholar
- [PF77]G. L. Peterson and M. J. Fischer. Economical solutions for the critical section problem in a distributed system. In Proc. 9th ACM Symp. on Theory of Computing, pages 91–97, 1977.Google Scholar
- [Plo88]S. A. Plotkin. Chapter 4: Sticky Bits and Universality of Consensus. PhD thesis, M.I.T., August 1988.Google Scholar
- [SSW90]M. Saks, N. Shavit, and H. Woll. Optimal time randomized consensusmaking resilient algorithms fast in practice. In Proc. of SODA 90, December 1990.Google Scholar
- [TV90]J. Tromp and P. M. B. Vitányi. Randomized wait-free test-and-set. Manuscript, November 1990.Google Scholar