Toward High Performance Nonblocking Software Transactional Memory

被引:14
|
作者
Marathe, Virendra J. [1 ]
Moir, Mark [1 ]
机构
[1] Univ Rochester, Rochester, NY 14627 USA
来源
PPOPP'08: PROCEEDINGS OF THE 2008 ACM SIGPLAN SYMPOSIUM ON PRINCIPLES AND PRACTICE OF PARALLEL PROGRAMMING | 2008年
关键词
software transactional memory; nonblocking;
D O I
10.1145/1345206.1345240
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Substantial advances in STM performance in recent years have mostly focused on blocking systems. We describe our work integrating the most important techniques and optimizations emerging from the recent work on blocking STMs into several variants of a nonblocking STM. In particular, our design is based on the philosophy of keeping the common, contention free execution path as simple (consequently fast) as possible, while resorting to the more expensive data displacement and metadata management only in situations where transactions have problems making forward progress. We employ novel ownership "stealing" and metadata management techniques in our nonblocking STM to enable several recent blocking STM optimizations such as timestamp-based validation and ownership release via store instructions, all leading to a more streamlined and efficient fast path. We present an undo log (eager versioning) variant of our STM, as well as two redo log (lazy versioning) variants, the latter of which are based on the two ownership acquisition techniques (namely eager and lazy) for writes made by transactions. Experimental results show that our efforts have improved the performance of nonblocking STMs up to the level of being competitive with the state-of-the-art blocking STMs such as TL2.
引用
收藏
页码:227 / 236
页数:10
相关论文
共 50 条
  • [1] Efficient Nonblocking Software Transactional Memory
    Marathe, Virendra J.
    Moir, Mark
    PROCEEDINGS OF THE 2007 ACM SIGPLAN SYMPOSIUM ON PRINCIPLES AND PRACTICE OF PARALLEL PROGRAMMING PPOPP'07, 2007, : 136 - 137
  • [2] Nonblocking Persistent Software Transactional Memory
    Beadle, H. Alan
    Cai, Wentao
    Wen, Haosen
    Scott, Michael L.
    PROCEEDINGS OF THE 25TH ACM SIGPLAN SYMPOSIUM ON PRINCIPLES AND PRACTICE OF PARALLEL PROGRAMMING (PPOPP '20), 2020, : 429 - 430
  • [3] Nonblocking Persistent Software Transactional Memory
    Beadle, H. Alan
    Cai, Wentao
    Wen, Haosen
    Scott, Michael L.
    2020 IEEE 27TH INTERNATIONAL CONFERENCE ON HIGH PERFORMANCE COMPUTING, DATA, AND ANALYTICS (HIPC 2020), 2020, : 283 - 293
  • [4] HyFlow: A High Performance Distributed Software Transactional Memory Framework
    Saad, Mohamed M.
    Ravindran, Binoy
    HPDC 11: PROCEEDINGS OF THE 20TH INTERNATIONAL SYMPOSIUM ON HIGH PERFORMANCE DISTRIBUTED COMPUTING, 2011, : 265 - 266
  • [5] Performance Evaluation of Adaptivity in Software Transactional Memory
    Payer, Mathias
    Gross, Thomas R.
    IEEE INTERNATIONAL SYMPOSIUM ON PERFORMANCE ANALYSIS OF SYSTEMS AND SOFTWARE (ISPASS 2011), 2011, : 165 - 174
  • [6] Toward a software transactional memory for heterogeneous CPU–GPU processors
    Alejandro Villegas
    Angeles Navarro
    Rafael Asenjo
    Oscar Plata
    The Journal of Supercomputing, 2019, 75 : 4177 - 4192
  • [7] NZTM: Nonblocking Zero-indirection Transactional Memory
    Tabba, Fuad
    Moir, Mark
    Goodman, James R.
    Hay, Andrew W.
    Wang, Cong
    SPAA'09: PROCEEDINGS OF THE TWENTY-FIRST ANNUAL SYMPOSIUM ON PARALLELISM IN ALGORITHMS AND ARCHITECTURES, 2009, : 204 - 213
  • [8] Software transactional memory
    Shavit, N
    Touitou, D
    DISTRIBUTED COMPUTING, 1997, 10 (02) : 99 - 116
  • [9] Software transactional memory
    Nir Shavit
    Dan Touitou
    Distributed Computing, 1997, 10 : 99 - 116
  • [10] Software transactional memory
    Tel-Aviv Univ, Tel-Aviv, Israel
    Distrib Comput, 2 (99-116):