Abstract:
Golab and Ramaraju recently formalized the Recoverable Mutual Exclusion (RME) problem – a fault-tolerant generalization of Dijkstra’s mutual exclusion problem. Several solutions to the RME problem have been proposed since its introduction, and the hardware required to evaluate their performance became available recently following Intel’s public launch of Optane Data Center Persistent Memory. In this paper, we present the first experimental evaluation of RME algorithms using an Optane-equipped multiprocessor, with a focus on efficient queue locks. Specifically, we compare Golab and Hendler’s recoverable queue lock against Jayanti, Jayanti, and Joshi’s, and show that the former is up to 2x faster. Furthermore, we measure the performance penalty of Optane-based RME locks versus DRAM-based conventional locks by comparing the two recoverable locks against an implementation of Mellor-Crummey and Scott’s queue lock, and observe that the latter is several-fold faster.