Abstract
Simplified parallel programming coupled with an ability to express speculative computation is realized with Software Transactional Memory (STM). Although STMs are gaining popularity because of significant improvements in parallel performance, they exhibit enormous variation in transaction execution with non-repeatable performance behavior which is unacceptable in many application domains, especially in which frame rates and responsiveness should be predictable. Thus, reducing execution variance in STM is an important performance goal that has been mostly overlooked. In this work, we minimize the variance in execution time of threads in STM by reducing non-determinism exhibited due to speculation by first quantifying non-determinism and generating an automaton that models the behavior of STM. We used the automaton to guide the STM to a less non-deterministic execution that reduced the variance in frame rate by a maximum of 65% on a version of real-world Quake3 game.
- Tushar Kumar, Jaswanth Sreeram, Romain Cledat, and Santosh Pande. 2007. A Profile-driven Statistical Analysis Framework for the Design Optimization of Soft Real-time Applications (ESEC-FSE companion '07). ACM, 529--532. Google Scholar
Digital Library
- Daniel Lupei, Bogdan Simion, Don Pinto, Matthew Misler, Mihai Burcea, William Krick, and Cristiana Amza. 2010. Towards Scalable and Transparent Parallelization of Multiplayer Games Using Transactional Memory Support (PPoPP '10). ACM, 325--326. Google Scholar
Digital Library
- Kaushik Ravichandran, Ada Gavrilovska, and Santosh Pande. 2014. DeSTM: Harnessing Determinism in STMs for Application Development (PACT '14). ACM, 213--224. Google Scholar
Digital Library
Index Terms
Quantifying and reducing execution variance in STM via model driven commit optimization
Recommendations
Quantifying and reducing execution variance in STM via model driven commit optimization
PPoPP '18: Proceedings of the 23rd ACM SIGPLAN Symposium on Principles and Practice of Parallel ProgrammingSimplified parallel programming coupled with an ability to express speculative computation is realized with Software Transactional Memory (STM). Although STMs are gaining popularity because of significant improvements in parallel performance, they ...
Quantifying and reducing execution variance in STM via model driven commit optimization
CGO 2019: Proceedings of the 2019 IEEE/ACM International Symposium on Code Generation and OptimizationSimplified parallel programming coupled with an ability to express speculative computation is realized with Software Transactional Memory (STM). Although STMs are gaining popularity because of significant improvements in parallel performance, they ...
Commit phase in timestamp-based stm
SPAA '08: Proceedings of the twentieth annual symposium on Parallelism in algorithms and architecturesTimestamp-based Software Transactional Memory (STM)validation techniques use a global shared counter and timestamping of objects being written to reason about sequencing of transactions and their linearization points, while reducing the number of ...







Comments