## Abstract

Mutual exclusion is a fundamental distributed coordination problem. Shared-memory mutual exclusion research focuses on local-spin algorithms and uses the remote memory references (RMRs) metric. A recent proof [9] established an Ω(log N) lower bound on the number of RMRs incurred by processes as they enter and exit the critical section, matching an upper bound by Yang and Anderson [18]. Both these bounds apply for algorithms that only use read and write operations. The lower bound of [9] only holds for deterministic algorithms, however; the question of whether randomized mutual exclusion algorithms, using reads and writes only, can achieve sub-logarithmic expected RMR complexity remained open. This paper answers this question in the affirmative. We present two strong-adversary [8] randomized local-spin mutual exclusion algorithms. In both algorithms, processes incur O(log N / log log N) expected RMRs per passage in every execution. Our first algorithm has sub-optimal worst-case RMR complexity of O(log N/ log log N) ^{2}). Our second algorithm is a variant of the first that can be combined with a deterministic algorithm, such as [18], to obtain O(log N) worst-case RMR complexity. The combined algorithm thus achieves sub-logarithmic expected RMR complexity while maintaining optimal worst-case RMR complexity. Our upper bounds apply for both the cache coherent (CC) and the distributed shared memory (DSM) models.

Original language | English |
---|---|

Title of host publication | PODC'09 - Proceedings of the 2009 ACM Symposium on Principles of Distributed Computing |

Pages | 26-35 |

Number of pages | 10 |

DOIs | |

State | Published - 9 Nov 2009 |

Event | 2009 ACM Symposium on Principles of Distributed Computing, PODC'09 - Calgary, AB, Canada Duration: 10 Aug 2009 → 12 Aug 2009 |

### Conference

Conference | 2009 ACM Symposium on Principles of Distributed Computing, PODC'09 |
---|---|

Country/Territory | Canada |

City | Calgary, AB |

Period | 10/08/09 → 12/08/09 |

## Keywords

- Mutual exclusion
- Remote memory references (RMRs)