Log20: Fully automated optimal placement of log printing statements under specified overhead threshold
When systems fail in production environments, log data is often the only information
available to programmers for postmortem debugging. Consequently, programmers' decision …
available to programmers for postmortem debugging. Consequently, programmers' decision …
Clap: Recording local executions to reproduce concurrency failures
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 …
steps. First, it logs thread local execution paths at runtime. Second, offline, it computes …
Feature-centric evaluation for efficient cascaded object detection
H Schneiderman - Proceedings of the 2004 IEEE Computer …, 2004 - ieeexplore.ieee.org
We describe a cascaded method for object detection. This approach uses a novel
organization of the first cascade stage called" feature-centric" evaluation which re-uses …
organization of the first cascade stage called" feature-centric" evaluation which re-uses …
Stateless model checking concurrent programs with maximal causality reduction
J Huang - ACM SIGPLAN Notices, 2015 - dl.acm.org
We present maximal causality reduction (MCR), a new technique for stateless model
checking. MCR systematically explores the state-space of concurrent programs with a …
checking. MCR systematically explores the state-space of concurrent programs with a …
Jmvx: Fast Multi-threaded Multi-version Execution and Record-Replay for Managed Languages
D Schwartz, A Kowshik, L Pina - … of the ACM on Programming Languages, 2024 - dl.acm.org
Multi-Version eXecution (MVX) is a technique that deploys many equivalent versions of the
same program—variants—as a single program, with direct applications in important fields …
same program—variants—as a single program, with direct applications in important fields …
Towards practical default-on multi-core record/replay
We present Castor, a record/replay system for multi-core applications that provides
consistently low and predictable overheads. With Castor, developers can leave record and …
consistently low and predictable overheads. With Castor, developers can leave record and …
Efficient dependency detection for safe Java test acceleration
Slow builds remain a plague for software developers. The frequency with which code can be
built (compiled, tested and packaged) directly impacts the productivity of developers: longer …
built (compiled, tested and packaged) directly impacts the productivity of developers: longer …
Grail: Context-aware fixing of concurrency bugs
Writing efficient synchronization for multithreaded programs is notoriously hard. The
resulting code often contains subtle concurrency bugs. Even worse, many bug fixes …
resulting code often contains subtle concurrency bugs. Even worse, many bug fixes …
Persuasive prediction of concurrency access anomalies
Predictive analysis is a powerful technique that exposes concurrency bugs in un-exercised
program executions. However, current predictive analysis approaches lack the …
program executions. However, current predictive analysis approaches lack the …
Causal-consistent replay debugging for message passing programs
Debugging of concurrent systems is a tedious and error-prone activity. A main issue is that
there is no guarantee that a bug that appears in the original computation is replayed inside …
there is no guarantee that a bug that appears in the original computation is replayed inside …