Machine learning-based thread-parallelism regulation in software transactional memory

被引:3
|
作者
Rughetti, Diego [1 ]
Di Sanzo, Pierangelo [1 ]
Ciciani, Bruno [1 ]
Quaglia, Francesco [2 ]
机构
[1] Sapienza Univ Roma, DIAG, Rome, Italy
[2] Univ Roma Tor Vergata, DICII, Rome, Italy
关键词
Concurrency; Transactional memory; Performance prediction; Performance optimization;
D O I
10.1016/j.jpdc.2017.06.001
中图分类号
TP301 [理论、方法];
学科分类号
081202 ;
摘要
Transactional Memory (TM) stands as a powerful paradigm for manipulating shared data in concurrent applications. It avoids the drawbacks of coarse grain locking schemes, namely the potentially excessive limitation of concurrency, while jointly providing support for synchronization transparency to the programmers, which is achieved by embedding code-blocks accessing shared data within transactions. On the downside, excessive transaction aborts may arise in scenarios with non-negligible volumes of conflicting data accesses, which might significantly impair performance. TM needs therefore to resort to methods enabling applications to run with the maximum degree of transaction concurrency that still avoids thrashing. In this article, we focus on Software TM (STM) implementations and present a machine learning-based approach that enables the dynamic selection of the best suited number of threads to be kept alive along specific phases of the execution of STM applications, depending on (variations of) the shared data access pattern. Two key contributions are provided with our approach: (i) the identification of the well suited set of features allowing the instantiation of a reliable neural network-based performance model and (ii) the introduction of mechanisms enabling the reduction of the run-time overhead for sampling these features. We integrated a real implementation of our machine learning-based thread parallelism regulation approach within the TinySTM open source package and present experimental data, based on the STAMP benchmark suite, which show the effectiveness of the presented thread-parallelism regulation policy in optimizing transaction throughput. (C) 2017 Elsevier Inc. All rights reserved.
引用
收藏
页码:208 / 229
页数:22
相关论文
共 50 条
  • [1] Autonomic Parallelism and Thread Mapping Control on Software Transactional Memory
    Zhou, Naweiluo
    Delaval, Gwenael
    Robu, Bogdan
    Rutten, Eric
    Mehaut, Jean-Francois
    2016 IEEE INTERNATIONAL CONFERENCE ON AUTONOMIC COMPUTING (ICAC), 2016, : 189 - 198
  • [2] Dynamic Thread Mapping Based on Machine Learning for Transactional Memory Applications
    Castro, Marcio
    Wanderley Goes, Luis Fabricio
    Fernandes, Luiz Gustavo
    Mehaut, Jean-Francois
    EURO-PAR 2012 PARALLEL PROCESSING, 2012, 7484 : 465 - 476
  • [3] Thread Affinity in Software Transactional Memory
    Pasqualin, Douglas Pereira
    Diener, Matthias
    Du Bois, Andre Rauber
    Pilla, Mauricio Lima
    2020 19TH INTERNATIONAL SYMPOSIUM ON PARALLEL AND DISTRIBUTED COMPUTING (ISPDC 2020), 2020, : 180 - 187
  • [4] Control of Autonomic Parallelism Adaptation on Software Transactional Memory
    Zhou, Naweiluo
    Delaval, Gwenael
    Rohu, Bogdan
    Rutten, Eric
    Mehaut, Jean-Francois
    2016 INTERNATIONAL CONFERENCE ON HIGH PERFORMANCE COMPUTING & SIMULATION (HPCS 2016), 2016, : 180 - 187
  • [5] Disjoint-access parallelism in software transactional memory
    Technion, Haifa, Israel
    不详
    Lect. Notes Comput. Sci., (72-97):
  • [6] Thread and Data Mapping in Software Transactional Memory: an Overview
    Pasqualin, Douglas Pereira
    Diener, Matthias
    Du Bois, Andre Rauber
    Pilla, Mauricio Lima
    INTERNATIONAL JOURNAL OF PARALLEL PROGRAMMING, 2025, 53 (03)
  • [7] FASTLANE: Improving Performance of Software Transactional Memory for Low Thread Counts
    Wamhoff, Jons-Tobias
    Fetzer, Christof
    Felber, Pascal
    Riviere, Etienne
    Muller, Gilles
    ACM SIGPLAN NOTICES, 2013, 48 (08) : 113 - 122
  • [8] Online Sharing-Aware Thread Mapping in Software Transactional Memory
    Pasqualin, Douglas Pereira
    Diener, Matthias
    Du Bois, Andre Rauber
    Pilla, Mauricio Lima
    2020 IEEE 32ND INTERNATIONAL SYMPOSIUM ON COMPUTER ARCHITECTURE AND HIGH PERFORMANCE COMPUTING (SBAC-PAD 2020), 2020, : 35 - 42
  • [9] Thread-Level Speculation Based on Transactional Memory
    Li, Xiang
    Zhang, Jing
    INFORMATION-AN INTERNATIONAL INTERDISCIPLINARY JOURNAL, 2012, 15 (04): : 1745 - 1755
  • [10] Lifecycle Regulation of Artificial Intelligence- and Machine Learning-Based Software Devices in Medicine
    Hwang, Thomas J.
    Kesselheim, Aaron S.
    Vokinger, Kerstin N.
    JAMA-JOURNAL OF THE AMERICAN MEDICAL ASSOCIATION, 2019, 322 (23): : 2285 - 2286