(Enter summary)
Abstract: Whole-Program Optimization of Object-Oriented Languages
by Jeffrey Adgate Dean
Chairperson of the Supervisory Committee: Professor Craig Chambers
Department of Computer
Science and Engineering
This dissertation examines the use of whole-program optimization as a way of improving
the performance of object-oriented programming languages. Although object-oriented programming
conveys a number of software engineering benefits, heavy application of its trademark
feature, dynamic dispatching, imposes... (Update)
Context of citations to this paper: More
.... at the compile time and that the programmer will not add, remove or modify any classes without recompiling the complete program [5]. This allows the compiler to perform a wide range of aggressive interprocedural optimizations, including object inlining and class...
.... in which the compiler operates preventing optimizations that may require a whole program analysis such as Class Hierarchy Analysis (cha) Dean96] 57 Secondly, the time spent during compilation may be poorly scheduled within the execution of the application. For example,...
Cited by: More
Effective Interprocedural Optimization of Object-Oriented Languages - Grove (1998)
(Correct)
Optimizing Object-Oriented Languages through Architectural.. - Tourwe, De Meuter (1999)
(Correct)
Object-Oriented Architectural Support for a Java.. - Vijaykrishnan.. (1998)
(Correct)
Similar documents (at the sentence level): More
10.6%: Whole-Program Optimization of Object-Oriented Languages - Chambers, Dean, Grove (1996)
(Correct)
7.3%: Towards Better Inlining Decisions Using Inlining Trials - Dean, Chambers (1994)
(Correct)
7.3%: Selective Specialization for Object-Oriented Languages - Dean, Chambers, Grove (1995)
(Correct)
Active bibliography (related documents): More All
1.5: Vortex: An Optimizing Compiler for Object-Oriented.. - Dean, DeFouw, Grove.. (1996)
(Correct)
0.5: The Cecil Language, Specification and Rationale - Version 2.0 - Chambers (1996)
(Correct)
0.5: Identifying Profitable Specialization in Object-Oriented.. - Dean, Chambers, Grove (1994)
(Correct)
Similar documents based on text: More All
0.4: Rotation Patterns In The - Large-Scale Solar Corona
(Correct)
0.1: Almost-Whole-Program Compilation - Budimlic, Kennedy (2002)
(Correct)
0.0: On Using Materialization Strategies for a Temporal .. - Ferrari, Bertino, ..
(Correct)
Related documents from co-citation: More All
8: Customization: Optimizing compiler technology for SELF (context) - Chambers, Ungar - 1989
8: Concrete Type Inference: Delivering Object-Oriented Applications (context) - Agesen - 1996
7: Vortex: An optimizing compiler for object-oriented languages
- Dean, DeFouw et al. - 1996
BibTeX entry: (Update)
Jeffrey Dean. Whole Program Optimization of Object-Oriented Languages. PhD thesis, University of Washington, November 1996. TR-96-11-05. http://citeseer.ist.psu.edu/article/dean96wholeprogram.html More
@techreport{ dean96wholeprogram,
author = "J. Dean",
title = "Whole-Program Optimization of Object-Oriented Languages",
number = "TR-96-11-05",
year = "1996",
url = "citeseer.ist.psu.edu/article/dean96wholeprogram.html" }
Citations (may not include all citations):
1074
The Definition of Standard ML (context) - Milner, Tofte et al. - 1990
638
Partial Evaluation and Automatic Program Generation (context) - Jones, Gomarde et al. - 1993
484
Common Lisp: The Language (context) - Steele - 1990
461
Programming Language (context) - Stroustrup - 1991
407
Trace Scheduling: A Technique for Global Microcode Compactio.. (context) - Fisher - 1981
386
ATOM: A System for Building Customized Program Analysis Tool.. (context) - Srivastava, Eustace - 1994
380
The Java Language Specification (context) - Gosling, Joy et al. - 1996
344
Design and Evaluation of a Compiler Algorithm for Prefetchin..
- Mowry, Lam et al. - 1992
342
Eiffel: the language (context) - Meyer - 1992
306
Self: The Power of Simplicity (context) - Ungar, Smith - 1987
257
Report on the Programming Language Haskell (context) - Hudak, Jones et al. - 1992
252
Analysis of Pointers and Structures (context) - Chase, Wegman et al. - 1990
220
Orbit: An Optimizing Compiler for Scheme (context) - Kranz, Kelsey et al. - 1986
190
Optimization of Object-Oriented Programs Using Static Class ..
- Dean, Grove et al. - 1995
185
Branch Prediction Strategies and Branch Target Buffer Design (context) - Lee, Smith - 1984
180
Efficient Context-Sensitive Pointer Analysis for C Programs
- Wilson, Lam - 1995
175
A Safe Approximate Algorithm for Interprocedural Pointer Ali..
- Landi, Ryder - 1992
171
EEL: Machine-Independent Executable Editing (context) - Larus, Schnarr - 1995
151
Object-Oriented Type Inference
- Palsberg, Schwartzbach - 1991
149
Precise Concrete Type Inference for Object-Oriented Language..
- Plevyak, Chien - 1994
145
Customization: Optimizing Compiler Technology for Self (context) - Chambers, Ungar - 1989
131
Interprocedural May-Alias Analysis for Pointers: Beyond k-Li..
- Deutsch - 1994
127
Control-Flow Analysis in Scheme (context) - Shivers - 1988
121
Efficient Implementation of the Smalltalk-80 System
- Peter, AllanM - 1984
95
Making Pure Object-Oriented Languages Practical
- Chambers, Ungar - 1991
92
An Introduction to Trellis/Owl (context) - Schaffert, Cooper et al. - 1986
90
Vortex: An Optimizing Compiler for Object-Oriented Languages
- Dean, DeFouw et al. - 1996
90
Effective Dynamic Compilation (context) - Auslander, Philipose et al. - 1996
89
Systems Programming with Modula (context) - Nelson - 1991
87
Profile-guided Automatic Inline Expansion for C Programs
- Chang, Mahlke et al. - 1992
85
Reducing Indirect Function Call Overhead in C++ Programs
- Calder, Grunwald - 1994
84
Predicate Classes
- Chambers - 1993
81
an Optimizing Compiler for Object-Oriented Programming Langu.. (context) - Chambers, Implementation et al. - 1992
80
Optimizing Dynamically-Dispatched Calls with Run-Time Type F.. (context) - Holzle, Ungar - 1994
79
Abstractions for Recursive Pointer Data Structures: Improvin..
- Hendren, Hummel et al. - 1992
72
A Semantic Model of Reference Counting and its Abstraction
- Hudak - 1986
69
ProfileGuided Receiver Class Prediction
- Grove, Dean et al. - 1995
64
Fast Static Analysis of C++ Virtual Function Calls
- Bacon, Sweeney - 1996
63
Static Type Checking of Multi-Methods
- Agrawal, DeMichiel et al. - 1991
62
Selective Specialization for Object-Oriented Languages
- Dean, Chambers et al. - 1995
60
Predicting Program Behavior Using Real or Estimated Profiles
- Wall - 1991
51
Simple and Effective Link-time Optimization of Modula-3 Prog..
- Fernandez - 1995
50
Elimination of Redundant Array Subscript Range Checks
- Kolte, Wolfe - 1995
50
Department of Computer Science and Engineering (context) - Chambers, Language et al. - 1993
49
The Cartesian Product Algorithm: Simple and Precise Type Inf..
- Agesen - 1995
48
Type Inference of Self: Analysis of Objects with Dynamic and..
- Agesen, Palsberg et al. - 1993
47
Simple and Effective Analysis of Statically-typed Object-Ori..
- Diwan, Moss et al. - 1996
43
Optimizing Multi-Method Dispatch Using Compressed Dispatch T.. (context) - Amiel, Gruber et al. - 1994
43
Avoiding Conditional Branches by Code Replication (context) - Mueller, Whalley - 1995
42
Eliminating Virtual Function Calls in C++ Programs
- Aigner, Holzle - 1996
40
Accurate Static Estimators for Program Optimization (context) - Wagner, Maverick et al. - 1994
37
Making Type Inference Practical (context) - Oxhoj, Palsberg et al. - 1992
36
Optimizing DynamicallyTyped Object-Oriented Languages With P..
- Holzle, Chambers et al. - 1991
35
Common Lisp Object System Specification XJ (context) - DeMichiel, Kiczales et al. - 1988
34
Branch Target Buffer Design and Optimization (context) - Perleberg, Smith - 1993
33
An Efficient Implementation of Self -- a Dynamically-Typed O..
- Chambers, Ungar et al. - 1989
33
ACM Transactions on Programming Languages and Systems (context) - Ait-Kaci, Boyer et al. - 1989
32
Whole-Program Optimization of Object-Oriented Languages
- Chambers, Dean et al. - 1996
31
Static Type Determination for C
- Pande, Ryder - 1994
31
University of Copenhagen (context) - Bondorf, System et al. - 1991
31
and Inline Expansion (context) - Allen, Johnson et al. - 1988
26
Intel Corporation (context) - Family, Manual - 1995
25
The Direct Cost of Virtual Function Calls in C (context) - Driesen, Holzle - 1996
25
Efficient Handling of Multiple Inheritance Hierarchies (context) - Caseau - 1993
22
A Portable Interface for On-the-Fly Instruction Space Modifi.. (context) - Keppel - 1991
21
and Ken Kennedy (context) - Cooper, Hall - 1992
21
Unreachable Procedures in Object-Oriented Programming
- Srivastava - 1992
19
Using Types to Avoid Redundant Specialization (context) - Ruf, Weise - 1991
19
A Framework for Selective Recompilation in the Presence of C..
- Chambers, Dean et al. - 1995
18
Message Dispatch on Pipelined Processors
- Driesen, Holzle et al. - 1995
17
Sun Microsystems (context) - Manual - 1991
16
Efficient Dynamic Look-up Strategy for Multi-Methods
- Chen, Turau et al. - 1994
15
Adaptive Optimization for Self: Reconciling High Performance.. (context) - Holzle - 1994
15
Trellis Object-Based Environment (context) - Schaffert, Cooper et al. - 1985
14
Sather Language Design and Performance Evaluation (context) - Lim, Stolcke - 1991
12
Efficient and Language-Independent Mobile Programs (context) - Adl-Tabatabai, Langdale et al. - 1996
11
Debugging Optimized Code with Dynamic Deoptimization (context) - Holzle, Chambers et al. - 1992
11
Concrete Type Analysis: A Comparison of Optimization Techniq.. (context) - Agesen, Holzle et al. - 1995
10
Reuse Through Inheritance: A Quantitative Study of C++ Softw..
- Bieman, Zhao - 1995
10
Yale University (context) - Consel, Manual - 1990
8
The Impact of Interprocedural Class Analysis on Optimization
- Grove - 1995
8
Towards a New Perspective on Partial Evaluation
- Katz, Weise - 1992
8
Smalltalk-80: The Lanaguge and its Implementation (context) - Goldberg, Robson - 1983
7
Owl Runs Fast (context) - Kilian - 1988
6
TIL: A Type-Directed Compiler for ML (context) - Tarditi, Morrisett et al. - 1996
5
Training Compilers to Make Better Inlining Decisions (context) - Dean, Chambers - 1993
4
Static Optimization Techniques for Object-Oriented Languages (context) - Agesen, Holzle - 1996
4
Make--a computer program for maintaining computer programs (context) - Feldman - 1979
4
Using and Porting GNU gcc Version (context) - Stallman - 1990
3
A type-based compiler foor Standard ML (context) - Shao, Appel - 1995
3
Xerox PARC Systems Sciences Laboratory (context) - Kiczales, Rodriguez et al. - 1989
3
First-Class Data-Type Representations in SchemeXerox (context) - Adams, Curtis et al. - 1993
2
Report on the Algorithmic Language Scheme (context) - Rees, Clinger - 1986
1
gprofpldi Call Graph Execution Profiler (context) - Graham, Kessler et al. - 1982
1
Interprocedural Constant Propagation: A Study of Jump Functi.. (context) - Linda - 1993
1
Technical Report Publication S (context) - Dahl, Myhrhaug et al. - 1973
1
Bidrectional Object Layout for Separate Compilation (context) - Myers - 1995
1
Microprocessor User's Manual-Version (context) - Martin, Chen et al. - 1995
1
An Analysis of Inline Substition for a Structured Programmin.. (context) - Scheifler - 1977
The graph only includes citing articles where the year of publication is known.
Documents on the same site (http://bauhaus.cs.washington.edu/research/tr/tr-by-name.html): More
Fast Median Filtering Algorithms for Mesh Computers - Tanimoto (1995)
(Correct)
A New Data Structure For Fast Approximate Matching - Berman (1994)
(Correct)
Privacy Interfaces for Information Management - Lau, Etzioni, Weld (1999)
(Correct)
Online articles have much greater impact More about CiteSeer.IST Add search form to your site Submit documents Feedback
CiteSeer.IST - Copyright Penn State and NEC