JVM 2001 Abstract
SableVM: A Research Framework for the Efficient Execution of Java Bytecode
Etienne M. Gagnon and Laurie J. Hendren, McGill University
Abstract
SableVM is
an open-source virtual machine for Java
intended as a research framework for efficient
execution of Java bytecode.
The framework is essentially composed
of an extensible bytecode interpreter using state-of-the-art
and innovative techniques.
Written in the C programming language, and assuming
minimal system dependencies, the interpreter emphasizes high-level
techniques to support efficient execution.
In particular, we introduce a biderectional layout for object
instances that groups reference fields sequentially to allow
efficient garbage collection. We also introduce
a sparse interface virtual table layout that reduces the cost
of interface method calls to that of normal virtual calls.
Finally, we present a technique to improve
thin locks
by eliminating busy-wait in presence of contention.
|