Experiments with pipelining parallelism in SISAL

Hugh Garsden, Andrew L. Wendelborn · 1992

Streams in functional languages allow clear description of many problems which can be expressed in terms of successive transformations of data-they provide declarative expression of software pipelining. SISAL is a functional language with predominantly strict semantics but including non-strict streams to allow expression of pipelined parallelism, processing of notionally infinite streams, and communication between program modules. The authors discuss an implementation, using buffered streams, of SISAL streams on conventional multiprocessors, and programming techniques for some stream problems-a circuit simulation, prime number sieve and a text processor. They present experimental results showing the effect of various buffering parameters, and useful speedup. They point out some potential problems with the SISAL view of streams.>

Read the paper · More papers on PaperTik