Reduced hardware transactions: A new approach to hybrid transactional memory

Alexander Matveev, Nir Shavit

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

29 Scopus citations

Abstract

For many years, the accepted wisdom has been that the key to adoption of best-effort hardware transactions is to guarantee progress by combining them with an all software slow-path, to be taken if the hardware transactions fail repeatedly. However, all known generally applicable hybrid transactional memory solutions suffer from a major drawback: the coordination with the software slow-path introduces an unacceptably high instrumentation overhead into the hardware transactions. This paper overcomes the problem using a new approach which we call reduced hardware (RH) transactions. Instead of an all-software slow path, in RH transactions part of the slow-path is executed using a smaller hardware transaction. The purpose of this hardware component is not to speed up the slow-path (though this is a side effect). Rather, using it we are able to eliminate almost all of the instrumentation from the common hardware fast-path, making it virtually as fast as a pure hardware transaction. Moreover, the "mostly software" slow-path is obstruction-free (no locks), allows execution of long transactions and protected instructions that may typically cause hardware transactions to fail, allows complete concurrency between hardware and software transactions, and uses the shorter hardware transactions only to commit. Finally, we show how to easily default to a mode allowing an all-software slow-slow mode in case the "mostly software" slow-path fails to commit.

Original languageEnglish
Title of host publicationSPAA 2013 - Proceedings of the 25th ACM Symposium on Parallelism in Algorithms and Architectures
Pages11-22
Number of pages12
StatePublished - 2013
Event25th ACM Symposium on Parallelism in Algorithms and Architectures, SPAA 2013 - Montreal, QC, Canada
Duration: 23 Jul 201325 Jul 2013

Publication series

NameAnnual ACM Symposium on Parallelism in Algorithms and Architectures

Conference

Conference25th ACM Symposium on Parallelism in Algorithms and Architectures, SPAA 2013
Country/TerritoryCanada
CityMontreal, QC
Period23/07/1325/07/13

Keywords

  • Hybrid transactional memory
  • Multicore software
  • Obstructionfreedom

Fingerprint

Dive into the research topics of 'Reduced hardware transactions: A new approach to hybrid transactional memory'. Together they form a unique fingerprint.

Cite this