Abstract

Deterministic replay can reenact an earlier program execution, which can facilitate debugging the parallel program. There is non-determinism to access to shared resources when a parallel program runs on multicore processor, from which the major challenge of deterministic replay comes. An execution sequence inferred deterministic replay technique is proposed to reduce the record cost, ESIDR. The key idea of ESIDR is tracking the read actions of shared memory with a virtual cache and logging write-read dependence when a write action of shared memory happens. The dependence among shared memory accesses is obtained by analyzing the log that is a subset of exact dependence. We make an effective and feasible trade-off between recording and replaying to reduce the runtime overhead and the log size at record. Our replay approach guarantees the real and complete dependence between writing and reading of shared memory. A contrast experiment with state-of-the-art deterministic replay technique LEAP is conducted. The evaluation results show that ESIDR makes 2.38 times and 3.91 times reduction on the runtime overhead and the log size, comparing with LEAP.

Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call