Abstract | ||
---|---|---|
Object-oriented programs can be optimized either dynamically, i.e., based on run-time information, or statically, i.e., based on program analysis alone. Two promising optimization techniques for object-oriented languages are type feedback (dynamic) and concrete type inference (static). We directly compare the two techniques, evaluating their effectiveness on a suite of 23 S ELF programs while keeping other factors constant. Our results show that both systems inline >95% of all sends and deliver similar overall performance with one exception: SELF's automatic coercion of machine integers to arbitrary-precision integers upon overflow confounds type inference and slows down arithmetic-intensive benchmarks. We also show that a system combining the two optimizations can combine their strengths and outperform each individual optimization. We discuss several other issues which, given the comparable run-time performance, may influence the choice between type feedback and type inference. |
Year | Venue | Keywords |
---|---|---|
1995 | TAPOS | static optimization technique,object-oriented language,program analysis,object oriented language,object oriented programming,type inference |
Field | DocType | Volume |
Integer,Fifth-generation programming language,Object-oriented programming,Method,Suite,Computer science,Object type,Type inference,Theoretical computer science,Program analysis | Journal | 1 |
Issue | Citations | PageRank |
3 | 15 | 1.52 |
References | Authors | |
14 | 2 |
Name | Order | Citations | PageRank |
---|---|---|---|
Urs Hölzle | 1 | 3492 | 346.29 |
Ole Agesen | 2 | 468 | 66.64 |