PastSet

From High Performance Distributed Systems Research Group

Jump to: navigation, search

Distributed Shared Memory is a popular approach to achieving best-of-both-worlds in parallel processing. On one hand we prefer distributed memory over shared memory, because distributed memory machines can be made much larger, and thus faster, than shared memory machines. On the other hand shared memory machines are far easier to program, thus a system that allows shared memory programs to execute on distributed memory architectures is highly attractive.

PastSet is a structured distributed shared memory system, which mean that memory is structured differently than the standard byte sequence we normally think of as memory, in the case of PastSet memory is modeled as tuples.

Other distributed shared memory systems has been based on tuples, the best known of these is Linda. PastSet contributes with a set of features that has not yet been seen in structured distributed memory systems. One feature is maintaining sequential order on operations on the tuple memory. In addition PastSet is implemented to efficiently utilize physical shared memory where available, and distributed otherwise.

We have investigated several approaches to data distribution, and how cluster architectures for running PastSet should be designed.

The main conclusions from the basic PastSet work is, that poor performance in not inherent to structured distributed shared memory. Careful attention to design and implementation to kernel level IPC is important, in fact the fairly complex PastSet API is able to outperform simple IPC mechanisms such as semaphores, messages and pipes. We have shown that replication of data structures in a distributed shared memory system is not necessarily an advantage to non-replicated data.

We have demonstrated that a history based memory model, as offered by PastSet, eases certain parallel programming elements.

A surprising result is that few large SMP nodes in a cluster is not necessarily perform better than more, smaller, nodes if the total number of CPUs is the same. Data distribution in PastSet is also investigated and it is shown that a First-Touch approach is preferable to a Central-Server or a Round-Robin distribution approach.

PastSet is being further developed both at Tromsø and at the University of Southern Denmark.

Personal tools