Deterministic replay: A survey

Y Chen, S Zhang, Q Guo, L Li, R Wu… - ACM Computing Surveys …, 2015 - dl.acm.org
Deterministic replay is a type of emerging technique dedicated to providing deterministic
executions of computer programs in the presence of nondeterministic factors. The …

ODR: Output-deterministic replay for multicore debugging

G Altekar, I Stoica - Proceedings of the ACM SIGOPS 22nd symposium …, 2009 - dl.acm.org
Reproducing bugs is hard. Deterministic replay systems address this problem by providing a
high-fidelity replica of an original program run that can be repeatedly executed to zero-in on …

CoreDet: A compiler and runtime system for deterministic multithreaded execution

T Bergan, O Anderson, J Devietti, L Ceze… - Proceedings of the …, 2010 - dl.acm.org
The behavior of a multithreaded program does not depend only on its inputs. Scheduling,
memory reordering, timing, and low-level hardware effects all introduce nondeterminism in …

DMP: Deterministic shared memory multiprocessing

J Devietti, B Lucia, L Ceze, M Oskin - Proceedings of the 14th …, 2009 - dl.acm.org
Current shared memory multicore and multiprocessor systems are nondeterministic. Each
time these systems execute a multithreaded application, even if supplied with the same …

DoublePlay: Parallelizing sequential logging and replay

K Veeraraghavan, D Lee, B Wester, J Ouyang… - ACM Transactions on …, 2012 - dl.acm.org
Deterministic replay systems record and reproduce the execution of a hardware or software
system. In contrast to replaying execution on uniprocessors, deterministic replay on …

Pres: probabilistic replay with execution sketching on multiprocessors

S Park, Y Zhou, W **ong, Z Yin, R Kaushik… - Proceedings of the …, 2009 - dl.acm.org
Bug reproduction is critically important for diagnosing a production-run failure. Unfortunately,
reproducing a concurrency bug on multi-processors (eg, multi-core) is challenging. Previous …

Respec: efficient online multiprocessor replayvia speculation and external determinism

D Lee, B Wester, K Veeraraghavan… - ACM Sigplan …, 2010 - dl.acm.org
Deterministic replay systems record and reproduce the execution of a hardware or software
system. While it is well known how to replay uniprocessor systems, replaying shared …

Engineering record and replay for deployability

R O'Callahan, C Jones, N Froyd, K Huey… - 2017 USENIX Annual …, 2017 - usenix.org
The ability to record and replay program executions with low overhead enables many
applications, such as reverse-execution debugging, debugging of hard-to reproduce test …

Eidetic systems

D Devecsery, M Chow, X Dou, J Flinn… - 11th USENIX Symposium …, 2014 - usenix.org
The vast majority of state produced by a typical computer is generated, consumed, then lost
forever. We argue that a computer system should instead provide the ability to recall any …

Clap: Recording local executions to reproduce concurrency failures

J Huang, C Zhang, J Dolby - Acm Sigplan Notices, 2013 - dl.acm.org
We present CLAP, a new technique to reproduce concurrency bugs. CLAP has two key
steps. First, it logs thread local execution paths at runtime. Second, offline, it computes …