Transactional Predication: High-Performance Concurrent Sets and Maps for STM

被引:0
|
作者
Bronson, Nathan G. [1 ]
Casper, Jared [1 ]
Chafi, Hassan [1 ]
Olukotun, Kunle [1 ]
机构
[1] Stanford Univ, Comp Syst Lab, Stanford, CA 94305 USA
来源
PODC 2010: PROCEEDINGS OF THE 2010 ACM SYMPOSIUM ON PRINCIPLES OF DISTRIBUTED COMPUTING | 2010年
关键词
Transactional predication; software transactional memory; semantic conflict detection; concurrent map; MEMORY;
D O I
10.1145/1835698.1835703
中图分类号
TP3 [计算技术、计算机技术];
学科分类号
0812 ;
摘要
Concurrent collection classes are widely used in multi-threaded programming, but they provide atomicity only for a fixed set of operations. Software transactional memory (STM) provides a convenient and powerful programming model for composing atomic operations, but concurrent collection algorithms that allow their operations to be composed using STM are significantly slower than their non-composable alternatives. We introduce transactional predication, a method for building transactional maps and sets on top of an underlying non-composable concurrent map. We factor the work of most collection operations into two parts: a portion that does not need atomicity or isolation, and a single transactional memory access. The result approximates semantic conflict detection using the STM's structural conflict detection mechanism. The separation also allows extra optimizations when the collection is used outside a transaction. We perform an experimental evaluation that shows that predication has better performance than existing transactional collection algorithms across a range of workloads.
引用
收藏
页码:6 / 15
页数:10
相关论文
共 50 条
  • [1] Armada: Low-Effort Verification of High-Performance Concurrent Programs
    Lorch, Jacob R.
    Chen, Yixuan
    Kapritsos, Manos
    Parno, Bryan
    Qadeer, Shaz
    Sharma, Upamanyu
    Wilcox, James R.
    Zhao, Xueyuan
    PROCEEDINGS OF THE 41ST ACM SIGPLAN CONFERENCE ON PROGRAMMING LANGUAGE DESIGN AND IMPLEMENTATION (PLDI '20), 2020, : 197 - 210
  • [2] Toward High Performance Nonblocking Software Transactional Memory
    Marathe, Virendra J.
    Moir, Mark
    PPOPP'08: PROCEEDINGS OF THE 2008 ACM SIGPLAN SYMPOSIUM ON PRINCIPLES AND PRACTICE OF PARALLEL PROGRAMMING, 2008, : 227 - 236
  • [3] 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
  • [4] Polynesia: Enabling High-Performance and Energy-Efficient Hybrid Transactional/Analytical Databases with Hardware/Software Co-Design
    Boroumand, Amirali
    Ghose, Saugata
    Oliveira, Geraldo F.
    Mutlu, Onur
    2022 IEEE 38TH INTERNATIONAL CONFERENCE ON DATA ENGINEERING (ICDE 2022), 2022, : 2997 - 3011
  • [5] High-Performance Practice Processes
    Roels, Guillaume
    MANAGEMENT SCIENCE, 2020, 66 (04) : 1509 - 1526
  • [6] Purge-Rehab: Eager Software Transactional Memory with High Performance Under Contention
    Siddique, Abubakar
    Ansari, Mohammad
    Lujan, Mikel
    INTERNATIONAL JOURNAL OF PARALLEL PROGRAMMING, 2016, 44 (06) : 1359 - 1383
  • [7] Purge-Rehab: Eager Software Transactional Memory with High Performance Under Contention
    Abubakar Siddique
    Mohammad Ansari
    Mikel Luján
    International Journal of Parallel Programming, 2016, 44 : 1359 - 1383
  • [8] POSTER: High Performance GPU Concurrent B plus tree
    Zhang, Weihua
    Zhao, Chuanlei
    Peng, Lu
    Lin, Yuzhe
    Zhang, Fengzhe
    Jiang, Jinhu
    PPOPP'22: PROCEEDINGS OF THE 27TH ACM SIGPLAN SYMPOSIUM ON PRINCIPLES AND PRACTICE OF PARALLEL PROGRAMMING, 2022, : 443 - 444
  • [9] High-Performance InGaZnO-Based ReRAMs
    Ma, Pengfei
    Liang, Guangda
    Wang, Yiming
    Li, Yunpeng
    Xin, Qian
    Li, Yuxiang
    Song, Aimin
    IEEE TRANSACTIONS ON ELECTRON DEVICES, 2019, 66 (06) : 2600 - 2605
  • [10] ESL: A High-Performance Skiplist with Express Lane
    Na, Yedam
    Koo, Bonmoo
    Park, Taeyoon
    Park, Jonghyeok
    Kim, Wook-Hee
    APPLIED SCIENCES-BASEL, 2023, 13 (17):