MetaCart Sign in to MyCiteSeerX

Include Citations | Advanced Search | Help

Disambiguated Search | Include Citations | Advanced Search | Help

Optimizing Direct Threaded Code By Selective Inlining (1998) [60 citations — 1 self]

by Ian Piumarta ,  Fabio Riccardi ,  Inria Rocquencourt
In SIGPLAN ’98 Conference on Programming Language Design and Implementation
Add To MetaCart

Abstract:

Achieving good performance in bytecoded language interpreters is difficult without sacrificing both simplicity and portability. This is due to the complexity of dynamic translation ("just-in-time compilation") of bytecodes into native code, which is the mechanism employed universally by highperformance interpreters. We demonstrate that a few simple techniques make it possible to create highly-portable dynamic translators that can attain as much as 70% the performance of optimized C for certain numerical computations. Translators based on such techniques can offer respectable performance without sacrificing either the simplicity or portability of much slower "pure" bytecode interpreters. Keywords: bytecode interpretation, threaded code, inlining, dynamic translation, just-in-time compilation. 1 Introduction Bytecoded languages such as Smalltalk [Gol83], Caml [Ler97] and Java [Arn96, Lin97] offer significant engineering advantages over more conventional languages: higher levels of abst...

Citations

1137 Smalltalk-80: The Language and Its Implementation – Goldberg, Robson
911 The Java Virtual Machine Specification – Lindholm, Yellin - 1997
706 The Java Programming Language – Arnold, Gosling - 1996
108 vcode: A retargetable, extensible, very fast dynamic code generation system – Engler - 1996
97 Threaded code – Bell - 1973
74 Optimizing an ANSI C interpreter with superoperators – Proebsting - 1995
16 A portable Forth engine – Ertl - 1993
16 BrouHaHa - A Portable Smalltalk Interpreter, in proceedings of OOPSLA'87, special issue – Miranda - 1987
10 The Objective Caml system release 1.05 – Leroy - 1997
6 Back to the Future: the Story of Squeak, a Usable Smalltalk Written – Ingalls, Kaehler, et al. - 1997
6 private communication – Leroy - 1996
6 Understanding Language – Moore - 1970
2 personal communication – Miranda
1 Portable Fast Direct Threaded Code – Miranda
1 Building the Better Virtual CPU, Byte Magazine – Thompson - 1995