@inproceedings{1e8d7f87805b434980ef17122edcfe18,
title = "LiTM: A lightweight deterministic software transactional memory system",
abstract = "Deterministic software transactional memory (STM) is a useful programming model for writing parallel codes, as it improves programmability (by supporting transactions) and debuggability (by supporting determinism). This paper presents LiTM, a new deterministic STM system that achieves both simplicity and efficiency at the same time. LiTM implements the deterministic reservations framework of Blelloch et al., but without requiring the programmer to understand the internals of the algorithm. Instead, the programmer writes the program in a transactional fashion and LiTM manages all data conflicts and automatically achieves deterministic parallelism. Our experiments on six benchmarks show that LiTM outperforms the state-of-the-art framework Galois by up to 5.8× on a 40-core machine.",
keywords = "Deterministic Parallelism, Software Transactional Memory",
author = "Yu Xia and Xiangyao Yu and William Moses and Julian Shun and Srinivas Devadas",
note = "Another interesting extension would be supporting dynamically batching online inputs to bypass the requirement of the system that all of the inputs need to be ready before the execution begins. One trivial approach to do this would be to divide the time into rounds with constant length. At the end of each round, the system would process the inputs that arrived in the last round. However, such an approach would result in variable sizes of batches, and small batches may hurt parallelism. Furthermore, this approach would increase the latency of the transactions. 7 Conclusion We have introduced LiTM, a deterministic STM system that achieves both simplicity and efficiency at the same time. LiTM implements the deterministic reservation paradigm in a novel way, such that the programmer no longer has to manually write functions to handle data conflicts. We show that LiTM achieves a better performance than the current state-of-the-art deterministic STM system for six applications, providing a practical choice for deterministic transactional processing. Acknowledgments This work is supported by the National Science Foundation Grant No. CCR-1822920, DOE Computational Sciences Graduate Fellowship DE-SC0019323, DOE Early Career Award DE-SC0018947, and DARPA SDH Award HR0011-18-3-0007. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the grant sponsors.; 10th International Workshop on Programming Models and Applications for Multicores and Manycores, PMAM 2019 ; Conference date: 17-02-2019",
year = "2019",
month = feb,
day = "17",
doi = "10.1145/3303084.3309487",
language = "English (US)",
series = "Proceedings of the 10th International Workshop on Programming Models and Applications for Multicores and Manycores, PMAM 2019",
publisher = "Association for Computing Machinery",
pages = "1--10",
editor = "Quan Chen and Zhiyi Huang and Min Si",
booktitle = "Proceedings of the 10th International Workshop on Programming Models and Applications for Multicores and Manycores, PMAM 2019",
address = "United States",
}