PHLUID - THE DESIGN OF A PARALLEL FUNCTIONAL LANGUAGE IMPLEMENTATION ON WORKSTATIONS

Citation
C. Flanagan et Rs. Nikhil, PHLUID - THE DESIGN OF A PARALLEL FUNCTIONAL LANGUAGE IMPLEMENTATION ON WORKSTATIONS, ACM SIGPLAN NOTICES, 31(6), 1996, pp. 169-179
Citations number
21
Categorie Soggetti
Computer Sciences","Computer Science Software Graphycs Programming
Journal title
Volume
31
Issue
6
Year of publication
1996
Pages
169 - 179
Database
ISI
SICI code
Abstract
This paper describes the distributed memory implementation of a shared memory parallel functional language. The language is Id, an implicitl y parallel, mostly functional language that is currently evolving into a dialect of Haskell. The target is a distributed memory machine, bec ause we expect these to be the most widely available parallel platform s in the future. The difficult problem is to bridge the gap between th e shared memory language model and the distributed memory machine mode l. The language model assumes that all data is uniformly accessible, w hereas the machine has a severe memory hierarchy: a processor's access to remote memory (using explicit communication) is orders of magnitud e slower than its access to local memory. Thus, avoiding communication is crucial for good performance. The Id language, and its general dat aflow-inspired compilation to multithreaded code are described elsewhe re. In this paper, we focus on our new parallel runtime system and its features for avoiding communication and for tolerating its latency wh en necessary: multithreading, scheduling and load balancing; the distr ibuted heap model and distributed coherent cacheing, and parallel garb age collection. We have completed the first implementation, and we pre sent some preliminary performance measurements.