Skip to main navigation Skip to search Skip to main content

HEAT: A combined approach for thread escape analysis

  • Qichang Chen
  • , Liqiang Wang
  • , Zijiang Yang
  • University of Wyoming

Research output: Contribution to journal › Article › peer-review

3 Scopus citations

Abstract

Thread escape analysis can determine whether and when a variable becomes shared by multiple threads, which is a foundation for many other program analysis and software testing techniques. Most existing escape analysis tools are either purely dynamic or static analyses. Static analysis, which considers all possible behaviors of a program, may produce false positives; whereas dynamic approaches miss the information from unexecuted code sections of a program. This paper presents a hybrid approach that integrates static and dynamic analyses to address this problem. We first perform static analysis to obtain succinct summaries of accesses to all variables and interprocedural information. Dynamic analysis is then used to confirm variable sharing; for unexecuted code, we determine the sharing of variables by performing an interprocedural synthesis based on the runtime information and static summaries. Compared to dynamic analysis, the hybrid approach is able to determine the escape property of variables in unexecuted code. Compared to static analysis, the hybrid approach produces fewer false alarms. We implemented this hybrid escape analysis in Java. Our experiments on several benchmarks and real-world applications show that the hybrid approach improves the accuracy of escape analysis compared to existing approaches and significantly reduces the performance overhead of a subsequent program analysis.

Original languageEnglish
Pages (from-to)135-143
Number of pages9
JournalInternational Journal of System Assurance Engineering and Management
Volume2
Issue number2
DOIs
StatePublished - Jun 2011

Keywords

  • Concurrent program
  • Dynamic analysis
  • Program analysis
  • Software testing
  • Thread escape analysis

Fingerprint

Dive into the research topics of 'HEAT: A combined approach for thread escape analysis'. Together they form a unique fingerprint.

Cite this