Safe Privatization in Transactional Memory

被引:7
|
作者
Khyzha, Artem [1 ]
Attiya, Hagit [2 ]
Gotsman, Alexey [3 ]
Rinetzky, Noam [4 ]
机构
[1] Univ Politecn Madrid, IMDEA Software Inst, Madrid, Spain
[2] Technion, Haifa, Israel
[3] IMDEA Software Inst, Madrid, Spain
[4] Tel Aviv Univ, Tel Aviv, Israel
关键词
Software transactional memory; privatization; strong atomicity; observational refinement;
D O I
10.1145/3200691.3178505
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Transactional memory (TM) facilitates the development of concurrent applications by letting the programmer designate certain code blocks as atomic. Programmers using a TM often would like to access the same data both inside and outside transactions, e.g., to improve performance or to support legacy code. In this case, programmers would ideally like the TM to guarantee strong atomicity, where transactions can be viewed as executing atomically also with respect to non-transactional accesses. Since guaranteeing strong atomicity for arbitrary programs is prohibitively expensive, researchers have suggested guaranteeing it only for certain data-race free (DRF) programs, particularly those that follow the privatization idiom: from some point on, threads agree that a given object can be accessed non-transactionally. Supporting privatization safely in a TM is nontrivial, because this often requires correctly inserting transactional fences, which wait until all active transactions complete. Unfortunately, there is currently no consensus on a single definition of transactional DRF, in particular, because no existing notion of DRF takes into account transactional fences. In this paper we propose such a notion and prove that, if a TM satisfies a certain condition generalizing opacity and a program using it is DRF assuming strong atomicity, then the program indeed has strongly atomic semantics. We show that our DRF notion allows the programmer to use privatization idioms. We also propose a method for proving our generalization of opacity and apply it to the TL2 TM.
引用
收藏
页码:233 / 245
页数:13
相关论文
共 50 条
  • [31] Transactional Memory: A Review
    Tabassum
    Meenu, Smt
    2020 6TH INTERNATIONAL CONFERENCE ON ADVANCED COMPUTING AND COMMUNICATION SYSTEMS (ICACCS), 2020, : 370 - 375
  • [32] Hybrid transactional memory
    Damron, Peter
    Fedorova, Alexandra
    Lev, Yossi
    Luchangco, Victor
    Moir, Mark
    Nussbaum, Daniel
    ACM SIGPLAN NOTICES, 2006, 41 (11) : 336 - 346
  • [33] THE THEORY OF TRANSACTIONAL MEMORY
    Fatourou, Panagiota
    Guerraoui, Rachid
    Kapalka, Michal
    BULLETIN OF THE EUROPEAN ASSOCIATION FOR THEORETICAL COMPUTER SCIENCE, 2009, (97): : 83 - 105
  • [34] Persistent Transactional Memory
    Wang, Zhaoguo
    Yi, Han
    Liu, Ran
    Dong, Mingkai
    Chen, Haibo
    IEEE COMPUTER ARCHITECTURE LETTERS, 2015, 14 (01) : 58 - 61
  • [35] Sandboxing Transactional Memory
    Dalessandro, Luke
    Scott, Michael L.
    PROCEEDINGS OF THE 21ST INTERNATIONAL CONFERENCE ON PARALLEL ARCHITECTURES AND COMPILATION TECHNIQUES (PACT'12), 2012, : 171 - 179
  • [36] Perspectives on Transactional Memory
    Abadi, Martin
    Harris, Tim
    CONCUR 2009 - CONCURRENCY THEORY, PROCEEDINGS, 2009, 5710 : 1 - 14
  • [37] Unbounded transactional memory
    Ananian, CS
    Asanovic, K
    Kuszmaul, BC
    Leiserson, CE
    Lie, S
    IEEE MICRO, 2006, 26 (01) : 59 - 69
  • [38] Software transactional memory
    Tel-Aviv Univ, Tel-Aviv, Israel
    Distrib Comput, 2 (99-116):
  • [39] Transactional memory: An overview
    Harris, Tim
    Cristal, Adrian
    Unsal, Osman S.
    Ayguade, Eduard
    Gagliardi, Fabrizio
    Smith, Burton
    Valero, Mateo
    IEEE MICRO, 2007, 27 (03) : 8 - 29
  • [40] Exposing safe correlations in transactional datasets
    Chicha, Elie
    Al Bouna, Bechara
    Wunsche, Kay
    Chbeir, Richard
    SERVICE ORIENTED COMPUTING AND APPLICATIONS, 2021, 15 (04) : 289 - 307