Abstract
Most people believe that renaming is easy: simply choose a name at random; if more than one process selects the same name, then try again. We highlight the issues that occur when trying to implement such a scheme and shed new light on the read-write complexity of randomized renaming in an asynchronous environment. At the heart of our new perspective stands an adaptive implementation of a randomized test-and-set object, that has poly-logarithmic step complexity per operation, with high probability. Interestingly, our implementation is anonymous, as it does not require process identifiers. Based on this implementation, we present two new randomized renaming algorithms. The first ensures a tight namespace of n names using O( n log4 n) total steps, with high probability. This significantly improves on the complexity of the best previously known namespace-optimal algorithms. The second algorithm achieves a namespace of size k (1 + ε) using O( k log4 k / log2 (1 + ε) ) total steps, both with high probability, where k is the total contention in the execution. It is the first adaptive randomized renaming algorithm, and it improves on existing deterministic solutions by providing a smaller namespace, and by lowering step complexity.
The work of Dan Alistarh is supported by the Swiss NCCR MICS project. The work of Hagit Attiya is supported in part by the Israel Science Foundation (grant number 953/06).
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
Anderson, J.H., Moir, M.: Using local-spin k-exclusion algorithms to improve wait-free object implementations. Distrib. Comput. 11(1), 1–20 (1997)
Moir, M., Anderson, J.H.: Fast, long-lived renaming (extended abstract). In: Tel, G., Vitányi, P.M.B. (eds.) WDAG 1994. LNCS, vol. 857, pp. 141–155. Springer, Heidelberg (1994)
Moir, M., Garay, J.A.: Fast, long-lived renaming improved and simplified. In: Babaoğlu, Ö., Marzullo, K. (eds.) WDAG 1996. LNCS, vol. 1151, pp. 287–303. Springer, Heidelberg (1996)
Herlihy, M., Shavit, N.: The topological structure of asynchronous computability. J. ACM 46(2), 858–923 (1999)
Castañeda, A., Rajsbaum, S.: New combinatorial topology upper and lower bounds for renaming. In: PODC ’08: Proceedings of the Twenty-Seventh ACM Symposium on Principles of Distributed Computing, pp. 295–304. ACM, New York (2008)
Attiya, H., Bar-Noy, A., Dolev, D., Peleg, D., Reischuk, R.: Renaming in an asynchronous environment. Journal of the ACM 37(3), 524–548 (1990)
Afek, Y., Merritt, M.: Fast, wait-free (2k-1)-renaming. In: PODC ’99: Proceedings of the Eighteenth Annual ACM Symposium on Principles of Distributed Computing, pp. 105–112. ACM, New York (1999)
Fischer, M.J., Lynch, N.A., Paterson, M.S.: Impossibility of distributed consensus with one faulty process. J. ACM 32, 374–382 (1985)
Attiya, H., Censor, K.: Tight bounds for asynchronous randomized consensus. J. ACM 55(5), 1–26 (2008)
Attiya, H., Kuhn, F., Plaxton, C.G., Wattenhofer, M., Wattenhofer, R.: Efficient adaptive collect using randomization. Distrib. Comput. 18(3), 179–188 (2006)
Afek, Y., Gafni, E., Tromp, J., Vitányi, P.M.B.: Wait-free test-and-set (extended abstract). In: Segall, A., Zaks, S. (eds.) WDAG 1992. LNCS, vol. 647, pp. 85–94. Springer, Heidelberg (1992)
Eberly, W., Higham, L., Warpechowska-Gruca, J.: Long-lived, fast, waitfree renaming with optimal name space and high throughput. In: Kutten, S. (ed.) DISC 1998. LNCS, vol. 1499, pp. 149–160. Springer, Heidelberg (1998)
Chlebus, B.S., Kowalski, D.R.: Asynchronous exclusive selection. In: PODC ’08: Proceedings of the Twenty-Seventh ACM Symposium on Principles of Distributed Computing, pp. 375–384. ACM, New York (2008)
Alistarh, D., Attiya, H., Giurgiu, A., Gilbert, S., Guerraoui, R.: Fast randomized test-and-set and renaming, https://infoscience.epfl.ch/record/149943
Anderson, J.H., Kim, Y.-J.: Adaptive mutual exclusion with local spinning. In: Herlihy, M.P. (ed.) DISC 2000. LNCS, vol. 1914, pp. 29–43. Springer, Heidelberg (2000)
Tromp, J., Vitányi, P.: Randomized two-process wait-free test-and-set. Distrib. Comput. 15(3), 127–135 (2002)
Burns, J.E., Peterson, G.L.: The ambiguity of choosing. In: PODC ’89: Proceedings of the Eighth Annual ACM Symposium on Principles of Distributed Computing, pp. 145–157. ACM, New York (1989)
Borowsky, E., Gafni, E.: Immediate atomic snapshots and fast renaming. In: PODC ’93: Proceedings of the Twelfth Annual ACM Symposium on Principles of Distributed Computing, pp. 41–51. ACM, New York (1993)
Attiya, H., Fouren, A.: Adaptive and efficient algorithms for lattice agreement and renaming. SIAM J. Comput. 31(2), 642–664 (2001)
Brodsky, A., Ellen, F., Woelfel, P.: Fully-adaptive algorithms for long-lived renaming. In: Dolev, S. (ed.) DISC 2006. LNCS, vol. 4167, pp. 413–427. Springer, Heidelberg (2006)
Panconesi, A., Papatriantafilou, M., Tsigas, P., Vitányi, P.M.B.: Randomized naming using wait-free shared variables. Distributed Computing 11(3), 113–124 (1998)
Herlihy, M.: Wait-free synchronization. ACM Trans. Programming Languages and Systems 13, 123–149 (1991)
Herlihy, M., Wing, J.M.: Linearizability: A correctness condition for concurrent objects. ACM Trans. Program. Lang. Syst. 12(3), 463–492 (1990)
Aspnes, J., Waarts, O.: Randomized consensus in expected o(n log 2 n) operations per processor. SIAM J. Comput. 25(5), 1024–1044 (1996)
Mitzenmacher, M., Upfal, E.: Probability and Computing: Randomized Algorithms and Probabilistic Analysis. Cambridge University Press, New York (2005)
Motwani, R., Raghavan, P.: Randomized algorithms. Cambridge University Press, New York (1995)
Georgiou, C., Russell, A., Shvartsman, A.A.: The complexity of synchronous iterative do-all with crashes. In: Welch, J.L. (ed.) DISC 2001. LNCS, vol. 2180, pp. 151–165. Springer, Heidelberg (2001)
Kowalski, D.R., Shvartsman, A.A.: Writing-all deterministically and optimally using a non-trivial number of asynchronous processors. In: SPAA ’04: Proceedings of the Sixteenth Annual ACM Symposium on Parallelism in Algorithms and Architectures, pp. 311–320. ACM, New York (2004)
Georgiou, C., Shvartsman, A.A.: Do-All Computing in Distributed Systems: Cooperation in the Presence of Adversity. Springer, Heidelberg (2008)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2010 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Alistarh, D., Attiya, H., Gilbert, S., Giurgiu, A., Guerraoui, R. (2010). Fast Randomized Test-and-Set and Renaming. In: Lynch, N.A., Shvartsman, A.A. (eds) Distributed Computing. DISC 2010. Lecture Notes in Computer Science, vol 6343. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-15763-9_9
Download citation
DOI: https://doi.org/10.1007/978-3-642-15763-9_9
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-15762-2
Online ISBN: 978-3-642-15763-9
eBook Packages: Computer ScienceComputer Science (R0)