The Linda® Alternative to Message-Passing Systems

Abstract The use of distributed data structures in a logically-shared memory is a natural, readily-understood approach to parallel programming. The principal argument against such an approach for portable software has always been that efficient implementations could not scale to massively-parallel, distributed memory machines. Now, however, there is growing evidence that it is possible to develop efficient and portable implementations of virtual shared memory models on scalable architectures. In this paper we discuss one particular example: Linda. After presenting an introduction to the Linda model, we focus on the expressiveness of the model, on techniques required to build efficient implementations, and on observed performance both on workstation networks and distributed-memory parallel machines. Finally, we conclude by briefly discussing the range of applications developed with Linda and Linda's suitability for the sorts of heterogeneous, dynamically-changing computational environments that are of growing significance.

[1]  Timothy G. MATTSONz Parallel Programming Systems for Workstation Clusters , 1993 .

[2]  Martin H. Schultz,et al.  Efficient parallel programming with Linda , 1992, Proceedings Supercomputing '92.

[3]  Edward Joseph Segall Tuple space operations: multiple-key search, on-line matching and wait-free synchronization , 1993 .

[4]  Volker Strumpen,et al.  Efficient Parallel Computing in Distributed Workstation Environments , 1993, Parallel Comput..

[5]  James L. Black,et al.  Networked Parallel 3-D Depth Migration , 1991 .

[6]  J. L. Black,et al.  Networked Parallel Seismic Computing , 1992 .

[7]  Nicholas Carriero,et al.  How to write parallel programs - a first course , 1990 .

[8]  A. H. Sherman A Hybrid Approach to Parallel Compositions Reservoir Simulation , 1992 .

[9]  Nicholas Carriero,et al.  A Foundation for Advanced Compile-time Analysis of Linda Programs , 1991, LCPC.

[10]  F. Kenton Musgrave,et al.  The art of fractal landscapes , 1991, IBM J. Res. Dev..

[11]  L.D. Cagan,et al.  Software/parallel processing-Linda on the networks , 1993, IEEE Spectrum.

[12]  Robert D. Bjornson Linda on distributed memory multiprocessors , 1993 .

[13]  Nicholas Carriero,et al.  Applications experience with Linda , 1988, PPEALS '88.

[14]  Andrew H. Sherman,et al.  Ray Tracing with Network Linda , 1996, Applications on Advanced Architecture Computers.

[15]  Nicholas Carriero,et al.  Linda in context , 1989, CACM.

[16]  David Gelernter,et al.  Supercomputing out of recycled garbage: preliminary experience with Piranha , 1992, ICS '92.

[17]  A ZeniosStavros,et al.  A Computer Network Approach to Pricing Mortgage-Backed Securities , 1993 .