ABSTRACT
The group mutual exclusion (GME) problem is a generalization of the mutual exclusion problem. The problem is fundamental to parallel and distributed processing, as it is inherent in several applications in the modern multicore-integrated cloud era of the distributed computing world.
This paper proposes a First-Come-First-Served (FCFS) GME algorithm that only uses atomic read/write operations for n threads. The proposed algorithm has three key features: (i) its simplicity; (ii) it has complexity in both space (shared variable requirement) and time (remote memory references (RMR)) in cache coherent (CC) models; and (ii) it settles the open problem posed in 2001.
- [1] U. Abraham, Bakery Algorithms, Proc. of the Concurrency, Specification and Programming Workshop, 7-40, 1993.Google Scholar
- [2] U. Abraham, Logical Classification of Distributed Algorithms (Bakery Algorithm as an Example), Theoretical Computer Science, 412:2724-2745, 2011.Google ScholarDigital Library
- [3] J. H. Anderson, Lamport on mutual exclusion: 27 years of planting seeds, Proceedings of the 20th annual ACM symposium on Principles of distributed computing, 3-12, 2001.Google ScholarDigital Library
- [4] A. Aravind, Highly-Fair Bakery Algorithm using Symmetric Tokens, Information Processing Letters, 110:1055-1060, 2010.Google ScholarDigital Library
- [5] A. Aravind and W. H. Hesselink, Group Mutual Exclusion by Fetch-and-Increment, ACM Transactions on Parallel Computing, 5(4):14:1-30, 2019.Google ScholarDigital Library
- [6] V. Bhatt and C-C. Huang: Group Mutual Exclusion in O(log n) RMR, Proceedings of the ACM Symposium on Principles of Distributed Computing (PODC), 45-54, 2010.Google ScholarDigital Library
- [7] H.-J. Boehm and S. V. Adve, You Don’t Know Jack About Shared Variables or Memory Models, Communications of the ACM, 55(2):48-54, 2012.Google ScholarDigital Library
- [8] Guy E. Blelloch, Perry Cheng, and Phillip B. Gibbons, Scalable Room Synchronizations, Theory of Computing Systems, 36(5):397-430, 2003.Google ScholarDigital Library
- [9] P.J. Courtois, F. Heymans, and D. L. Parnas, Concurrent Control with “Readers” and “Writers”, Communications of the ACM, 14(10):667-668, 1971.Google ScholarDigital Library
- [10] R. Danek and V. Hadzilacos, Local-spin Group Mutual Exclusion Algorithms, Proceedings of the 18th International Symposium on Distributed Computing (DISC), LNCS, 3274:71-85, 2004.Google ScholarCross Ref
- [11] R. Danek, The k-bakery: local-spin k-exclusion using non-atomic reads and writes, Proceedings of the 29th annual ACM symposium on Principles of distributed computing, 36-44, 2010.Google Scholar
- [12] E. W. Dijkstra, Solution of a Problem in Concurrent Programming Control, Communications of the ACM, 8(9):569, 1965.Google ScholarDigital Library
- [13] M. J. Fisher, N. A. Lynch, J. E. Burns, and A. Borodin, Distributed FIFO Allocation of Identical Resources Using Small Shared Space, ACM TOPLAS, 11(1):90-114, 1989.Google ScholarDigital Library
- [14] V. Hadzilacos, A note on group mutual exclusion, Proceedings of the 20th Annual ACM Symposium on Principles of Distributed Computing (PODC), 100-106, 2001.Google ScholarDigital Library
- [15] Y. He, K. Gopalakrishnan, and Eli Gafni, Group Mutual Exclusion in Linear Time and Space, Proceedings of the 17th International Conference on Distributed Computing and Networking (ICDCN), ACM Digital Library, 2016.Google Scholar
- [16] Y. He, K. Gopalakrishnan, and Eli Gafni, Group Mutual Exclusion in Linear Time and Space, Theoretical Computer Science, 709:31-47, 2018.Google ScholarCross Ref
- [17] M. Herlihy and V. Luchangco, Distributed Computing and the Multicore Revolution, ACM SIGACT News, 39(1):62-72, 2008.Google ScholarDigital Library
- [18] W. H. Hesselink. Mechanical verification of Lamport’s Bakery algorithm. Science of Computer Programming 78:1622–1638, 2013.Google ScholarCross Ref
- [19] P. Jayanti, K. Tan, G. Friedland, and A. Katz, Bounding Lamport’s Bakery Algorithm, Proceedings of the SOFSEM, LNCS, 2234:261-270, 2001.Google Scholar
- [20] P. Jayanti, S. Petkovic, and K. Tan, Fair Group Mutual Exclusion, Proceedings of the 22nd Annual ACM Symposium on Principles of Distributed Computing (PODC), 278-284, 2003.Google ScholarDigital Library
- [21] Y. Joung, Asynchronous Group Mutual Exclusion, Proceedings of the 17th Annual ACM Symposium on Principles of Distributed Computing (PODC), 51-60, 1998.Google Scholar
- [22] P. Keane and M. Moir, A Simple Local-Spin Group Mutual Exclusion Algorithm, Proc. of the ACM Symposium on PODC, 23-32, 1999.Google ScholarDigital Library
- [23] L. Lamport, A New Solution of Dijkstra’s Concurrent Programming Problem, Communications of the ACM, 17(8):453-455, 1974.Google ScholarDigital Library
- [24] 2013 ACM Turing Award citation, http://amturing.acm.org/ award_winners/lamport_1205376.cfmGoogle Scholar
- [25] L. Lamport, The Computer Science of Concurrency: The Early Years, Communications of the ACM, 58(6):71-76, 2015.Google ScholarDigital Library
- [26] E. Lycklama and V. Hadzilacos, First-come-first-served Mutual Exclusion Algorithm with Small Communication Variables, ACM Transactions on Programming Languages and Systems, 13(4):558-576, 1991.Google ScholarDigital Library
- [27] Y. Moses and K. Patkin, Under the Hood of the Bakery Algorithm: Mutual Exclusion as a Matter of Priority, LNCS, 9439:399-413, 2015.Google Scholar
- [28] NSF/IEEE-TCPP Curriculum Initiative on Parallel and Distributed Computing - Core Topics for Undergraduates, 2012.Google Scholar
- [29] K. Platz, N. Mittal, and S. Venkatesan, Concurrent Unrolled Skiplist, Proc. of the 39th IEEE International Conference on Distributed Computing Systems (ICDCS), 1579-1589, 2019.Google ScholarCross Ref
- [30] M. Takamura and Y. Igarashi, Simple Mutual Exclusion Algorithms Based on Bounded Tickets on the Asynchronous Shared Memory Model, Proc. of the COCOON, LNCS, 2387, 259-268, 2002.Google Scholar
- [31] M. Takamura and Y. Igarashi, Group Mutual Exclusion Algorithms based on Ticket Orders, Proceedings of of the 9th Annual International Computing and Combinatorics Conference (COCOON), LNCS, 2697:232-241, 2003.Google ScholarCross Ref
- [32] G. Taubenfeld, The Black-White Bakery Algorithm and Related Bounded-Space, Adaptive, Local-Spinning and FIFO Algorithms, Proc. of the DISC, LNCS, 3274:56-70, 2004.Google Scholar
- [33] S. Vijayaraghavan, A Variant of the Bakery Algorithm with Bounded Values as a Solution to Abraham’s Concurrent Programming Problem, Proc. of Design, Analysis and Simulation of Distributed Systems, 2003.Google Scholar
- [34] T-K. Woo, A Note on Lamport’s Mutual Exclusion Algorithm, SIGOPS Operating Systems Review, 24(4):78-81, 1990.Google ScholarDigital Library
Recommendations
Group Mutual Exclusion by Fetch-and-increment
The group mutual exclusion (GME) problem (also called the room synchronization problem) arises in various practical applications that require concurrent data sharing. Group mutual exclusion aims to achieve exclusive access to a shared resource (a shared ...
Space-efficient FCFS group mutual exclusion
In the group mutual exclusion problem [Y. Joung, Asynchronous group mutual exclusion, Distrib. Comput. 13 (2000) 189], which generalizes mutual exclusion [E. Dijkstra, Solution of a problem in concurrent programming control, Comm. ACM 8 (9) (1965) 569], ...
Asynchronous group mutual exclusion
Mutual exclusion and concurrency are two fundamental and essentially opposite features in distributed systems. However, in some applications such as Computer Supported Cooperative Work (CSCW) we have found it necessary to impose mutual exclusion on ...
Comments