Parallel and Distributed Processing Symposium, International (2001)
San Francisco, California, USA
Apr. 23, 2001 to Apr. 27, 2001
<p>Development of multithreaded applications is particularly tricky because of their non-deterministic execution behaviors. Tools that support the debugging and performance tuning of such applications are needed. Key to the construction of such tools is the ability to repeat the non-deterministic execution behavior of a multithreaded application. A clean separation between the application and the system that runs it facilitates supporting that ability. This paper presents a platform for constructing such tools in a context in which any separation between the application and the underlying system (and between both and the platform's own instrumentation code) has been obscured.</p> <p>DejaVu supports deterministic replay of non-deterministic executions of multithreaded Java programs on the Jalapeño virtual machine (running on a uniprocessor). Jalapeño is written in Java and its optimizing compiler regularly integrates application, virtual machine, and DejaVu instrumentation code into unified machine-code sequences. DejaVu ensures deterministic replay through symmetric instrumentation - side-effect identical instrumentation in both record and replay modes - and remote reflection which exposes the state of an application without perturbing it.</p>
B. Alpern, T. Ngo, J. Choi and J. Vlissides, "A Perturbation-Free Replay Platform for Cross-Optimized Multithreaded Applications," Parallel and Distributed Processing Symposium, International(IPDPS), San Francisco, California, USA, 2001, pp. 10023a.