An Efficient Framework for Supporting Nested Transaction in STM

Published in NETYS, Rabat, Morocco, 2024

Software Transactional Memory (STM) offers a promising avenue for simplifying the intricacies associated with concurrent programming. However, for an STM system to be truly effective, it must accommodate nesting, which will achieve composability and mitigate the extended vulnerability period associated with prolonged transactions. So far, a few protocols have been proposed for the nested STM system that supports nonlinear closed nesting. Either they do not provide any experimental evaluation of their protocol or provide concrete arguments for satisfying opacity, i.e., correctness criteria for the STM system. This paper introduces NestedBTO, an STM protocol tailored for closed nested transactions. Our protocol facilitates the parallel execution of child transactions and is based on timestamp ordering for transactions. Through extensive experimental evaluations, we observe a significant performance improvement compared to flat nesting and serial scheduling in microbenchmark scenarios involving a counter and hashtable. These findings underscore the efficacy of our implementation in optimizing transactional operations within the STM framework. DOI Download BibTeX