Programming with Distributed Data Structure for EM-X Multiprocessor

The EM-X, a new generation of EM-4, is a distributed memory multiprocessor which has a dataflow mechanism. The dataflow mechanism enables a fine-grain communication packet through the network to invoke and synchronize the thread of control dynamically with very small overhead. In this paper, we present programming with a distributed data structure shared by threads, and its implementation for the EM-X multiprocessor. Threads may communicate and coordinate by leaving data in a global address space. A new distributed data structure, called the Q-structure, is introduced. This can be used as a shared queue in the context of thread-based programming in the parallel programming language EM-C. We also discuss related distributed data structures including Liuda'a tuple space, synchronizing data structure in the dataflow computation model.