A parallel virtual machine for efficient scheme compilation
- 1 May 1990
- proceedings article
- Published by Association for Computing Machinery (ACM)
- p. 119-130
- https://doi.org/10.1145/91556.91606
Abstract
Programs compiled by Gambit, our Scheme compiler, achieve performance as much as twice that of the fastest available Scheme compilers. Gambit is easily ported, while retaining its high performance, through the use of a simple virtual machine (PVM). PVM allows a wide variety of machine-independent optimizations and it supports parallel computation based on the future construct. PVM conveys high-level information bidirectionally between the machine-independent front end of the compiler and the machine-dependent back end, making it easy to implement a number of common back end optimizations that are difficult to achieve for other virtual machines.PVM is similar to many real computer architectures and has an option to efficiently gather dynamic measurements of virtual machine usage. These measurements can be used in performance prediction for ports to other architectures as well as design decisions related to proposed optimizations and object representations.Keywords
This publication has 8 references indexed in Scilit:
- Free variables and first-class environmentsHigher-Order and Symbolic Computation, 1991
- A C interpreter for Scheme — an exercise in object-oriented designSoftware Engineering Journal, 1991
- Mul-T: a high-performance parallel LispPublished by Association for Computing Machinery (ACM) ,1989
- Implementing a Scheme-based parallel processing systemInternational Journal of Parallel Programming, 1988
- ORBIT: an optimizing compiler for schemePublished by Association for Computing Machinery (ACM) ,1986
- MULTILISP: a language for concurrent symbolic computationACM Transactions on Programming Languages and Systems, 1985
- Performance and Evaluation of LISP SystemsPublished by MIT Press ,1985
- A portable lisp compilerSoftware: Practice and Experience, 1981