A dynamic evaluation of the precision of static heap abstractions

Percy Liang*, Omer Tripp, Mooly Sagiv, Mayur Naik

*Corresponding author for this work

Research output: Contribution to journalArticlepeer-review

Abstract

The quality of a static analysis of heap-manipulating programs is largely determined by its heap abstraction. Object allocation sites are a commonly-used abstraction, but are too coarse for some clients. The goal of this paper is to investigate how various refinements of allocation sites can improve precision. In particular, we consider abstractions that use call stack, object recency, and heap connectivity information. We measure the precision of these abstractions dynamically for four different clients motivated by concurrency and on nine Java programs chosen from the DaCapo benchmark suite. Our dynamic results shed new light on aspects of heap abstractions that matter for precision, which allows us to more effectively navigate the large space of possible heap abstractions.

Original languageEnglish
Pages (from-to)411-427
Number of pages17
JournalACM SIGPLAN Notices
Volume45
Issue number10
DOIs
StatePublished - Oct 2010

Keywords

  • Concurrency
  • Dynamic analysis
  • Heap abstractions
  • Static analysis

Fingerprint

Dive into the research topics of 'A dynamic evaluation of the precision of static heap abstractions'. Together they form a unique fingerprint.

Cite this