Formal semantics for expressing optimism: the meaning of HOPE
Proceedings of the fourteenth annual ACM symposium on Principles of distributed computing
Design and evaluation of a conit-based continuous consistency model for replicated services
ACM Transactions on Computer Systems (TOCS)
Hi-index | 0.00 |
Optimism is a powerful technique for avoiding latency by increasing concurrency. By optimistically assuming the results of some computation, other computations can be executed in parallel, even when they depend on the assumed result. Optimistic techniques can be particularly beneficial to parallel and distributed systems because of the critical impact of inter-node communications latency. This paper describes how optimism can be used to enhance the performance of distributed programs by avoiding remote communications delay. We then present a new programming model that automates many of the difficulties of using optimistic techniques in a general programming environment, and describe a prototype implementation. Finally, we present performance measurements showing how optimism improved the performance of a test application in this environment.