Optimizing Hybrid Transactional Memory: The Importance of Nonspeculative Operations

Research output: Contribution to conferencesPaperContributedpeer-review

Contributors

Abstract

Transactional memory (TM) is a speculative shared-memory synchronization mechanism used to speed up concurrent programs. Most current TM implementations are software-based (STM) and incur noticeable overheads for each transactional memory access. Hardware TM proposals (HTM) address this issue but typically suffer from other restrictions such as limits on the number of data locations that can be accessed in a transaction.

In this paper, we present several new hybrid TM algorithms that can execute HTM and STM transactions concurrently and can thus provide good performance over a large spectrum of workloads. The algorithms exploit the ability of some HTMs to have both speculative and nonspeculative (nontransactional) memory accesses within a transaction to decrease the transactions' runtime overhead, abort rates, and hardware capacity requirements. We evaluate implementations of these algorithms based on AMD's Advanced Synchronization Facility, an x86 instruction set extension proposal that has been shown to provide a sound basis for HTM.

Details

Original languageEnglish
Pages53-64
Number of pages12
Publication statusPublished - 2011
Peer-reviewedYes

Conference

Title SPAA '11- twenty-third annual symposium on Parallelism in algorithms and architectures, ACM, 2011
Abbreviated title SPAA '11
Conference number
Duration4 June 2011
Degree of recognitionInternational event
Location
CitySan Jose
CountryUnited States of America

External IDs

Scopus 79959664969

Keywords

Research priority areas of TU Dresden

DFG Classification of Subject Areas according to Review Boards

Keywords

  • transactional memory, concurrent programming