This paper presents a strategy, called almost-whole-program compilation, for extending the benefits of whole-program optimization to large collections of Java components that are packaged as a group after the development phase. This strategy has been implemented in a framework that uses Java visibility and scoping rules to transform a collection of classes into a package that is amenable to whole-program optimizations, without precluding extensions to the optimized and compiled code. Thus, it enables the Java developer to balance performance against flexibility of the program after the development phase, without compromising the design process. The transformation is shown to incur only modest performance penalties, which are more than compe...
Computer applications are increasingly being written in object-oriented languages like Java and C++ ...
This paper concentrates on optimizations which rely on the knowledge of the target architecture, so ...
This report proposes a new approach to the optimized execution of Javabytecode: static analysis is u...
154 p.Thesis (Ph.D.)--University of Illinois at Urbana-Champaign, 2004.We also consider possibilitie...
The Java programming environment uses a highly-developed virtual machine (VM) to execute its program...
Distributed run-time code generation is a useful technique that can easily be implemented using the ...
Interprocedural optimizations are important in Java because the object-oriented programming style en...
. We present a technique to measure and detect changes in the behavioral patterns of applications. I...
Java is a popular object oriented programming language suitable for writing Java programs. Sometimes...
Abstract. Inefficient use of Java containers is an important source of run-time inefficiencies in la...
We present a set of techniques for reducing the memory consumption of object-oriented programs. Thes...
Designing and implementing generic software components using design patterns like proxy and facade [...
Optimizing compilers use heuristics to control different aspects of compilation and to construct app...
The object-oriented style of programming facilitates program adaptation and enhances program generic...
Dynamic class loading is an integral part of the Java programming language, offering a number advant...
Computer applications are increasingly being written in object-oriented languages like Java and C++ ...
This paper concentrates on optimizations which rely on the knowledge of the target architecture, so ...
This report proposes a new approach to the optimized execution of Javabytecode: static analysis is u...
154 p.Thesis (Ph.D.)--University of Illinois at Urbana-Champaign, 2004.We also consider possibilitie...
The Java programming environment uses a highly-developed virtual machine (VM) to execute its program...
Distributed run-time code generation is a useful technique that can easily be implemented using the ...
Interprocedural optimizations are important in Java because the object-oriented programming style en...
. We present a technique to measure and detect changes in the behavioral patterns of applications. I...
Java is a popular object oriented programming language suitable for writing Java programs. Sometimes...
Abstract. Inefficient use of Java containers is an important source of run-time inefficiencies in la...
We present a set of techniques for reducing the memory consumption of object-oriented programs. Thes...
Designing and implementing generic software components using design patterns like proxy and facade [...
Optimizing compilers use heuristics to control different aspects of compilation and to construct app...
The object-oriented style of programming facilitates program adaptation and enhances program generic...
Dynamic class loading is an integral part of the Java programming language, offering a number advant...
Computer applications are increasingly being written in object-oriented languages like Java and C++ ...
This paper concentrates on optimizations which rely on the knowledge of the target architecture, so ...
This report proposes a new approach to the optimized execution of Javabytecode: static analysis is u...