Dynamic compilation is typically performed in a separate thread, asynchronously with the remaining application threads. This com-pilation thread is often scheduled for execution in a simple round-robin fashion either by the operating system or by the virtual ma-chine itself. Despite the popularity of this approach in production virtual machines, it has a number of shortcomings that can lead to suboptimal performance. This paper explores a number of issues surrounding asyn-chronous dynamic compilation in a virtual machine. We begin by describing the shortcomings of current approaches and demon-strate their potential to perform poorly under certain conditions. We describe the importance of enforcing a minimum level of uti-lization for the com...
Many Virtual Execution Environments (VEEs) rely on Justin-time (JIT) compilation technology for code...
Programs compiled by Gambit, our Scheme compiler, achieve performance as much as twice that of the f...
All high-performance production JVMs employ an adaptive strategy for program execution. Methods are ...
Abstract Dynamic or Just-in-Time (JIT) compilation is crucial to achieve acceptable performance for ...
ILDJIT, a new-generation dynamic compiler and virtual machine designed to support parallel compilati...
International audienceAs systems grow more and more complex, raising severe evolution and management...
The Java Virtual Machine (Standard Edition) normally interprets Java byte code but also compiles Jav...
The execution model for mobile, dynamically-linked, object-oriented programs has evolved from fast i...
Just-in-Time (JIT) compilation is a key technique for programs written in managed languages, such as...
Recent years have witnessed the widespread adoption of managed programming languages that are design...
The main challenge faced by a dynamic compilation system is to detect and translate frequently exec...
Modern virtual machines for object-oriented machines use dynamic (run-time) compilation in order to ...
Modern JVM implementations interleave execution with compilation of “hot” methods to achieve reasona...
Java has been increasingly used in programming for real-time systems. However, some of Java’s featur...
In this paper, we describe our project to explore the use of hardware counters to improve triggering...
Many Virtual Execution Environments (VEEs) rely on Justin-time (JIT) compilation technology for code...
Programs compiled by Gambit, our Scheme compiler, achieve performance as much as twice that of the f...
All high-performance production JVMs employ an adaptive strategy for program execution. Methods are ...
Abstract Dynamic or Just-in-Time (JIT) compilation is crucial to achieve acceptable performance for ...
ILDJIT, a new-generation dynamic compiler and virtual machine designed to support parallel compilati...
International audienceAs systems grow more and more complex, raising severe evolution and management...
The Java Virtual Machine (Standard Edition) normally interprets Java byte code but also compiles Jav...
The execution model for mobile, dynamically-linked, object-oriented programs has evolved from fast i...
Just-in-Time (JIT) compilation is a key technique for programs written in managed languages, such as...
Recent years have witnessed the widespread adoption of managed programming languages that are design...
The main challenge faced by a dynamic compilation system is to detect and translate frequently exec...
Modern virtual machines for object-oriented machines use dynamic (run-time) compilation in order to ...
Modern JVM implementations interleave execution with compilation of “hot” methods to achieve reasona...
Java has been increasingly used in programming for real-time systems. However, some of Java’s featur...
In this paper, we describe our project to explore the use of hardware counters to improve triggering...
Many Virtual Execution Environments (VEEs) rely on Justin-time (JIT) compilation technology for code...
Programs compiled by Gambit, our Scheme compiler, achieve performance as much as twice that of the f...
All high-performance production JVMs employ an adaptive strategy for program execution. Methods are ...