Dynamic Optimization for Efficient Strong Atomicity

被引:0
|
作者
Schneider, Florian T. [1 ]
Menon, Vijay [2 ]
Shpeisman, Tatiana [3 ]
Adl-Tabatabai, Ali-Reza [3 ]
机构
[1] ETH, Dept Comp Sci, Zurich, Switzerland
[2] Google, Seattle, WA 98103 USA
[3] Intel Corp, Santa Clara, CA 95054 USA
关键词
Algorithms; Design; Experimentation; Languages; Measurement; Performance;
D O I
暂无
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Transactional memory (TM) is a promising concurrency control alternative to locks. Recent work [30, 1, 25, 26] has highlighted important memory model issues regarding TM semantics and exposed problems in existing TM implementations. For safe, managed languages such as Java, there is a growing consensus towards strong atomicity semantics as a sound, scalable solution. Strong atomicity has presented a challenge to implement efficiently because it requires instrumentation of non-transactional memory accesses, incurring significant overhead even when a program makes minimal or no use of transactions. To minimize overhead, existing solutions require either a sophisticated type system, specialized hardware, or static whole-program analysis. These techniques do not translate easily into a production setting on existing hardware. In this paper, we present novel dynamic optimizations that significantly reduce strong atomicity overheads and make strong atomicity practical for dynamic language environments. We introduce analyses that optimistically track which non-transactional memory accesses can avoid strong atomicity instrumentation, and we describe a lightweight speculation and recovery mechanism that applies these analyses to generate speculatively-optimized but safe code for strong atomicity in a dynamically-loaded environment. We show how to implement these mechanisms efficiently by leveraging existing dynamic optimization infrastructure in a Java system. Measurements on a set of transactional and non-transactional Java workloads demonstrate that our techniques substantially reduce the overhead of strong atomicity from a factor of 5x down to 10% or less over an efficient weak atomicity baseline.
引用
收藏
页码:181 / +
页数:3
相关论文
共 50 条
  • [1] Dynamic Optimization for Efficient Strong Atomicity
    Schneider, Florian T.
    Menon, Vijay
    Shpeisman, Tatiana
    Adl-Tabatabai, Ali-Reza
    ACM SIGPLAN NOTICES, 2008, 43 (10) : 181 - 193
  • [2] Using Data Structure Knowledge for Efficient Lock Generation and Strong Atomicity
    Upadhyaya, Gautam
    Midkiff, Samuel P.
    Pai, Vijay S.
    ACM SIGPLAN NOTICES, 2010, 45 (05) : 281 - 292
  • [3] Using Data Structure Knowledge for Efficient Lock Generation and Strong Atomicity
    Upadhyaya, Gautam
    Midkiff, Samuel P.
    Pai, Vijay S.
    PPOPP 2010: PROCEEDINGS OF THE 2010 ACM SIGPLAN SYMPOSIUM ON PRINCIPLES AND PRACTICE OF PARALLEL PROGRAMMING, 2010, : 281 - 292
  • [4] On the Verification of Strong Atomicity in Programs using STM
    Li, Yong
    Zhang, Yu
    Chen, Yiyun
    Fu, Ming
    2009 THIRD IEEE INTERNATIONAL CONFERENCE ON SECURE SOFTWARE INTEGRATION AND RELIABILITY IMPROVEMENT, PROCEEDINGS, 2009, : 123 - 131
  • [5] BMC via dynamic atomicity analysis
    Jussila, T
    FOURTH INTERNATIONAL CONFERENCE ON APPLICATION OF CONCURRENCY TO SYSTEM DESIGN, PROCEEDINGS, 2004, : 197 - 206
  • [6] Dynamic Atomicity: Optimizing Swift Memory Management
    Ungar, David
    Grove, David
    Franke, Hubertus
    ACM SIGPLAN NOTICES, 2017, 52 (11) : 15 - 26
  • [7] Atomizer: A dynamic atomicity checker for multithreaded programs
    Flanagan, Cormac
    Freund, Stephen N.
    SCIENCE OF COMPUTER PROGRAMMING, 2008, 71 (02) : 89 - 109
  • [8] Atomizer: A dynamic atomicity checker for multithreaded programs
    Flanagan, C
    Freund, SN
    ACM SIGPLAN NOTICES, 2004, 39 (01) : 256 - 267
  • [9] DoubleChecker: Efficient Sound and Precise Atomicity Checking
    Biswas, Swarnendu
    Huang, Jipeng
    Sengupta, Aritra
    Bond, Michael D.
    ACM SIGPLAN NOTICES, 2014, 49 (06) : 28 - 39
  • [10] Strong and Efficient Cipher with Dynamic Symbol Substitution and Dynamic Noise Insertion
    Al-Daraiseh, Ahmad A.
    Al-Muhammed, Muhammed J.
    SYMMETRY-BASEL, 2022, 14 (11):