Skip to Main Content
Software transactional memory (STM) systems have been proposed in order to make parallel programs easier to develop and verify compared to conventional lock-based programming techniques. However, conventional STMs do not scale in performance to a large number of concurrent threads for several classes of applications. While the atomicity semantics of traditional STMs greatly simplify the correct sharing of data between threads, these same atomicity semantics incur a large penalty in program execution time.we propose a relaxed software transactional memory (RSTM) model that allows the programmer to specify atomicity constraints for transactions with greater flexibility and precision. In a RSTM system, shared data accessed by a transaction is classified into several "consistency groups". A single consistency policy is enforced on each consistency group. Both membership of a group and the policy to be applied are declaratively specified by the programmer.