The JavaTM HotSpotTM Performance Engine - A Technical Tour

7/27/99


Click here to start


Table of Contents

The JavaTM HotSpotTM Performance Engine - A Technical Tour

The Java Programming Language

Example: javac

Talk Overview

VM Overview

Dynamic Code Generation

Just-In-Time Compilers

The Trouble with JITs

A Lazy Approach

HotSpot Compilation Architecture

Advantages Over Standard JIT

Why Have an Interpreter?

More Opportunities for Dynamic Code Generation

Class Hierarchy Analysis

Inline Caches: Caller

Inline Caches: Callee

Inline Caches: First Time

Fast Allocation

Heap: The Big Picture

Heap: (Almost) the Real Story

Fast Locking

Fast Locking

Backpatching

Backpatching in the Interpreter

Deoptimization

Deoptimization of a Stack Frame

Observations

Conclusions

References

Author: Robert Griesemer