ECOOP 2015
Sun 5 - Fri 10 July 2015 Prague, Czech Republic
Thu 9 Jul 2015 11:00 - 11:30 at Bohemia - Developer Assistance Chair(s): Michael Van De Vanter

Performance problems in managed languages are extremely difficult to find. Despite many efforts to find those problems, most existing work focuses on how to debug a (user-provided) test execution in which performance problems already manifest. It remains largely unknown how to effectively find performance bugs before software release. As a result, performance bugs often escape to production runs, hurting software reliability and user experience. This paper describes PerfBlower, a general performance testing framework that allows developers to quickly test Java programs to find memory-related performance problems. PerfBlower provides (1) a novel specification language SDL to describe a general class of performance problems that have observable symptoms; (2) an automated test oracle via virtual amplification; and (3) precise reference-path-based diagnostic information via object mirroring. Using this framework, we have amplified three different types of problems. Our experimental results demonstrate that (1) SDL is expressive enough to describe various memory-related performance problems; (2) PerfBlower successfully distinguishes executions with and without problems; 8 unknown problems are quickly discovered under small workloads; and (3) PerfBlower outperforms existing detectors and does not miss any bugs studied before in the literature.

Thu 9 Jul

Displayed time zone: Amsterdam, Berlin, Bern, Rome, Stockholm, Vienna change

10:30 - 12:00
Developer AssistanceResearch Track at Bohemia
Chair(s): Michael Van De Vanter Oracle Labs
10:30
30m
Talk
Optimization Coaching for JavaScript
Research Track
Vincent St-Amour Northeastern University, Shu-yu Guo Mozilla Corporation
11:00
30m
Talk
PerfBlower: Quickly Detecting Memory-Related Performance Problems via Amplification
Research Track
Lu Fang , Liang Dou East China Normal University, Harry Xu University of California, Irvine
11:30
30m
Talk
Hybrid DOM-Sensitive Change Impact Analysis for JavaScript
Research Track
Saba Alimadadi University of British Columbia, Ali Mesbah University of British Columbia, Karthik Pattabiraman University of British Columbia