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 条
  • [21] Machine Learning-Based Multipath Routing for Software Defined Networks
    Awad, Mohamad Khattar
    Ahmed, Marwa Hassan Hafez
    Almutairi, Ali F.
    Ahmad, Imtiaz
    JOURNAL OF NETWORK AND SYSTEMS MANAGEMENT, 2021, 29 (02)
  • [22] Prediction of software quality with Machine Learning-Based ensemble methods
    Ceran A.A.
    Ar Y.
    Tanrıöver Ö.Ö.
    Seyrek Ceran S.
    Materials Today: Proceedings, 2023, 81 : 18 - 25
  • [23] 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
  • [24] LogSPoTM: a Scalable Thread Level Speculation Model Based on Transactional Memory
    Guo, Rui
    An, Hong
    Dou, Ruiling
    Cong, Ming
    Wang, Yaobin
    Li, Qi
    2008 13TH ASIA-PACIFIC COMPUTER SYSTEMS ARCHITECTURE CONFERENCE, 2008, : 178 - 185
  • [25] Machine Learning-Based Prefetching for SCM Main Memory System
    Koezuka, Mayuko
    Shirota, Yusuke
    Shirai, Satoshi
    Kanai, Tatsunori
    2020 IEEE 34TH INTERNATIONAL PARALLEL AND DISTRIBUTED PROCESSING SYMPOSIUM WORKSHOPS (IPDPSW 2020), 2020, : 769 - 776
  • [26] ByteSTM: Virtual machine-level Java software transactional memory
    Mohamedin, Mohamed
    Ravindran, Binoy
    Palmieri, Roberto
    Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics), 2013, 7890 LNCS : 166 - 180
  • [27] Ordering-Based Semantics for Software Transactional Memory
    Spear, Michael F.
    Dalessandro, Luke
    Marathe, Virendra J.
    Scott, Michael L.
    PRINCIPLES OF DISTRIBUTED SYSTEMS, 12TH INTERNATIONAL CONFERENCE, OPODIS 2008, 2008, 5401 : 275 - 294
  • [28] Risk-Based Data Validation in Machine Learning-Based Software Systems
    Foidl, Harald
    Felderer, Michael
    PROCEEDINGS OF THE 3RD ACM SIGSOFT INTERNATIONAL WORKSHOP ON MACHINE LEARNING TECHNIQUES FOR SOFTWARE QUALITY EVALUATION (MALTESQUE '19), 2019, : 13 - 18
  • [29] Analytical/ML Mixed Approach for Concurrency Regulation in Software Transactional Memory
    Rughetti, Diego
    Di Sanzo, Pierangelo
    Ciciani, Bruno
    Quaglia, Francesco
    2014 14TH IEEE/ACM INTERNATIONAL SYMPOSIUM ON CLUSTER, CLOUD AND GRID COMPUTING (CCGRID), 2014, : 81 - 91
  • [30] Machine Learning-Based Efficient Discovery of Software Vulnerability for Internet of Things
    Jeon, So-Eun
    Lee, Sun-Jin
    Lee, Il-Gu
    INTELLIGENT AUTOMATION AND SOFT COMPUTING, 2023, 37 (02): : 2407 - 2419