Affiliation:
1. INRIA Roquencourt, B.P. 105, 78153 Le Chesnay Cedex, France
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 high-performance 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.
Publisher
Association for Computing Machinery (ACM)
Subject
Computer Graphics and Computer-Aided Design,Software
Reference15 articles.
1. Fast, effective dynamic compilation
2. Efficient implementation of the smalltalk-80 system
3. VCODE
4. M. Anton Ertl A Portable Forth Engine. http://wvw complang tuwien ac. at/forth/ tkreaded- code. html M. Anton Ertl A Portable Forth Engine. http://wvw complang tuwien ac. at/forth/ tkreaded- code. html
Cited by
14 articles.
订阅此论文施引文献
订阅此论文施引文献,注册后可以免费订阅5篇论文的施引文献,订阅后可以查看论文全部施引文献
1. AST vs. Bytecode: Interpreters in the Age of Meta-Compilation;Proceedings of the ACM on Programming Languages;2023-10-16
2. Threaded Execution as a Dual to Native Code;Companion Proceedings of the 7th International Conference on the Art, Science, and Engineering of Programming;2023-03-13
3. A fast in-place interpreter for WebAssembly;Proceedings of the ACM on Programming Languages;2022-10-31
4. Copy-and-patch compilation: a fast compilation algorithm for high-level languages and bytecode;Proceedings of the ACM on Programming Languages;2021-10-20
5. One compiler: deoptimization to optimized code;Proceedings of the 26th International Conference on Compiler Construction;2017-02-05