Sandboxing for Software Transactional Memory with Deferred Updates
Holger Machens

TL;DR
This paper reviews and improves sandboxing techniques for software transactional memory, focusing on reducing validation costs and enhancing error detection in unmanaged languages like C/C++.
Contribution
It proposes enhancements to sandboxing methods, including a new error model, optimized stack protection, and alternative validation techniques, to improve transaction safety and efficiency.
Findings
Improved sandboxing techniques for C/C++ transactions.
Reduced validation frequency with effective error detection.
Identified risks in waivered regions without instrumentation.
Abstract
Software transactional memory implementations which allow transactions to work on inconsistent states of shared data, risk to cause application visible errors such as memory access violations or endless loops. Hence, many implementations rely on repeated incremental validation of every read of the transaction to always guarantee for a consistent view of shared data. Because this eager validation technique generates significant processing costs several proposals have been published to establish a sandbox for transactions, which transparently prevents or suppresses those errors and thereby allows to reduce the frequency of in-flight validations. The most comprehensive sandboxing concept of transactions in software transactional memory based on deferred updates and considering unmanaged languages, integrates multiple techniques such as signal interposition, out-of-band validation and…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsDistributed systems and fault tolerance · Cognitive Functions and Memory · Security and Verification in Computing
