Share on Facebook Tweet on Twitter Share on LinkedIn Share by email
Marmot: An Optimizing Compiler for Java

Robert Fitzgerald, Todd B. Knoblock, Erik Ruf, Bjarne Steensgaard, and David Tarditi

Abstract

The Marmot system is a research platform for studying the implementation of high level programming languages. It currently comprises an optimizing native code compiler, runtime system, and libraries for a large subset of Java. Marmot integrates well-known representation, optimization, code generation, and runtime techniques with a few Java-specific features to achieve competitive performance. This paper contains a description of the Marmot system design, along with highlights of our experience applying and adapting traditional implementation techniques to Java. A detailed performance evaluation assesses both Marmot's overall performance relative to other Java and C++ implementations, and the relative costs of various Java language features in Marmot-compiled code. Our experience with Marmot has demonstrated that well-known compilation techniques can produce very good performance for static Java applications comparable or superior to other Java systems, and approaching that of C++ in some cases.

Details

Publication typeInproceedings
URLhttp://www.wiley.com/
Pages29
NumberMSR-TR-99-33
InstitutionMicrosoft Research
PublisherWiley
> Publications > Marmot: An Optimizing Compiler for Java