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 条
  • [41] A machine learning-based memory forensics methodology for TOR browser artifacts
    Pizzolante, Raffaele
    Castiglione, Arcangelo
    Carpentieri, Bruno
    Contaldo, Roberto
    D'Angelo, Gianni
    Palmieri, Francesco
    CONCURRENCY AND COMPUTATION-PRACTICE & EXPERIENCE, 2021, 33 (23):
  • [42] ByteSTM: Virtual Machine-Level Java']Java Software Transactional Memory
    Mohamedin, Mohamed
    Ravindran, Binoy
    Palmieri, Roberto
    COORDINATION MODELS AND LANGUAGES, COORDINATION 2013, 2013, 7890 : 166 - 180
  • [43] AN EVOLUTIONARY COMPUTATIONAL SYSTEM ARCHITECTURE BASED ON A SOFTWARE TRANSACTIONAL MEMORY
    Kordic, Branisla, V
    Popovic, Marko
    Popovic, Mirosla, V
    Goldstein, Moshe
    Amitay, Moshe
    Da Yan, David
    Fredj, Erick
    REVUE ROUMAINE DES SCIENCES TECHNIQUES-SERIE ELECTROTECHNIQUE ET ENERGETIQUE, 2021, 66 (01): : 47 - 52
  • [44] A Lightweight Snapshot-based Algorithm for Software Transactional Memory
    Zhang, Xiaoqiang
    Peng, Lin
    Xie, Lunguo
    PROCEEDINGS OF THE 9TH INTERNATIONAL CONFERENCE FOR YOUNG COMPUTER SCIENTISTS, VOLS 1-5, 2008, : 1254 - 1259
  • [45] Adaptive Model-Based Scheduling in Software Transactional Memory
    Di Sanzo, Pierangelo
    Pellegrini, Alessandro
    Sannicandro, Marco
    Ciciani, Bruno
    Quaglia, Francesco
    IEEE TRANSACTIONS ON COMPUTERS, 2020, 69 (05) : 621 - 632
  • [46] A Scalable Timestamp-Based Durable Software Transactional Memory
    Liu C.
    Wang F.
    Zou X.
    Feng D.
    Jisuanji Yanjiu yu Fazhan/Computer Research and Development, 2022, 59 (03): : 499 - 517
  • [47] Concurrency Bug Avoiding Based on Optimized Software Transactional Memory
    Yu, Z.
    Zuo, Y.
    Xiong, W. C.
    SCIENTIFIC PROGRAMMING, 2019, 2019
  • [48] Asynchronous Lease-Based Replication of Software Transactional Memory
    Carvalho, Nuno
    Romano, Paolo
    Rodrigues, Luis
    MIDDLEWARE 2010, 2010, 6452 : 376 - 396
  • [49] Resolving Semantic Conflicts in Word Based Software Transactional Memory
    Sharp, Craig
    Blewitt, William
    Morgan, Graham
    EURO-PAR 2014 PARALLEL PROCESSING, 2014, 8632 : 463 - 474
  • [50] Learning Systems: Machine-Learning in Software Products and Learning-Based Analysis of Software Systems Special Track at ISoLA 2016
    Howar, Falk
    Meinke, Karl
    Rausch, Andreas
    LEVERAGING APPLICATIONS OF FORMAL METHODS, VERIFICATION AND VALIDATION: DISCUSSION, DISSEMINATION, APPLICATIONS, ISOLA 2016, PT II, 2016, 9953 : 651 - 654