Supporting Transaction Nesting in Hardware Transactional Memory

Yi LIU,Ming-yu WU,Yong-hui WANG,De-pei QIAN
DOI: https://doi.org/10.3969/j.issn.0372-2112.2014.01.021
2014-01-01
Tien Tzu Hsueh Pao/Acta Electronica Sinica
Abstract:Transactional memory is an attractive technology to improve programmability of multi-core processors. However, there still exist challenges for hardware transactional memory including efficient transaction nesting. To support closed nesting efficiently without increasing hardware complexities significantly, this paper proposes a CPR scheme which supports conditional partial rollback on conflict. In stead of rolling back to the outermost transaction as in commonly-used flattening model, the CPR scheme just rolls back to the conflicted transaction itself or one of its outer-level transactions if given condition is satisfied. By adding a series of hardware bits in transactional buffer to record read/write status of each nested transaction, the CPR scheme only maintains a global data set for all of the nested transactions rather than independent data set for each nested transaction as in nested LogTM. Evaluation results show that the CPR scheme achieves similar performance with the nested LogTM, and is better than the flattening model.
What problem does this paper attempt to address?