,
Neeraj Mittal
Creative Commons Attribution 3.0 Unported license
The group mutual exclusion (GME) problem is a generalization of the classical mutual exclusion problem in which every critical section is associated with a type or session. Critical sections belonging to the same session can execute concurrently, whereas critical sections belonging to different sessions must be executed serially. The well-known read-write mutual exclusion problem is a special case of the group mutual exclusion problem. In a shared memory system, locks based on traditional mutual exclusion or its variants are commonly used to manage contention among processes. In concurrent algorithms based on fine-grained synchronization, a single lock is used to protect access to a small number of shared objects (e.g., a lock for every tree node) so as to minimize contention window. Evidently, a large number of shared objects in the system would translate into a large number of locks. Also, when fine-grained synchronization is used, most lock accesses are expected to be uncontended in practice. Most existing algorithms for the solving the GME problem have high space-complexity per lock. Further, all algorithms except for one have high step-complexity in the uncontented case. This makes them unsuitable for use in concurrent algorithms based on fine-grained synchronization. In this work, we present a novel GME algorithm for an asynchronous shared-memory system that has O(1) space-complexity per GME lock when the system contains a large number of GME locks as well as O(1) step-complexity when the system contains no conflicting requests.
@InProceedings{gokhale_et_al:LIPIcs.DISC.2018.49,
author = {Gokhale, Shreyas and Mittal, Neeraj},
title = {{Brief Announcement: Fast and Scalable Group Mutual Exclusion}},
booktitle = {32nd International Symposium on Distributed Computing (DISC 2018)},
pages = {49:1--49:3},
series = {Leibniz International Proceedings in Informatics (LIPIcs)},
ISBN = {978-3-95977-092-7},
ISSN = {1868-8969},
year = {2018},
volume = {121},
editor = {Schmid, Ulrich and Widder, Josef},
publisher = {Schloss Dagstuhl -- Leibniz-Zentrum f{\"u}r Informatik},
address = {Dagstuhl, Germany},
URL = {https://drops.dagstuhl.de/entities/document/10.4230/LIPIcs.DISC.2018.49},
URN = {urn:nbn:de:0030-drops-98381},
doi = {10.4230/LIPIcs.DISC.2018.49},
annote = {Keywords: Group Mutual Exclusion, Fine-Grained Synchronization, Space Complexity, Contention-Free Step Complexity}
}