A scalable technique for characterizing the usage of temporaries in framework-intensive Java applications

Bruno Dufour, Barbara G. Ryder, Gary Sevitsky
2008 Proceedings of the 16th ACM SIGSOFT International Symposium on Foundations of software engineering - SIGSOFT '08/FSE-16  
Framework-intensive applications (e.g., Web applications) heavily use temporary data structures, often resulting in performance bottlenecks. This paper presents an optimized blended escape analysis to approximate object lifetimes and thus, to identify these temporaries and their uses. Empirical results show that this optimized analysis on average prunes 37% of the basic blocks in our benchmarks, and achieves a speedup of up to 29 times compared to the original analysis. Newly defined metrics
more » ... defined metrics quantify key properties of temporary data structures and their uses. A detailed empirical evaluation offers the first characterization of temporaries in frameworkintensive applications. The results show that temporary data structures can include up to 12 distinct object types and can traverse through as many as 14 method invocations before being captured.
doi:10.1145/1453101.1453111 dblp:conf/sigsoft/DufourRS08 fatcat:r72djwjeefd7fixwlma7mkqxpu