Optimizing dynamically-dispatched calls with run-time type feedback
Optimizing dynamically-dispatched calls with run-time type feedback
复制标题
通过运行时类型反馈优化动态分派的调用
DOI:
10.1145/178243.178478
复制
发表时间:
1994
期刊:
影响因子:
--
通讯作者:
D. Ungar
中科院分区:
文献类型:
--
作者:
Urs Hölzle;D. Ungar
Abstrach Object-oriented programs are difficult to optimize because they execute many dynamically-dispatched calls. These calls cannot easily be eliminated because the compiler does not know which callee will be invoked at runtime. We have developed a simple technique that feeds back type information from the runtime system to the compiler. With this type feedback, the compiler can inline any dynamically-dispatched call. Our compiler drastically reduces the calI frequency of a suite of large SELF applications (by a factor of 3.6) and improves performance by a factor of 1.7. We believe that type feedback could significantly reduce call frequencies and improve performance for most other objectoriented languages (statically-typed or not) as well as for languages with type-dependent operations such as generic arithmetic.