Deconstructing concurrency heisenbugs

@article{Ball2009DeconstructingCH,
  title={Deconstructing concurrency heisenbugs},
  author={Thomas Ball and Sebastian Burckhardt and Jonathan de Halleux and Madan Musuvathi and Shaz Qadeer},
  journal={2009 31st International Conference on Software Engineering - Companion Volume},
  year={2009},
  pages={403-404}
}
Concurrency is pervasive in large systems. Unexpected interference among threads often results in “Heisenbugs“ that are extremely difficult to reproduce and eliminate. We have implemented a tool called CHESS for finding and reproducing such bugs. When attached to a program, CHESS takes control of thread scheduling and uses efficient search techniques to drive the program through possible thread interleavings. This systematic exploration of program behavior enables CHESS to quickly uncover bugs… CONTINUE READING