FlexTM

Implementation tradeoffs in the design of flexible transactional memory support. We present FlexTM (flexible transactional memory), a high performance TM framework that allows software to determine when (eagerly, lazily, or in a mixed fashion) and how to manage conflicts, while employing hardware to manage transactional state and to track conflicts. FlexTM coordinates four decoupled hardware mechanisms: read and write signatures, which summarize per-thread access sets; per-thread conflict summary tables (CSTs), which identify the processors with which conflicts have occurred; programmable data isolation, which buffers speculative updates in the local cache and uses an overflow table to handle unbounded updates; and alert-on-update, which notifies a thread immediately when a specified location is written by another processor. The CSTs enable an STM-inspired commit protocol that manages conflicts in a decentralized manner (no global arbitration) and allows parallel commits.

Keywords for this software

Anything in here will be replaced on browsers that support the canvas element


References in zbMATH (referenced in 1 article )

Showing result 1 of 1.
Sorted by year (citations)

  1. Shriraman, Arrvindh; Dwarkadas, Sandhya; Scott, Michael L.: Implementation tradeoffs in the design of flexible transactional memory support (2010)