see also Forth research for Forth interpreter
stuff.
Persons
Projects
- Vmgen
- (Anton Ertl and others) a
generator of virtual machine interpreters that automates several parts
of interpreter construction and supports efficient VM interpreters in
several ways: Vmgen home page, long
paper, short
overview, Forth
implementation using Vmgen precursor, JavaVM
implementation using Vmgen.
- Branch prediction and VM interpreters
- (Anton Ertl, David
Gregg) Performance of various indirect branch predictors on efficient
interpreters: paper
(PDF version), earlier,
shorter paper, benchmarks. How to change
interpreters to increase the prediction accuracy of BTBs: paper,
code
and data used for evaluation.
- Superinstructions
- (Anton Ertl, David Gregg, Helmut Eller) Helmut Eller's Diploma
Thesis looks at heuristics for selecting which static
superinstructions to include in the interpreter, how to select static
superinstructions when generating interpreted code, and whether static
superinstructions or static superoperators are superior. We have also
looked at static superinstructions in other papers (e.g., the Implementation
issues for superinstructions in Gforth, Optimizing
indirect branch prediction accuracy in virtual machine
interpreters, Threaded
code variations and optimizations, The
common case in Forth programs), and also have some Data on Forth
superinstruction candidates online. Some papers also discuss
dynamic superinstructions, e.g., Combining
stack caching with dynamic superinstructions, Implementation
issues for superinstructions in Gforth, Optimizing
indirect branch prediction accuracy in virtual machine
interpreters.
- Stack caching for interpreters
- (Anton Ertl). Reduce loads,
stores, and stack pointer updates by keeping stack items in registers;
some results should also be interesting for hardware design: papers on
idea (SIGPLAN PLDI'95 and
(earlier version) EuroForth'94) and results from a real implementation (IVME'04), Ph.D. Thesis chapter and raw data.
- Threaded code
- (Anton Ertl, Helmut Eller) the fastest VM
instruction dispatch technique: general description, threading microbenchmark, Threaded code for Kaffe (a JavaVM).
Events
- IVME'03:
Workshop on Interpreters, Virtual Machines, and Emulators
Software
Product-quality
- Vmgen interpreter generator.
Research prototypes etc.
Anton Ertl
HTML 2.0