Scheduling Support for Transactional Memory Contention Management

被引:8
|
作者
Maldonado, Walther [1 ]
Marlier, Patrick [1 ]
Felber, Pascal [1 ]
Suissa, Adi [2 ]
Hendler, Danny [2 ]
Fedorova, Alexandra [3 ]
Lawall, Julia L. [4 ]
Muller, Gilles [5 ]
机构
[1] Univ Neuchatel, CH-2000 Neuchatel, Switzerland
[2] Ben Gurion Univ Negev, IL-84105 Beer Sheva, Israel
[3] Simon Fraser Univ, Burnaby, BC V5A 1S6, Canada
[4] Univ Copenhagen, DK-1168 Copenhagen, Denmark
[5] INRIA Regal, Paris, France
关键词
Algorithms; Performance; Transactional Memory; Scheduling; Contention Management;
D O I
10.1145/1837853.1693465
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Transactional Memory (TM) is considered as one of the most promising paradigms for developing concurrent applications. TM has been shown to scale well on multiple cores when the data access pattern behaves "well," i.e., when few conflicts are induced. In contrast, data patterns with frequent write sharing, with long transactions, or when many threads contend for a smaller number of cores, result in numerous conflicts. Until recently, TM implementations had little control of transactional threads, which remained under the supervision of the kernel's transaction-ignorant scheduler. Conflicts are thus traditionally resolved by consulting an STM-level contention manager. Consequently, the contention managers of these " conventional" TM implementations suffer from a lack of precision and often fail to ensure reasonable performance in high-contention workloads. Recently, scheduling-based TM contention-management has been proposed for increasing TM efficiency under high-contention [2, 5, 19]. However, only user-level schedulers have been considered. In this work, we propose, implement and evaluate several novel kernel-level scheduling support mechanisms for TM contention management. We also investigate different strategies for efficient communication between the kernel and the user-level TM library. To the best of our knowledge, our work is the first to investigate kernel-level support for TM contention management. We have introduced kernel-level TM scheduling support into both the Linux and Solaris kernels. Our experimental evaluation demonstrates that lightweight kernel-level scheduling support significantly reduces the number of aborts while improving transaction throughput on various workloads.
引用
收藏
页码:79 / 89
页数:11
相关论文
共 50 条
  • [31] Fast Scheduling in Distributed Transactional Memory
    Busch, Costas
    Herlihy, Maurice
    Popovic, Miroslav
    Sharma, Gokarna
    THEORY OF COMPUTING SYSTEMS, 2021, 65 (02) : 296 - 322
  • [32] Fast Scheduling in Distributed Transactional Memory
    Busch, Costas
    Herlihy, Maurice
    Popovic, Miroslav
    Sharma, Gokarna
    PROCEEDINGS OF THE 29TH ACM SYMPOSIUM ON PARALLELISM IN ALGORITHMS AND ARCHITECTURES (SPAA'17), 2017, : 173 - 182
  • [33] Improving performance of software transactional memory through contention locality
    Atoofian, Ehsan
    JOURNAL OF SUPERCOMPUTING, 2013, 64 (02): : 527 - 547
  • [34] Improving performance of software transactional memory through contention locality
    Ehsan Atoofian
    The Journal of Supercomputing, 2013, 64 : 527 - 547
  • [35] Distributed Transactional Contention Management as the Traveling Salesman Problem
    Zhang, Bo
    Ravindran, Binoy
    Palmieri, Roberto
    STRUCTURAL INFORMATION AND COMMUNICATION COMPLEXITY, SIROCCO 2014, 2014, 8576 : 54 - 67
  • [36] Decoupling Contention Management from Scheduling
    Johnson, F. Ryan
    Stoica, Radu
    Ailamaki, Anastasia
    Mowry, Todd C.
    ASPLOS XV: FIFTEENTH INTERNATIONAL CONFERENCE ON ARCHITECTURAL SUPPORT FOR PROGRAMMING LANGUAGES AND OPERATING SYSTEMS, 2010, : 117 - 128
  • [37] Decoupling Contention Management from Scheduling
    Johnson, F. Ryan
    Stoica, Radu
    Ailamaki, Anastasia
    Mowry, Todd C.
    ACM SIGPLAN NOTICES, 2010, 45 (03) : 117 - 128
  • [38] Flexible decoupled transactional memory support
    Shriraman, Arrvindh
    Dwarkadas, Sandhya
    Scott, Michael L.
    ISCA 2008 PROCEEDINGS: 35TH INTERNATIONAL SYMPOSIUM ON COMPUTER ARCHITECTURE, 2008, : 139 - 150
  • [39] Seer: Probabilistic Scheduling for Hardware Transactional Memory
    Diegues, Nuno
    Romano, Paolo
    Garbatov, Stoyan
    ACM TRANSACTIONS ON COMPUTER SYSTEMS, 2017, 35 (03):
  • [40] Adaptive Transaction Scheduling for Transactional Memory Systems
    Yoo, Richard M.
    Lee, Hsien-Hsin S.
    SPAA'08: PROCEEDINGS OF THE TWENTIETH ANNUAL SYMPOSIUM ON PARALLELISM IN ALGORITHMS AND ARCHITECTURES, 2008, : 169 - 178