BEST: A symbolic testing tool for predicting multi-threaded program failures

Malay K. Ganai, Nipun Arora, Chao Wang, Aarti Gupta, Gogul Balakrishnan

Research output: Chapter in Book/Report/Conference proceedingConference contribution

12 Scopus citations

Abstract

We present a tool BEST (Binary instrumentation-based Error-directed Symbolic Testing) for predicting concurrency violations. We automatically infer potential concurrency violations such as atomicity violations from an observed run of a multi-threaded program, and use precise modeling and constraint-based symbolic (non-enumerative) search to find feasible violating schedules in a generalization of the observed run. We specifically focus on tool scalability by devising POR-based simplification steps to reduce the formula and the search space by several orders-of-magnitude. We have successfully applied the tool to several publicly available C/C++/Java programs and found several previously known/unknown concurrency related bugs. The tool also has extensive visual support for debugging.

Original languageEnglish (US)
Title of host publication2011 26th IEEE/ACM International Conference on Automated Software Engineering, ASE 2011, Proceedings
Pages596-599
Number of pages4
DOIs
StatePublished - 2011
Event2011 26th IEEE/ACM International Conference on Automated Software Engineering, ASE 2011 - Lawrence, KS, United States
Duration: Nov 6 2011Nov 10 2011

Publication series

Name2011 26th IEEE/ACM International Conference on Automated Software Engineering, ASE 2011, Proceedings

Other

Other2011 26th IEEE/ACM International Conference on Automated Software Engineering, ASE 2011
Country/TerritoryUnited States
CityLawrence, KS
Period11/6/1111/10/11

All Science Journal Classification (ASJC) codes

  • Software

Fingerprint

Dive into the research topics of 'BEST: A symbolic testing tool for predicting multi-threaded program failures'. Together they form a unique fingerprint.

Cite this