Implementing a Non-strict Functional Programming Language on a Threaded Architecture

Shigeru Kusakabe(Dept. of Intelligent Systems, Kyushu University ), Kentaro Inenaga(Dept. of Intelligent Systems, Kyushu University ), Makoto Amamiya(Dept. of Intelligent Systems, Kyushu University ), Xinan Tang(EE & CE Dept. University of Delaware ), Andres Marquez(EE & CE Dept. University of Delaware ), Guang R. Gao(EE & CE Dept. University of Delaware )

To appear at (HIPS'99), San Juan, Puerto Rico, USA, April 12, 1999


Abstract

We discuss implementation issues of V, a non-strict functional programming language, on EARTH (Efficient Architecture for Running THreads). Functional languages are attractive for writing parallel programs due to their expressive power and clean semantics. We are developing a non-strict functional programming language, called V, whose abstract execution model is an optimized dataflow model, called Datarol. EARTH is a multithread architecture derived from a dataflow architecture, and realizes efficient multithreading with off-the-shell microprocessor-based processing nodes. The goal is to implement V efficiently on EARTH, realizing a high-level programming language on a high performance architecture. The combination of a language with fine-grain parallelism and a dataflow evaluation scheme is suitable for high-level programming for massively parallel computation. In compiling V to EARTH, we use a virtual machine code DVMC (Datarol Virtual Machine Code) as an intermediate code, and Threaded-C as target code. Threaded-C is an explicit multi-threaded language, targeted for the EARTH model. We executed sample programs on EARTH-MANNA. The preliminary performance results are encouraging. The codes generated from V programs by our compiler achieved comparable performance with the performance of hand-written Threaded-C codes. Although further improvement is required for non-strict data-structures, we conclude that we can realize high-level programming and achieve good performance with V on EARTH.


Server START Conference Manager
Update Time Mon 14 Dec 98 at 17:52:16
Maintainer mueller@informatik.hu-berlin.de.
Start Conference Manager
Conference Systems