Affiliation:
1. Intel Corp., 2200 Mission College Blvd., Santa Clara, CA
2. Inktomi Corp., 4100 East Third Ave., Foster City, CA
Abstract
A high-performance implementation of a Java Virtual Machine (JVM) consists of efficient implementation of Just-In-Time (JIT) compilation, exception handling, synchronization mechanism, and garbage collection (GC). These components are tightly coupled to achieve high performance. In this paper, we present some
static
and
dynamic
techniques implemented in the JIT compilation and exception handling of the Microprocessor Research Lab Virtual Machine (MRL VM), i.e., lazy exceptions, lazy GC mapping, dynamic patching, and bounds checking elimination. Our experiments used IA-32 as the hardware platform, but the optimizations can be generalized to other architectures.
Publisher
Association for Computing Machinery (ACM)
Subject
Computer Graphics and Computer-Aided Design,Software
Reference24 articles.
1. Fast, effective code generation in a just-in-time Java compiler
2. Detection and recovery of endangered variables caused by instruction scheduling
3. Source-level debugging of scalar optimized code
4. A.V. Aho R. Sethi and J. Ullman. Compilers: Principles Techniques and Tools. Addison-Wesley Reading MA second edition 1986.]] A.V. Aho R. Sethi and J. Ullman. Compilers: Principles Techniques and Tools. Addison-Wesley Reading MA second edition 1986.]]
Cited by
16 articles.
订阅此论文施引文献
订阅此论文施引文献,注册后可以免费订阅5篇论文的施引文献,订阅后可以查看论文全部施引文献
1. Exploring Impact of Profile Data on Code Quality in the HotSpot JVM;ACM Transactions on Embedded Computing Systems;2020-11-30
2. Smart selection of optimizations in dynamic compilers;Concurrency and Computation: Practice and Experience;2020-11-26
3. Optimization of swift protocols;Proceedings of the ACM on Programming Languages;2019-10-10
4. AOT vs. JIT: impact of profile data on code quality;Proceedings of the 18th ACM SIGPLAN/SIGBED Conference on Languages, Compilers, and Tools for Embedded Systems;2017-06-21
5. Towards Context-Aware DNA Sequence Compression for Efficient Data Exchange;2015 IEEE International Parallel and Distributed Processing Symposium Workshop;2015-05