A Recoverable Mutex Algorithm with Sub-logarithmic RMR on Both CC and DSM

Enregistré dans:
Détails bibliographiques
Publié dans:arXiv.org (May 29, 2019), p. n/a
Auteur principal: Prasad Jayanti
Autres auteurs: Jayanti, Siddhartha, Joshi, Anup
Publié:
Cornell University Library, arXiv.org
Sujets:
Accès en ligne:Citation/Abstract
Full text outside of ProQuest
Tags: Ajouter un tag
Pas de tags, Soyez le premier à ajouter un tag!
Description
Résumé:In light of recent advances in non-volatile main memory technology, Golab and Ramaraju reformulated the traditional mutex problem into the novel {\em Recoverable Mutual Exclusion} (RME) problem. In the best known solution for RME, due to Golab and Hendler from PODC 2017, a process incurs at most \(O(\frac{\log n}{\log \log n})\) remote memory references (RMRs) per passage, where a passage is an interval from when a process enters the Try section to when it subsequently returns to Remainder. Their algorithm, however, guarantees this bound only for cache-coherent (CC) multiprocessors, leaving open the question of whether a similar bound is possible for distributed shared memory (DSM) multiprocessors. We answer this question affirmatively by designing an algorithm that satisfies the same complexity bound as Golab and Hendler's for both CC and DSM multiprocessors. Our algorithm has some additional advantages over Golab and Hendler's: (i) its Exit section is wait-free, (ii) it uses only the Fetch-and-Store instruction, and (iii) on a CC machine our algorithm needs each process to have a cache of only \(O(1)\) words, while their algorithm needs \(O(n)\) words.
ISSN:2331-8422
Source:Engineering Database