Amalgamated lock-elision

Yehuda Afek, Alexander Matveev, Oscar R. Moll, Nir Shavit

Research output: Chapter in Book/Report/Conference proceedingConference contributionpeer-review

Abstract

Hardware lock-elision (HLE) introduces concurrency into legacy lock-based code by optimistically executing critical sections in a fast-path as hardware transactions. Its main limitation is that in case of repeated aborts, it reverts to a fallback-path that acquires a serial lock. This fallback-path lacks hardware-software concurrency, because all fast-path hardware transactions abort and wait for the completion of the fallback. Software lock elision has no such limitation, but the overheads incurred are simply too high. We propose amalgamated lock-elision (ALE), a novel lock-elision algorithm that provides hardware-software concurrency and efficiency: the fallback-path executes concurrently with fast-path hardware transactions, while the common-path fast-path reads incur no overheads and proceed without any instrumentation. The key idea in ALE is to use a sequence of fine-grained locks in the fallback-path to detect conflicts with the fast-path, and at the same time reduce the costs of these locks by executing the fallback-path as a series segments, where each segment is a dynamic length short hardware transaction. We implemented ALE into GCC and tested the new system on Intel Haswell 16-way chip that provides hardware transactions. We benchmarked linked-lists, hash-tables and red-black trees, as well as converting KyotoCacheDB to use ALE in GCC, and all show that ALE significantly outperforms HLE.

Original languageEnglish
Title of host publicationDistributed Computing - 29th International Symposium, DISC 2015, Proceedings
EditorsYoram Moses
PublisherSpringer Verlag
Pages309-324
Number of pages16
ISBN (Print)9783662486528
DOIs
StatePublished - 2015
Event29th International Symposium on Distributed Computing, DISC 2015 - Tokyo, Japan
Duration: 7 Oct 20159 Oct 2015

Publication series

NameLecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)
Volume9363
ISSN (Print)0302-9743
ISSN (Electronic)1611-3349

Conference

Conference29th International Symposium on Distributed Computing, DISC 2015
Country/TerritoryJapan
CityTokyo
Period7/10/159/10/15

Keywords

  • Algorithms
  • Hardware lock elision
  • Hardware transactional memory
  • Multicore

Fingerprint

Dive into the research topics of 'Amalgamated lock-elision'. Together they form a unique fingerprint.

Cite this