Measurement and Application of Dynamic Receiver Class Distributions

作者: Craig Chambers , David Grove , Charles D. Garrett , Jeffrey Dean

DOI:

关键词:

摘要: Dynamic binding slows down object-oriented programs. dispatch mechanisms which work well where all receiver classes are equally likely too pessimistic because at most call sites one class predominates. We apply dynamic profile information to determine the execution frequency distributions of receivers sites. show that these heavily skewed towards commonly occurring across several different languages. Moreover, we stable program inputs, from version a another, and even some extent programs share library code. Finally, demonstrate significant run-time performance improvements for can be gained by exploiting contained in relatively simple optimizing compiler.

参考文章(19)
Brian W Kernighan, Dennis M Ritchie, None, The C Programming Language, Second Edition Prentice-Hall. ,(1988)
Adele Goldberg, David Robson, Smalltalk-80: The Language and its Implementation ,(1983)
Pohua P. Chang, Scott A. Mahlke, Wen-Mei W. Hwu, Using profile information to assist classic code optimizations Software - Practice and Experience. ,vol. 21, pp. 1301- 1321 ,(1991) , 10.1002/SPE.4380211204
Craig Chambers, David Ungar, Making pure object-oriented languages practical Conference proceedings on Object-oriented programming systems, languages, and applications - OOPSLA '91. ,vol. 26, pp. 1- 15 ,(1991) , 10.1145/117954.117955
L. Peter Deutsch, Allan M. Schiffman, Efficient implementation of the smalltalk-80 system symposium on principles of programming languages. pp. 297- 302 ,(1984) , 10.1145/800017.800542
Pohua P. Chang, Scott A. Mahlke, William Y. Chen, Wen-Mei W. Hwu, Profile-guided automatic inline expansion for C programs Software - Practice and Experience. ,vol. 22, pp. 349- 369 ,(1992) , 10.1002/SPE.4380220502
Rebecca J. Wirfs-Brock, Ralph E. Johnson, Surveying current research in object-oriented design Communications of the ACM. ,vol. 33, pp. 104- 124 ,(1990) , 10.1145/83880.84526
David Ungar, Randall B. Smith, Self: The power of simplicity Conference proceedings on Object-oriented programming systems, languages and applications - OOPSLA '87. ,vol. 22, pp. 227- 242 ,(1987) , 10.1145/38765.38828
C. Chambers, D. Ungar, E. Lee, An efficient implementation of SELF a dynamically-typed object-oriented language based on prototypes conference on object oriented programming systems languages and applications. ,vol. 24, pp. 49- 70 ,(1989) , 10.1145/74877.74884
Urs Hölzle, David Ungar, Optimizing dynamically-dispatched calls with run-time type feedback programming language design and implementation. ,vol. 29, pp. 326- 336 ,(1994) , 10.1145/178243.178478