1. Applying Transactional Memory for Concurrency-Bug Failure Recovery in Production Runs.
- Author
-
Chen, Yuxi, Wang, Shu, Lu, Shan, and Sankaralingam, Karthikeyan
- Subjects
- *
TRANSACTIONAL analysis , *HARDWARE , *TEXT messages , *SYNCHRONIZATION software , *FEASIBILITY studies - Abstract
Concurrency bugs widely exist and severely threaten system availability. Techniques that help recover from concurrency-bug failures during production runs are highly desired. This paper proposes BugTM, an approach that applies transactional memory techniques for concurrency-bug recovery in production runs. Requiring no knowledge about where are concurrency bugs, BugTM uses static analysis and code transformation to enable BugTM-transformed software to recover from a concurrency-bug failure by rolling back and re-executing the recent history of a failure thread. BugTM is instantiated as three schemes that have different trade-offs in performance and recovery capability: BugTM$_H$H uses existing hardware transactional memory (HTM) support, BugTM$_S$S leverages software transactional memory techniques, and BugTM$_{\mathrm{HS}}$ HS is a software-hardware hybrid design. BugTM greatly improves the recovery capability of state-of-the-art techniques with low run-time overhead and no changes to OS or hardware, while guarantees not to introduce new bugs. [ABSTRACT FROM AUTHOR]
- Published
- 2019
- Full Text
- View/download PDF