Comparing the Performance of KiR and C on the Multiple Stack Architecture Fast



next up previous
Next: Introduction

Comparing the Performance of KiR and C on the Multiple Stack Architecture Fast

Claus Aßmann gif

Abstract:

This paper describes some experiences with the processor architecture Fast which is tailored to the needs of executing untyped functional languages. The architecture is similar to those of conventional RISC processors, though some features have been added and others have been slightly modified. In order to support a fast subroutine call mechanism and efficient parameter passing, our architecture uses a system of four stacks, of which two are easily interchangeable. It also supports runtime type-checking by means of operand tags which are validated during instruction execution. Fast is a 40-bit RISC processor architecture with register-to-register, load/store, call and conditional branch instructions that allow for an efficient implementation of functional (or function-based) languages.

To demonstrate the suitability of the architecture even for other languages, a C compiler has been written for it. We compare the performance of programs written in C and in our functional language KiR on Fast.





ca@informatik.uni-kiel.de