Implementing Functional Programs on a Hypercube Multiprocessor


Benjamin Goldberg and Paul Hudak


Alfalfa is an implementation of a functional language on the Intel iPSC multiprocessor.  It is based on a heterogeneous abstract machine model consisting of both graph reduction and stack oriented execution.  Alfalfa has two major components, a compiler and a run-time system.  The source language, ALFL, contains no constructs that allow the programmer to specify parallelism or synchronization; thus it is the task of the compiler to detect the exploitable parallelism in a program.  The run-time system supports dynamic scheduling, interprocessor communication, and storage management.  A number of statistics gathered during execution are presented.


    ,author={Goldberg, B. and Hudak, P.}
    ,title={Implementing Functional Programs on a Hypercube 
    ,booktitle={Proceedings of Third Conference on Hypercube Concurrent
                Computers and Applications}