Storyboard: Optimistic deterministic multithreading

18Citations
Citations of this article
12Readers
Mendeley users who have this article in their library.

Abstract

State-machine replication is a general approach to address the increasing importance of network-based services by improving their availability and reliability via replicated execution. If a service is deterministic, multiple replicas will produce the same results, and faults can be tolerated by means of agreement protocols. Unfortunately, real-life services are often not deterministic. One major source of non-determinism is multithreaded execution with shared data access in which the thread execution order is determined by the run-time system and the outcome may depend on which thread accesses data first. We present Storyboard, an approach that ensures deterministic execution of multi-threaded programs. Storyboard achieves this by utilizing application-specific knowledge to minimize costly inter-replica coordination and to exploit concurrency in a similar way as nondeterministic execution. This is accomplished by making a forecast for a likely execution path, provided as an ordered sequence of locks that protect critical sections. If this forecast is correct, a request is executed in parallel to other running requests without further actions. Only in case of an incorrect forecast will an alternative execution path be resolved by inter-replica coordination.

Cite

CITATION STYLE

APA

Kapitza, R., Schunter, M., Cachin, C., Stengel, K., & Distler, T. (2010). Storyboard: Optimistic deterministic multithreading. In Proceedings of the 6th Workshop on Hot Topics in System Dependability, HotDep 2010. USENIX Association.

Register to see more suggestions

Mendeley helps you to discover research relevant for your work.

Already have an account?

Save time finding and organizing research with Mendeley

Sign up for free