Blended Program Analysis

Speaker: Dr. Barbara Ryder, Virginia Tech
When: Friday, April 03, 2009
Time: 11:15am-12:15pm
Where: Torgersen 2150

Abstract:
A new analysis paradigm, blended program analysis, enables practical,
effective analysis of large framework-intensive Java applications for
performance diagnosis. Blended analysis combines a dynamic
representation of program calling structure with a static analysis
applied to a region of that calling structure with observed
performance problems.

The initial instantiation of the paradigm addresses the issue of
performance bottlenecks stemming from overuse of temporary objects,
common in these applications. A blended escape analysis, which
approximates object effective lifetimes, has been designed and
implemented. Experiments demonstrating its utility in explaining the
usage of newly created objects in a program region have yielded
promising results (ISSTA07, FSE08). A case study on the Trade
benchmark shows how blended escape analysis helped to locate the
single call path responsible for a performance problem involving
objects created at 9 distinct sites and as far away as 6 levels of
call, in a region which calls 223 distinct methods with a maximum call
depth of 20.

This talk will present the blended analysis paradigm, discuss the
blended escape analysis results obtained, new metrics designed to
measure precision and cost of the analysis, and future work.