Abstract
We present an adaptive algorithm for N-process mutual exclusion under read/write atomicity in which all busy waiting is by local spinning. In our algorithm, each process p performs O(k) remote memory references to enter and exit its critical section, where k is the maximum “point contention” experienced by p. The space complexity of our algorithm is Θ(N), which is clearly optimal. Our algorithm is the first mutual exclusion algorithm under read/write atomicity that is adaptive when time complexity is measured by counting remote memory references.
Similar content being viewed by others
References
Afek, Y., Attiya, H., Fouren, A., Stupp, G., Touitou, D.: Long-lived renaming made adaptive. In: Proceedings of the 18th Annual ACM Symposium on Principles of Distributed Computing, pp. 91–103. ACM (1999)
Afek, Y., Stupp, G., Touitou, D.: Long-lived adaptive collect with applications. In: Proceedings of the 40th Annual Symposium on Foundations of Computer Science. pp. 262–272. IEEE (1999)
Afek Y., Stupp G., Touitou D. (2002). Long-lived adaptive splitter and applications. Distrib. Comput. 15(2):67–86
Alur, R., Taubenfeld, G.: Results about fast mutual exclusion. In: Proceedings of the 13th IEEE Real-time Systems Symposium. pp. 12–21. IEEE (1992)
Anderson J. (1993). A fine-grained solution to the mutual exclusion problem. Acta Inform. 30(3):249–265
Anderson, J., Kim, Y.-J.: Adaptive mutual exclusion with local spinning. In: Proceedings of the 14th International Symposium on Distributed Computing, pp. 29–43. Lecture Notes in Computer Science vol. 1914. Springer, Berlin Heidelberg New York (2000)
Anderson J., Kim Y.-J. (2001). A new fast-path mechanism for mutual exclusion. Distrib. Comput. 14(1):17–29
Anderson J., Kim Y.-J. (2003). An improved lower bound for the time complexity of mutual exclusion. Distrib. Comput. 15(4):221–253
Anderson, J., Moir, M.: Universal constructions for multi-object operations. In: Proceedings of the 14th Annual ACM Symposium on Principles of Distributed Computing, pp. 184–193. ACM (1995)
Anderson T. (1990). The performance of spin lock alternatives for shared-memory multiprocessors. IEEE Trans. Parallel Distrib. Syst. 1(1):6–16
Attiya, H., Bortnikov, V.: Adaptive and efficient mutual exclusion. In: Proceedings of the 19th Annual ACM Symposium on Principles of Distributed Computing, pp. 91–100. ACM (2000)
Attiya, H., Fouren, A.: Adaptive wait-free algorithms for lattice agreement and renaming. In: Proceedings of the 17th Annual ACM Symposium on Principles of Distributed Computing, pp. 277–286. ACM (1998)
Choy M., Singh A. (1994). Adaptive solutions to the mutual exclusion problem. Distrib. Comput. 8(1):1–17
Dijkstra E. (1965). Solution of a problem in concurrent programming control. Commun ACM 8(9):569
Graunke G., Thakkar S. (1990). Synchronization algorithms for shared-memory multiprocessors. IEEE Comput. 23:60–69
Kim, Y.-J., Anderson, J.: A time complexity bound for adaptive mutual exclusion. In: Proceedings of the 15th International Symposium on Distributed Computing, pp. 1–15. Lecture Notes in Computer Science, vol. 2180, Springer, Berlin Heidelberg New York (2001)
Kim Y.-J., Anderson J. (2002). A space- and time-efficient local-spin spin lock. Inf. Process. Lett. 84(1):47–55
Lamport L. (1974). A new solution of Dijkstra’s concurrent programming problem. Commun. ACM 17(8):453–455
Lamport L. (1987). A fast mutual exclusion algorithm. ACM Trans. Comput. Syst. 5(1):1–11
Mellor-Crummey J., Scott M. (1991). Algorithms for scalable synchronization on shared-memory multiprocessors. ACM Trans. Comput. Syst. 9(1):21–65
Merritt M., Taubenfeld G. (1993). Speeding Lamport’s fast mutual exclusion algorithm. Inf. Process. Lett. 45:137–142
Merritt, M., Taubenfeld, G.: Computing with infinitely many processes. In: Proceedings of the 14th International Symposium on Distributed Computing, pp. 164–178. Lecture Notes in Computer Science vol. 1914. Springer, Berlin Heidelberg New York (2000)
Moir M., Anderson J. (1995). Wait-free algorithms for fast, long-lived renaming. Sci. Comput. Program. 25(1):1–39
Styer,, E.: Improving fast mutual exclusion. In: Proceedings of the 11th Annual ACM Symposium on Principles of Distributed Computing, pp. 159–168. ACM (1992)
Yang J.-H., Anderson J. (1995). A fast, scalable mutual exclusion algorithm. Distrib. Comput. 9(1):51–60
Author information
Authors and Affiliations
Corresponding author
Rights and permissions
About this article
Cite this article
Kim, YJ., Anderson, J.H. Adaptive mutual exclusion with local spinning. Distrib. Comput. 19, 197–236 (2007). https://doi.org/10.1007/s00446-006-0009-6
Received:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s00446-006-0009-6