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 条
  • [41] Seer: Probabilistic Scheduling for Hardware Transactional Memory
    Diegues, Nuno
    Romano, Paolo
    Garbatov, Stoyan
    SPAA'15: PROCEEDINGS OF THE 27TH ACM SYMPOSIUM ON PARALLELISM IN ALGORITHMS AND ARCHITECTURES, 2015, : 224 - 233
  • [42] Architectural support for software transactional memory
    Saha, Bratin
    Adl-Tabatabai, Ali-Reza
    Jacobson, Quinn
    MICRO-39: PROCEEDINGS OF THE 39TH ANNUAL IEEE/ACM INTERNATIONAL SYMPOSIUM ON MICROARCHITECTURE, 2006, : 185 - +
  • [43] Impact of memory contention on dynamic scheduling on NUMA multiprocessors
    Durand, D
    Montaut, T
    Kervella, L
    Jalby, W
    IEEE TRANSACTIONS ON PARALLEL AND DISTRIBUTED SYSTEMS, 1996, 7 (11) : 1201 - 1214
  • [44] Energy-aware Scheduling in Transactional Memory Systems
    Marques Junior, Ademir
    Baldassin, Alexandro
    2016 29TH SYMPOSIUM ON INTEGRATED CIRCUITS AND SYSTEMS DESIGN (SBCCI), 2016,
  • [45] Deadline-Aware Scheduling for Software Transactional Memory
    Maldonado, Walther
    Marlier, Patrick
    Felber, Pascal
    Lawall, Julia
    Muller, Giller
    Riviere, Etienne
    2011 IEEE/IFIP 41ST INTERNATIONAL CONFERENCE ON DEPENDABLE SYSTEMS AND NETWORKS (DSN), 2011, : 257 - 268
  • [46] Scheduling Transactions in Replicated Distributed Software Transactional Memory
    Kim, Junwhan
    Ravindran, Binoy
    PROCEEDINGS OF THE 2013 13TH IEEE/ACM INTERNATIONAL SYMPOSIUM ON CLUSTER, CLOUD AND GRID COMPUTING (CCGRID 2013), 2013, : 227 - 234
  • [47] Simplifying Transactional Memory Support in C plus
    Zardoshti, Pantea
    Zhou, Tingzhe
    Balaji, Pavithra
    Scott, Michael L.
    Spear, Michael
    ACM TRANSACTIONS ON ARCHITECTURE AND CODE OPTIMIZATION, 2019, 16 (03)
  • [48] Transactional Memory Scheduling Using Machine Learning Techniques
    Assiri, Basem
    Busch, Costas
    2016 24TH EUROMICRO INTERNATIONAL CONFERENCE ON PARALLEL, DISTRIBUTED, AND NETWORK-BASED PROCESSING (PDP), 2016, : 718 - 725
  • [49] On The Power of Hardware Transactional Memory to Simplify Memory Management
    Dragojevic, Aleksandar
    Herlihy, Maurice
    Lev, Yossi
    Moir, Mark
    PODC 11: PROCEEDINGS OF THE 2011 ACM SYMPOSIUM PRINCIPLES OF DISTRIBUTED COMPUTING, 2011, : 99 - 108
  • [50] 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