Abstract
The Java Virtual Machine (JVM) is the corner stone of Java technology, and its efficiency in executing the portable Java bytecodes is crucial for the success of this technology. Interpretation, Just-In-Time (JIT) compilation, and hardware realization are well known solutions for a JVM, and previous research has proposed optimizations for each of these techniques. However, each technique has its pros and cons and may not be uniformly attractive for all hardware platforms. Instead, an understanding of the architectural implications of JVM implementations with real applications, can be crucial to the development of enabling technologies for efficient Java runtime system development on a wide range of platforms (from resource-rich servers to resource-constrained hand-held/embedded systems). Towards this goal, this paper examines architectural issues, from both the hardware and JVM implementation perspectives. It specifically explores the potential of a smart JIT compiler strategy that can dynamically interpret or compile based on associated costs, investigates the CPU and cache architectural support that would benefit JVM implementations, and examines the synchronization support for enhancing performance, using applications from the SpecJVM98 benchmarks.
Original language | English (US) |
---|---|
Pages | 387-398 |
Number of pages | 12 |
State | Published - 2000 |
Event | Sixth International Symposium on High-Performance Computer Architecture - Toulouse, France Duration: Jan 8 2000 → Jan 12 2000 |
Other
Other | Sixth International Symposium on High-Performance Computer Architecture |
---|---|
Country/Territory | France |
City | Toulouse |
Period | 1/8/00 → 1/12/00 |
All Science Journal Classification (ASJC) codes
- Hardware and Architecture