Nested transactions: an approach to reliable distributed computing
Nested transactions: an approach to reliable distributed computing
Abstraction in recovery management
SIGMOD '86 Proceedings of the 1986 ACM SIGMOD international conference on Management of data
A model for concurrency in nested transactions systems
Journal of the ACM (JACM)
Concepts and applications of multilevel transactions and open nested transactions
Database transaction models for advanced applications
Transactional memory: architectural support for lock-free data structures
ISCA '93 Proceedings of the 20th annual international symposium on computer architecture
Efficient detection of determinacy races in Cilk programs
Proceedings of the ninth annual ACM symposium on Parallel algorithms and architectures
Computation-centric memory models
Proceedings of the tenth annual ACM symposium on Parallel algorithms and architectures
The serializability of concurrent database updates
Journal of the ACM (JACM)
Dependence graphs and compiler optimizations
POPL '81 Proceedings of the 8th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Transaction Processing: Concepts and Techniques
Transaction Processing: Concepts and Techniques
Introduction to Algorithms
Recovery semantics for a DB/DC system
ACM '73 Proceedings of the ACM annual conference
Software transactional memory for dynamic-sized data structures
Proceedings of the twenty-second annual symposium on Principles of distributed computing
Architectural Semantics for Practical Transactional Memory
Proceedings of the 33rd annual international symposium on Computer Architecture
Transactions with isolation and cooperation
Proceedings of the 22nd annual ACM SIGPLAN conference on Object-oriented programming systems and applications
High-level small-step operational semantics for transactions
Proceedings of the 35th annual ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Nested parallelism in transactional memory
Proceedings of the 13th ACM SIGPLAN Symposium on Principles and practice of parallel programming
Safer open-nested transactions through ownership
Proceedings of the 13th ACM SIGPLAN Symposium on Principles and practice of parallel programming
Safe open-nested transactions through ownership
Proceedings of the twentieth annual symposium on Parallelism in algorithms and architectures
Safe open-nested transactions through ownership
Proceedings of the 14th ACM SIGPLAN symposium on Principles and practice of parallel programming
SPMTM: A Novel ScratchPad Memory Based Hybrid Nested Transactional Memory Framework
APPT '09 Proceedings of the 8th International Symposium on Advanced Parallel Processing Technologies
Transaction communicators: enabling cooperation among concurrent transactions
Proceedings of the 16th ACM symposium on Principles and practice of parallel programming
Correctness of concurrent executions of closed nested transactions in transactional memory systems
ICDCN'11 Proceedings of the 12th international conference on Distributed computing and networking
Lowering STM overhead with static analysis
LCPC'10 Proceedings of the 23rd international conference on Languages and compilers for parallel computing
Composable, nestable, pessimistic atomic statements
Proceedings of the 2011 ACM international conference on Object oriented programming systems languages and applications
ICDCN'12 Proceedings of the 13th international conference on Distributed Computing and Networking
Correctness of concurrent executions of closed nested transactions in transactional memory systems
Theoretical Computer Science
Hi-index | 0.00 |
Open nesting provides a loophole in the strict model of atomic transactions. Moss and Hosking suggested adapting open nesting for transactional memory, and Moss and a group at Stanford have proposed hardware schemes to support open nesting. Since these researchers have described their schemes using only operational definitions, however, the semantics of these systems have not been specified in an implementation-independent way. This paper offers a framework for defining and exploring the memory semantics of open nesting in a transactionl-memory setting.Our framework allows us to define the traditional model of serializability and two new transactional-memory models, race freedom and prefix race freedom. The weakest of these memory models, prefix race freedom, closely resembles the Stanford openesting model. We prove that these three memory models are equivalent for transactional-memory systems that support only closed nesting, as long as aborted transactions are "ignored." We prove that for systems that support open nesting, however, the models of serializability, race freedom, and prefix race freedom are distinct. We show that the Stanford TM system implements a model at least as strong as prefix race freedom and strictly weaker than race freedom. Thus, their model compromises serializability, the property traditionally used to reason about the correctness of transactions.