Supporting time-based QoS requirements in software transactional memory
Walther Maldonado, Patrick Marlier, Pascal Felber, Julia Lawall, Gilles Muller & Etienne Rivière
Abstract |
Software Transactional Memory (STM) is an optimistic concurrency
control mechanism that simplifies parallel programming. Still,
there has been little interest in its applicability for reactive
applications in which there is a required response time for certain
operations. We propose supporting such applications by allowing
programmers to associate time with atomic blocks in the forms of
deadlines and QoS requirements. Based on statistics of past
executions, we adjust the execution mode of transactions by
decreasing the level of optimism as the deadline approaches. In the
presence of concurrent deadlines, we propose different conflict
resolution policies. Execution mode switching mechanisms allow
meeting multiple deadlines in a consistent manner, with potential
QoS degradations being split fairly among several threads as
contention increases, and avoiding starvation. Our implementation
consists of extensions to a STM runtime that allow gathering
statistics and switching execution modes. We also propose novel
contention managers adapted to transactional workloads subject to
deadlines. The experimental evaluation shows that our approaches
significantly improve the likelihood of a transaction meeting its
deadline and QoS requirement, even in cases where progress is
hampered by conflicts and other concurrent transactions with
deadlines. |
Keywords |
Contention Management, Fairness, Quality of Service, Scheduling, Transactional Memory |
Citation | W. Maldonado, et al., "Supporting time-based QoS requirements in software transactional memory," ACM Transactions on Parallel Computing, vol. 2, p. 1-30, July 2015. |
Type | Journal article (English) |
Date of appearance | 1-7-2015 |
Journal | ACM Transactions on Parallel Computing |
Volume | 2 |
Issue | 2 |
Pages | 1-30 |
URL | http://dx.doi.org/10.1145/2779621 |
Related project | VELOX: An Integrated Approach to Transactional Memory on ... |