Uncovering performance problems in Java applications with reference propagation profiling

ICSE(2012)

引用 70|浏览51
暂无评分
摘要
Many applications suffer from run-time bloat: excessive memory usage and work to accomplish simple tasks. Bloat significantly affects scalability and performance, and exposing it requires good diagnostic tools. We present a novel analysis that profiles the run-time execution to help programmers uncover potential performance problems. The key idea of the proposed approach is to track object references, starting from object creation statements, through assignment statements, and eventually statements that perform useful operations. This propagation is abstracted by a representation we refer to as a reference propagation graph. This graph provides path information specific to reference producers and their run-time contexts. Several client analyses demonstrate the use of reference propagation profiling to uncover run-time inefficiencies. We also present a study of the properties of reference propagation graphs produced by profiling 36 Java programs. Several cases studies discuss the inefficiencies identified in some of the analyzed programs, as well as the significant improvements obtained after code optimizations.
更多
查看译文
关键词
object creation statement,potential performance problem,reference propagation profiling,run-time inefficiency,object reference,run-time execution,reference producer,run-time context,run-time bloat,java application,reference propagation graph,uncovering performance problem,reference propagation,code optimization,java,resource management,graph theory,data structures,optimization,vectors
AI 理解论文
溯源树
样例
生成溯源树,研究论文发展脉络
Chat Paper
正在生成论文摘要