Software Transactional Memory (STM) may suffer from performance degradation due to excessive conflicts among concurrent transactions. An approach to cope with this issue consists in putting in place smart scheduling policies which temporarily suspend the execution of some transaction in order to reduce the actual conflict rate. In this paper, we present an adaptive transaction scheduling policy relying on a Markov Chain-based model of STM systems. The policy is adaptive in a twofold sense: (i) it schedules transactions depending on throughput predictions by the model as a function of the current system state; (ii) its underlying Markov Chain-based model is periodically re-instantiated at run-time to adapt it to dynamic variations of the workload. We also present an implementation of our adaptive transaction scheduler which has been integrated within the open source TinySTM package. The accuracy of our performance model in predicting the system throughput and the advantages of the adaptive scheduling policy over state-of-the-art approaches have been assessed via an experimental study based on the STAMP benchmark suite.
2016, 2016 IEEE International Parallel and Distributed Processing Symposium (IPDPS 2016), Pages 373-382
Markov Chain-Based Adaptive Scheduling in Software Transactional Memory (04b Atto di convegno in volume)
DI SANZO Pierangelo, Sannicandro Marco, Ciciani Bruno, Quaglia Francesco
ISBN: 9781509021406; 978-1-5090-2141-3