The Future(s) of Transactional Memory

被引:4
|
作者
Zeng, Jingna [1 ,2 ]
Barreto, Joao [2 ]
Haridi, Seif [1 ]
Rodrigues, Luis [2 ]
Romano, Paolo [2 ]
机构
[1] KTH Royal Inst Technol, Stockholm, Sweden
[2] Univ Lisbon, INESC ID Inst Super Tecn, P-1699 Lisbon, Portugal
关键词
D O I
10.1109/ICPP.2016.57
中图分类号
TP301 [理论、方法];
学科分类号
081202 ;
摘要
This work investigates how to combine two powerful abstractions to manage concurrent programming: Transactional Memory (TM) and futures. The former hides from programmers the complexity of synchronizing concurrent access to shared data, via the familiar abstraction of atomic transactions. The latter serves to schedule and synchronize the parallel execution of computations whose results are not immediately required. While TM and futures are two widely investigated topics, the problem of how to exploit these two abstractions in synergy is still largely unexplored in the literature. This paper fills this gap by introducing Java Transactional Futures (JTF), a Java-based TM implementation that allows programmers to use futures to coordinate the execution of parallel tasks, while leveraging transactions to synchronize accesses to shared data. JTF provides a simple and intuitive semantic regarding the admissible serialization orders of the futures spawned by transactions, by ensuring that the results produced by a future are always consistent with those that one would obtain by executing the future sequentially. Our experimental results show that the use of futures in a TM allows not only to unlock parallelism within transactions, but also to reduce the cost of conflicts among top-level transactions in high contention workloads.
引用
收藏
页码:442 / 451
页数:10
相关论文
共 50 条
  • [1] Brief Announcement: Giving Future(s) to Transactional Memory
    Zeng, Jingna
    Haridi, Seif
    Issa, Shady
    Romano, Paolo
    Rodrigues, Luis
    PROCEEDINGS OF THE 32ND ACM SYMPOSIUM ON PARALLELISM IN ALGORITHMS AND ARCHITECTURES (SPAA '20), 2020, : 587 - 589
  • [2] Invyswell: A Hybrid Transactional Memory for Haswell's Restricted Transactional Memory
    Calciu, Irina
    Gottschlich, Justin
    Shpeisman, Tatiana
    Pokam, Gilles
    Herlihy, Maurice
    PROCEEDINGS OF THE 23RD INTERNATIONAL CONFERENCE ON PARALLEL ARCHITECTURES AND COMPILATION TECHNIQUES (PACT'14), 2014, : 187 - 199
  • [3] Transactional memory
    Grahn, Hakan
    JOURNAL OF PARALLEL AND DISTRIBUTED COMPUTING, 2010, 70 (10) : 993 - 1008
  • [4] Transactional memory
    Larus, James
    Kozyrakis, Christos
    COMMUNICATIONS OF THE ACM, 2008, 51 (07) : 80 - 88
  • [5] On Transactional Scheduling in Distributed Transactional Memory Systems
    Kim, Junwhan
    Ravindran, Binoy
    STABILIZATION, SAFETY, AND SECURITY OF DISTRIBUTED SYSTEMS, 2010, 6366 : 347 - 361
  • [6] Liveness in transactional memory
    EPFL, IC, LPD, Lausanne, Switzerland
    Lect. Notes Comput. Sci., (32-49):
  • [7] Transactional memory today
    Computer Science Department, University of Rochester, NY, United States
    Bull. Eur. Assoc. Theor. Comput. Sci., 116
  • [8] Software transactional memory
    Shavit, N
    Touitou, D
    DISTRIBUTED COMPUTING, 1997, 10 (02) : 99 - 116
  • [9] Visualizing Transactional Memory
    Gottschlich, Justin E.
    Herlihy, Maurice P.
    Pokam, Gilles A.
    Siek, Jeremy G.
    PROCEEDINGS OF THE 21ST INTERNATIONAL CONFERENCE ON PARALLEL ARCHITECTURES AND COMPILATION TECHNIQUES (PACT'12), 2012, : 159 - 170
  • [10] Transactional memory system
    Peng, Lin
    Xie, Lunguo
    Zhang, Xiaoqiang
    Jisuanji Yanjiu yu Fazhan/Computer Research and Development, 2009, 46 (08): : 1386 - 1398