A case for Exiting a Transaction in the Context of Hardware Transactional Memory

Isuru Herath, Demian Rosas-Ham, Daniel Goodman, Mikel Luján, Ian D. Watson · Research Explorer (The University of Manchester) · 2012

Despite the rapid growth in the area of Transactional Memory (TM), there is a lack of standardisation of certain features. Thebehaviourofatransactionalabortisonesuchfeature. All hardware TM and most software TM designs treat abort as a way of restarting the current transaction. However an alternative representation for the same functionality has been expressed in some software transactional memories and programming languages proposals. These allow the termination of a transaction without restarting. In this paper wearguethatasimilarfunctionalityisrequiredforhardware TM as well. We call this functionality Exit Transaction, in which a programmer can explicitly ask the underlying TM system to move to the end of the transaction without committing it. We discuss how to extend a hardware TM system to support such a feature and our evaluation with two hardware TM systems shows that by using this functionality a speedup of up to 1.35X can be achieved on the benchmarks tested. This is achieved as a result of lower contention for resources and less false positives.

Read the paper · More papers on PaperTik