
דניאל הנדלר
On the complexity of reader-writer locks
[Extended Abstract]
A reader-writer lock [7] is a widely-used variant of the mu- tual exclusion lock abstraction [10]. It is shared by n readers and m writers, whose accesses of the Critical Section (CS) must satisfy the following requirement: reader processes are allowed to be in the CS simultaneously but each writer pro- cess requires exclusive access. We study the (worst-case) re- mote memory reference (RMR) complexity of reader-writer locks in the cache-coherent (CC) read/write model [2]. The tight logarithmic RMRs lower bound on mutual ex- clusion locks [6, 11] implies an (logm) lower bound on the RMR complexity of writers. But how does the RMR com- plexity of reader-writer locks depend on n, the number of readers? This is the question that we address in this work. We establish an ω (log n) RMR complexity lower bound that holds even for single-writer reader-writer locks. It is de- rived from the following complexity tradeoff that we prove: if the number of RMRs incurred by the entry section of the writer is O(f(n)), then the RMR complexity of the reader's exit section is ω (log n/f(n)). The tradeoff holds even if pro- cesses may use the compare-and-swap (CAS) operation in addition to reads and writes. We present a family of reader- writer lock algorithms that establishes that the tradeoff is asymptotically tight for any function f(n).
| שפת פרסום | אנגלית |
| דפים | 315-324 |
| סטטוס פרסום | פורסם - 25.07.2016 |