Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
10.5555/645565.658758guideproceedingsArticle/Chapter ViewAbstractPublication PagesConference Proceedingsacm-pubtype
Article

Implementing an Efficient Java Interpreter

Published: 25 June 2001 Publication History

Abstract

The Java virtual machine (JVM) is usually implemented with an interpreter or just-in-time (JIT) compiler. JIT compilers provide the best performance, but must be substantially rewritten for each architecture they are ported to. Interpreters are easier to develop and maintain, and can be ported to new architectures with almost no changes. The weakness of interpreters is that they are much slower than JIT compilers. This paper describes work in progress on a highly efficient Java interpreter. We describe the main features that make our interpreter efficient. Our initial experimental results show that an interpreter-based JVM may be only 1.9 times slower than a compiler-based JVM for some important applications.

References

[1]
J. R. Bell. Threaded code. Communications of the ACM, 16(6):370-372, 1973.
[2]
M. Anton Ertl. Stack caching for interpreters. In SIGPLAN'95 Conference on Programming Language Design and Implementation, pages 315-327, 1995.
[3]
Jan Hoogerbrugge and Lex Augusteijn. Pipelined Java virtual machine interpreters. In Proceedings of the 9th International Conference on Compiler Construction (CC'00). Springer LNCS, 2000.
[4]
Andreas Krall and Reinhard Grafl. CACAO - a 64 bit JavaVM just-in-time compiler. Concurrency: Practice and Experience, 9(11):1017-1030, 1997.
[5]
Andreas Krall. Efficient JavaVM just-in-time compilation. In Proceedings of the 1998 International Conference of Parallel Architectures and Compilation Techniques, pages 205-212. IEEE Computer Society, October 1998.
[6]
Todd Proebsting. Optimising an ANSI C interpreter with superoperators. In Proceedings of Principles of Programming Languages (POPL'95), pages 322- 342, 1995.

Cited By

View all
  • (2018)A framework for constructing javascript virtual machines with customized datatype representationsProceedings of the 33rd Annual ACM Symposium on Applied Computing10.1145/3167132.3167266(1238-1247)Online publication date: 9-Apr-2018
  • (2005)High performance annotation-aware JVM for Java cardsProceedings of the 5th ACM international conference on Embedded software10.1145/1086228.1086240(52-61)Online publication date: 18-Sep-2005
  • (2003)An optimized Java interpreter for connected devices and embedded systemsProceedings of the 2003 ACM symposium on Applied computing10.1145/952532.952667(692-697)Online publication date: 9-Mar-2003
  • Show More Cited By

Recommendations

Comments

Information & Contributors

Information

Published In

cover image Guide Proceedings
HPCN Europe 2001: Proceedings of the 9th International Conference on High-Performance Computing and Networking
June 2001
728 pages

Publisher

Springer-Verlag

Berlin, Heidelberg

Publication History

Published: 25 June 2001

Qualifiers

  • Article

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)0
  • Downloads (Last 6 weeks)0
Reflects downloads up to 09 Nov 2024

Other Metrics

Citations

Cited By

View all
  • (2018)A framework for constructing javascript virtual machines with customized datatype representationsProceedings of the 33rd Annual ACM Symposium on Applied Computing10.1145/3167132.3167266(1238-1247)Online publication date: 9-Apr-2018
  • (2005)High performance annotation-aware JVM for Java cardsProceedings of the 5th ACM international conference on Embedded software10.1145/1086228.1086240(52-61)Online publication date: 18-Sep-2005
  • (2003)An optimized Java interpreter for connected devices and embedded systemsProceedings of the 2003 ACM symposium on Applied computing10.1145/952532.952667(692-697)Online publication date: 9-Mar-2003
  • (2002)Bytecode fetch optimization for a Java interpreterACM SIGOPS Operating Systems Review10.1145/635508.60540436:5(58-67)Online publication date: 1-Oct-2002
  • (2002)Bytecode fetch optimization for a Java interpreterACM SIGARCH Computer Architecture News10.1145/635506.60540430:5(58-67)Online publication date: 1-Oct-2002
  • (2002)Bytecode fetch optimization for a Java interpreterACM SIGPLAN Notices10.1145/605432.60540437:10(58-67)Online publication date: 1-Oct-2002
  • (2002)Bytecode fetch optimization for a Java interpreterProceedings of the 10th international conference on Architectural support for programming languages and operating systems10.1145/605397.605404(58-67)Online publication date: 5-Oct-2002

View Options

View options

Get Access

Login options

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media