Title
Reconciling responsiveness with performance in pure object-oriented languages
Abstract
Dynamically dispatched calls often limit the performance of object-oriented programs, since opject-oriented programming encourages factoring code into small, reusable units, thereby increasing the frequency of these expensive operations. Frequent calls not only slow down execution with the dispatch overhead per se, but more importantly they hinder optimization by limiting the range and effectiveness of standard global optimizations. In particular, dynamically dispatched calles prevent standard interprocedual optimizations that depend on the availability of a static call graph. The SELF implementation described here offers tow novel approaches to optimization. Type feedback speculatively inlines dynamically dispatched calls based on profile information that predicts likely receiver classes. Adaptive optimization reconciles optimizing compilation with interactive performance by incrementally optimizing only the frequently executed parts of a program. When combined, these two techniques result in a system that can execute programs significantly faster than previous systems while retaining much of the interactiveness of an interpreted system.
Year
DOI
Venue
1996
10.1145/233561.233562
ACM Trans. Program. Lang. Syst.
Keywords
Field
DocType
standard global optimizations,frequent call,additional key words and phrases: adaptive optimization,pause clustering,type feedback,standard interprocedual optimizations,self implementation,previous system,interactive performance,expensive operation,dispatch overhead,likely receiver class,run-time compilation,pure object-oriented language,profile-based optimization,adaptive optimization,reconciling responsiveness
Adaptive optimization,Programming language,Object-oriented programming,Adaptive system,Computer science,Call graph,Interpreter,Cluster analysis,Factoring,Limiting
Journal
Volume
Issue
ISSN
18
4
0164-0925
Citations 
PageRank 
References 
52
3.21
25
Authors
2
Name
Order
Citations
PageRank
Urs Hölzle13492346.29
David Ungar21530328.37