Communicating sequential processes
Communicating sequential processes
Optimistic recovery in distributed systems
ACM Transactions on Computer Systems (TOCS)
ACM Transactions on Programming Languages and Systems (TOPLAS)
SIGMOD '87 Proceedings of the 1987 ACM SIGMOD international conference on Management of data
Composing first-class transactions
ACM Transactions on Programming Languages and Systems (TOPLAS)
Automatic I/O hint generation through speculative execution
OSDI '99 Proceedings of the third symposium on Operating systems design and implementation
Memory sharing predictor: the key to a speculative coherent DSM
ISCA '99 Proceedings of the 26th annual international symposium on Computer architecture
Transaction Processing: Concepts and Techniques
Transaction Processing: Concepts and Techniques
CCGRID '03 Proceedings of the 3st International Symposium on Cluster Computing and the Grid
Operational semantics of transactions
ADC '03 Proceedings of the 14th Australasian database conference - Volume 17
The Ethernet Approach to Grid Computing
HPDC '03 Proceedings of the 12th IEEE International Symposium on High Performance Distributed Computing
Software and Hardware for Exploiting Speculative Parallelism with a Multiprocessor
Software and Hardware for Exploiting Speculative Parallelism with a Multiprocessor
The metaprl logical programming environment
The metaprl logical programming environment
Language support for lightweight transactions
OOPSLA '03 Proceedings of the 18th annual ACM SIGPLAN conference on Object-oriented programing, systems, languages, and applications
AtomCaml: first-class atomicity via rollback
Proceedings of the tenth ACM SIGPLAN international conference on Functional programming
Speculative execution in a distributed file system
Proceedings of the twentieth ACM symposium on Operating systems principles
Rx: treating bugs as allergies---a safe method to survive software failures
Proceedings of the twentieth ACM symposium on Operating systems principles
Distributed speculations: providing fault-tolerance and improving performance
Distributed speculations: providing fault-tolerance and improving performance
lmbench: portable tools for performance analysis
ATEC '96 Proceedings of the 1996 annual conference on USENIX Annual Technical Conference
Hi-index | 0.00 |
Implementing distributed applications is a challenging task. Developers are confronted with issues like fault-tolerance, efficient synchronization mechanisms, and the correctness of the distributed code. Transactions are a simple and powerful mechanism for establishing fault-tolerance. To allow multiple processes to cooperate in a transaction we relax the isolation property. We call the new abstraction a speculation. This paper introduces a new programming model based on speculative execution. Speculations provide distributed coordinated rollback and enable optimistic execution of synchronization points. We present an operational semantics for nested speculative execution that specifies distributed speculations precisely. We also discuss two approaches to implementing support for speculations.