Overlapping execution with transfer using non-strict execution for mobile programs
Proceedings of the eighth international conference on Architectural support for programming languages and operating systems
The Jalapeño dynamic optimizing compiler for Java
JAVA '99 Proceedings of the ACM 1999 conference on Java Grande
Java annotation-aware just-in-time (AJIT) complilation system
JAVA '99 Proceedings of the ACM 1999 conference on Java Grande
Reducing transfer delay using Java class file splitting and prefetching
Proceedings of the 14th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
Practicing JUDO: Java under dynamic optimizations
PLDI '00 Proceedings of the ACM SIGPLAN 2000 conference on Programming language design and implementation
Adaptive optimization in the Jalapeño JVM
OOPSLA '00 Proceedings of the 15th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
Using annotations to reduce dynamic optimization time
Proceedings of the ACM SIGPLAN 2001 conference on Programming language design and implementation
A framework for reducing the cost of instrumented code
Proceedings of the ACM SIGPLAN 2001 conference on Programming language design and implementation
Java Virtual Machine Specification
Java Virtual Machine Specification
A framework for optimizing Java using attributes
CASCON '00 Proceedings of the 2000 conference of the Centre for Advanced Studies on Collaborative research
Overview of the IBM Java just-in-time compiler
IBM Systems Journal
IBM Systems Journal
VHC: Quickly Building an Optimizer for Complex Embedded Architectures
Proceedings of the international symposium on Code generation and optimization: feedback-directed and runtime optimization
NWSLite: a light-weight prediction utility for mobile devices
Proceedings of the 2nd international conference on Mobile systems, applications, and services
Dynamic selection of application-specific garbage collectors
Proceedings of the 4th international symposium on Memory management
Using trace analysis for improving performance in COTS systems
CASCON '04 Proceedings of the 2004 conference of the Centre for Advanced Studies on Collaborative research
Using Phase Behavior in Scientific Application to Guide Linux Operating System Customization
IPDPS '05 Proceedings of the 19th IEEE International Parallel and Distributed Processing Symposium (IPDPS'05) - Workshop 10 - Volume 11
Instrumenting annotated programs
Proceedings of the 1st ACM/USENIX international conference on Virtual execution environments
ACM Transactions on Architecture and Code Optimization (TACO)
Phase-based visualization and analysis of Java programs
Science of Computer Programming - Special issue: Principles and practices of programming in Java (PPPJ 2004)
Application-specific garbage collection
Journal of Systems and Software
Detecting malicious java code using virtual machine auditing
SSYM'03 Proceedings of the 12th conference on USENIX Security Symposium - Volume 12
Java client ahead-of-time compiler for embedded systems
Proceedings of the 2007 ACM SIGPLAN/SIGBED conference on Languages, compilers, and tools for embedded systems
Design, implementation, and evaluation of a compilation server
ACM Transactions on Programming Languages and Systems (TOPLAS)
Phase-based adaptive recompilation in a JVM
Proceedings of the 6th annual IEEE/ACM international symposium on Code generation and optimization
Client ahead-of-time compiler for embedded Java platforms
Software—Practice & Experience
Cross-Input Learning and Discriminative Prediction in Evolvable Virtual Machines
Proceedings of the 7th annual IEEE/ACM International Symposium on Code Generation and Optimization
Novel online profiling for virtual machines
Proceedings of the 6th ACM SIGPLAN/SIGOPS international conference on Virtual execution environments
Resource allocation robustness in multi-core embedded systems with inaccurate information
Journal of Systems Architecture: the EUROMICRO Journal
A method-based ahead-of-time compiler for android applications
CASES '11 Proceedings of the 14th international conference on Compilers, architectures and synthesis for embedded systems
JIT compilation policy for modern machines
Proceedings of the 2011 ACM international conference on Object oriented programming systems languages and applications
The use of traces for inlining in java programs
LCPC'04 Proceedings of the 17th international conference on Languages and Compilers for High Performance Computing
Exploring single and multilevel JIT compilation policy for modern machines 1
ACM Transactions on Architecture and Code Optimization (TACO)
Hi-index | 0.00 |
In this paper, we describe a novel execution environment for Java programs that substantially improves execution performance by incorporating both on-line and off-line profile information to guide dynamic optimization. By using both types of profile collection techniques, we are able to exploit the strengths of each constituent approach: profile accuracy and low overhead.Such coupling also reduces the negative impact of these approaches when each is used in isolation. On-line profiling introduces overhead for dynamic instrumentation, measurement, and decision making. Off-line profile information can be inaccurate when program inputs for execution and optimization differ from those used for profiling. To combat these drawbacks and to achieve the benefits from both online and off-line profiling, we developed a dynamic compilation system (based on JikesRVM) that makes use of both. As a result, we are able improve Java program performance by 9% on average, for the programs studied.