HAL will be down for maintenance from Friday, June 10 at 4pm through Monday, June 13 at 9am. More information
Skip to Main content Skip to Navigation
Conference papers

Ditto – Deterministic Execution Replayability-as-a-Service for Java VM on Multiprocessors

Abstract : Alongside the rise of multi-processor machines, concurrent programming models have grown to near ubiquity. Programs built on these models are prone to bugs with rare pre-conditions, arising from unanticipated interactions between parallel tasks. Replayers can be efficient on uni-processor machines, but struggle with unreasonable overhead on multi-processors, both concerning slowdown of the execution time and size of the replay log. We present Ditto, a deterministic replayer for concurrent JVM applications executed on multi-processor machines, using both state-of-the-art and novel techniques. The main contribution of Ditto is a novel pair of recording and replaying algorithms that: (a) serialize memory accesses at the instance field level, (b) employ partial transitive reduction and program-order pruning on-the-fly, (c) take advantage of TLO static analysis, escape analysis and JVM compiler optimizations to identify thread-local accesses, and (d) take advantage of a lightweight checkpoint mechanism to avoid large logs in long running applications with fine granularity interactions, and for faster replay to any point in execution. The results show that Ditto out-performs previous deterministic replayers targeted at Java programs.
Complete list of metadata

Contributor : Hal Ifip Connect in order to contact the contributor
Submitted on : Wednesday, March 1, 2017 - 5:33:11 PM
Last modification on : Thursday, March 2, 2017 - 10:18:43 AM
Long-term archiving on: : Tuesday, May 30, 2017 - 6:13:26 PM


Files produced by the author(s)


Distributed under a Creative Commons Attribution 4.0 International License



João Silva, José Simão, Luís Veiga. Ditto – Deterministic Execution Replayability-as-a-Service for Java VM on Multiprocessors. 14th International Middleware Conference (Middleware), Dec 2013, Beijing, China. pp.405-424, ⟨10.1007/978-3-642-45065-5_21⟩. ⟨hal-01480786⟩



Record views


Files downloads