The object-oriented style of programming facilitates program adaptation and enhances program genericness, but at the expense of eciency. We demonstrate experimentally that state-of-the-art Java compilers fail to compensate for the use of object-oriented abstractions in the implementation of generic programs, and that program specialization can eliminate a signicant portion of these overheads. We present an automatic program specializer for Java, illustrate its use through detailed case studies, and demonstrate experimentally that it can signicantly reduce program execution time. Although automatic program specialization could be seen as being subsumed by existing optimizing compiler technology, we show that specialization and compiler optim...
Optimizing compilers use heuristics to control different aspects of compilation and to construct app...
Abstract. This paper proposes a run-time bytecode specialization (BCS) technique that analyzes progr...
Code specialization is a well-known technique used to produce more efficient code from a generic one...
The object-oriented style of programming facilitates program adaptation and enhances program generic...
: Automatic program specialization can derive efficient implementations from generic components, thu...
Abstract. Automatic program specialization can derive efficient implementations from generic compone...
The use of partial evaluation for specializing programs written in im-perative languages such as C a...
The use of partial evaluation for specializing programs written in imperative languages such as C an...
Run-time specialization (RTS) is a technique that e#ciently generates specialized programs with resp...
Dynamic dispatching is a major source of run-time overhead in object-oriented languages, due both to...
The performance of object-oriented languages can be greatly improved if methods can be specialized f...
Abstract. In this paper, we consider a direct, source-to-source, specialization of Java programs. In...
Designing and implementing generic software components using design patterns like proxy and facade [...
Interpretation and run-time compilation techniques are becoming increasingly important due to the ne...
Abstract. Application performance is heavily dependent on the com-piler optimizations. Modern compil...
Optimizing compilers use heuristics to control different aspects of compilation and to construct app...
Abstract. This paper proposes a run-time bytecode specialization (BCS) technique that analyzes progr...
Code specialization is a well-known technique used to produce more efficient code from a generic one...
The object-oriented style of programming facilitates program adaptation and enhances program generic...
: Automatic program specialization can derive efficient implementations from generic components, thu...
Abstract. Automatic program specialization can derive efficient implementations from generic compone...
The use of partial evaluation for specializing programs written in im-perative languages such as C a...
The use of partial evaluation for specializing programs written in imperative languages such as C an...
Run-time specialization (RTS) is a technique that e#ciently generates specialized programs with resp...
Dynamic dispatching is a major source of run-time overhead in object-oriented languages, due both to...
The performance of object-oriented languages can be greatly improved if methods can be specialized f...
Abstract. In this paper, we consider a direct, source-to-source, specialization of Java programs. In...
Designing and implementing generic software components using design patterns like proxy and facade [...
Interpretation and run-time compilation techniques are becoming increasingly important due to the ne...
Abstract. Application performance is heavily dependent on the com-piler optimizations. Modern compil...
Optimizing compilers use heuristics to control different aspects of compilation and to construct app...
Abstract. This paper proposes a run-time bytecode specialization (BCS) technique that analyzes progr...
Code specialization is a well-known technique used to produce more efficient code from a generic one...