Thin locks: featherweight synchronization for Java
PLDI '98 Proceedings of the ACM SIGPLAN 1998 conference on Programming language design and implementation
Advanced compiler design and implementation
Advanced compiler design and implementation
Practical experience with an application extractor for Java
Proceedings of the 14th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
Java Language Specification, Second Edition: The Java Series
Java Language Specification, Second Edition: The Java Series
Design of Multilingual Retargetable Compilers: Experience of the XDS Framework Evolution
JMLC '00 Proceedings of the Joint Modular Languages Conference on Modular Programming Languages
Effective Enhancement of Loop Versioning in Java
CC '02 Proceedings of the 11th International Conference on Compiler Construction
Compiler-Cooperative Memory Management in Java
PSI '02 Revised Papers from the 4th International Andrei Ershov Memorial Conference on Perspectives of System Informatics: Akademgorodok, Novosibirsk, Russia
Fast and effective optimization of statically typed object-oriented languages
Fast and effective optimization of statically typed object-oriented languages
GC Points in a Threaded Environment
GC Points in a Threaded Environment
Overview of the IBM Java just-in-time compiler
IBM Systems Journal
CASES '06 Proceedings of the 2006 international conference on Compilers, architecture and synthesis for embedded systems
Efficient exception handling in Java bytecode-to-c ahead-of-time compiler for smbedded systems
EMSOFT '06 Proceedings of the 6th ACM & IEEE International conference on Embedded software
Efficient exception handling in Java bytecode-to-C ahead-of-time compiler for embedded systems
Computer Languages, Systems and Structures
Reducing startup time of a deterministic virtualizing runtime environment
Proceedings of the 16th International Workshop on Software and Compilers for Embedded Systems
Miniboxing: improving the speed to code size tradeoff in parametric polymorphism translations
Proceedings of the 2013 ACM SIGPLAN international conference on Object oriented programming systems languages & applications
Hi-index | 0.00 |
This paper describes the architecture of Excelsior JET, a Java optimizing environment based upon ahead-of-time compilation of Java bytecode to platform-specific (native) code. Advantages of static compilation originate from the possibility of employing powerful resource-expensive optimizations resulting in much better code quality than in the case of dynamic (just-in-time) complation implemented in contemporary Java Virtual Machines (JVMs). Moreover, a noticeable innovation of JET is the Mixed Compilation Model that allows a compiled program to load classes dynamically as the Java Language Specification requires. Along with a highly optimizing compiler, JET includes a scalable run-time system that provides effective memory management with garbage collection, threading, etc. The experimental results presented in the paper were obtained on a variety of benchmarks and real-world Java applications. Tested against two most popular JVMs (Sun HotSpot and IBM JIT), programs optimized by JET demonstrated better performance and lower resource demand in most cases.