The Linda Machine

The Linda Machine is a parallel computer that has been designed to support the Linda parallel programming environment in hardware. Programs in Linda communicate through a logically shared, associative memory called tuple space. Physically-shared memory seems, however, to be a more complicated and less scalable basis for a multi-computer architecture than distributed memory, and the goal of the Linda Machine project is accordingly to implement Linda’s high-level shared-memory abstraction efficiently on a non-shared-memory architecture. We describe the machine’s special-purpose communication network and its associated protocols, the design of the Linda coprocessor and the way its interaction with the network supports global access to tuple space. The Linda Machine has been designed and is the process of fabrication. We discuss the machine’s projected performance and compare this with software versions of Linda.