1. Adaptive Model-based Scheduling in Software Transactional Memory
- Author
-
Francesco Quaglia, Marco Sannicandro, Alessandro Pellegrini, Pierangelo Di Sanzo, Bruno Ciciani, Di Sanzo, Pierangelo, Pellegrini, Alessandro, Sannicandro, Marco, Ciciani, Bruno, and Quaglia, Francesco
- Subjects
Settore ING-INF/05 ,Computer science ,Distributed computing ,Markov process ,02 engineering and technology ,Theoretical Computer Science ,Scheduling (computing) ,symbols.namesake ,0202 electrical engineering, electronic engineering, information engineering ,Concurrent computing ,Transactional Memory ,Atomicity ,Markov chain ,Markov processes ,Workload ,020202 computer hardware & architecture ,Performance Model ,Computational Theory and Mathematics ,Model-based Performance Optimization ,Hardware and Architecture ,symbols ,Transaction Scheduling ,Software transactional memory ,Performance Models ,Database transaction ,Software - Abstract
Software Transactional Memory (STM) stands as powerful concurrent programming paradigm, enabling atomicity, and isolation while accessing shared data. On the downside, STM may suffer from performance degradation due to excessive conflicts among concurrent transactions, which cause waste of CPU-cycles and energy because of transaction aborts. An approach to cope with this issue consists of putting in place smart scheduling strategies which temporarily suspend the execution of some transaction in order to reduce the transaction conflict rate. In this article, we present an adaptive model-based transaction scheduling technique relying on a Markov Chain-based performance model of STM systems. Our scheduling technique is adaptive in a twofold sense: (i) It controls the execution of transactions depending on throughput predictions by the model as a function of the current system state. (ii) It re-tunes on-line the Markov Chain-based model to adapt it—and the outcoming transaction scheduling decisions—to dynamic variations of the workload. We have been able to achieve the latter target thanks to the fact that our performance model is extremely lightweight. In fact, to be recomputed, it requires a reduced set of input parameters, whose values can be estimated via a few on-line samples related to the current workload dynamics. We also present a scheduler that implements our adaptive technique, which we integrated within the open source TinySTM package. Further, we report the results of an experimental study based on the STAMP benchmark suite, which has been aimed at assessing both the accuracy of our performance model in predicting the actual system throughput and the advantages of the adaptive scheduling policy over literature techniques.
- Published
- 2019