kirancodes.me
To Proof Maintenance & Beyond!

ECHO: instantaneous in situ race detection in the IDE

Sheng Zhan, Jeff Huang

Abstract

We present ECHO, a new technique that detects data races instantaneously in the IDE while developers code. ECHO is the first technique of its kind for incremental race detection supporting both code addition and deletion in the IDE. Unlike conventional static race detectors, ECHO warns developers of potential data races immediately as they are introduced into the program. The core underpinning ECHO is a set of new change-aware static analyses based on a novel static happens-before graph that, given a program change, efficiently compute the change-relevant information without re-analyzing the whole program. Our evaluation within a Java environment on both popular benchmarks and real- world applications shows promising results: for each code addition, or deletion, ECHO can instantly pinpoint all the races in a few milliseconds on average, three to four orders of magnitude faster than a conventional whole-program race detector with the same precision.

BibTeX
@inproceedings{Zhan-Huang:FSE16,
  author    = {Sheng Zhan and
               Jeff Huang},
  title     = {{ECHO:} instantaneous in situ race detection in the {IDE}},
  booktitle = {FSE},
  pages     = {775--786},
  publisher = {{ACM}},
  year      = {2016},
}

Related papers