Abstract
Architectures for deterministic record-replay (R&R) of multithreaded code are attractive for program debugging, intrusion analysis, and fault-tolerance uses. However, very few of the proposed designs have focused on maximizing replay speed - a key enabling property of these systems. The few efforts that focus on replay speed require intrusive hardware or software modifications, or target whole-system R&R rather than the more useful applicationlevel R&R. This paper presents the first hardware-based scheme for unintrusive, application-level R&R that explicitly targets high replay speed. Our scheme, called Cyrus, requires no modification to commodity snoopy cache coherence. It introduces the concept of an onthe- fly software Backend Pass during recording which, as the log is being generated, transforms it for high replay parallelism. This pass also fixes-up the log, and can flexibly trade-off replay parallelism for log size.We analyze the performance of Cyrus using full system (OS plus hardware) simulation. Our results show that Cyrus has negligible recording overhead. In addition, for 8-processor runs of SPLASH-2, Cyrus attains an average replay parallelism of 5, and a replay speed that is, on average, only about 50% lower than the recording speed.
| Original language | English (US) |
|---|---|
| Pages (from-to) | 193-206 |
| Number of pages | 14 |
| Journal | ACM SIGPLAN Notices |
| Volume | 48 |
| Issue number | 4 |
| DOIs | |
| State | Published - Apr 2013 |
Keywords
- Application-level Parallel Replay
- Backend Log Processing
- Deterministic Replay
- Source-only Recording
- Unintrusive Hardware-Assisted Recording
ASJC Scopus subject areas
- General Computer Science
Fingerprint
Dive into the research topics of 'Cyrus: Unintrusive application-level record-replay for replay parallelism'. Together they form a unique fingerprint.Cite this
- APA
- Standard
- Harvard
- Vancouver
- Author
- BIBTEX
- RIS