PANDORE : a system to manage data distribution
Abstract
The goal of the Pandore system is to allow the execution of parallel algorithms on DMPC (Distributed Memory Parallel Computers) without having to take into account the low-level characteristics of the target distributed computer to program the algorithm. No explicit process definition and interprocess communications are needed. Parallelization is achieved through logical data organization. The Pandore system provides the user with a mean to specify data partitionning and data distribution over a domain of virtual processors for each parallel step of his algorithm. At compile time, Pandore splits the original program into parallel processes which will execute the same code over the different parts of the data, according to the given decomposition. In order to achieve a correct access to the data structures distributed over the processors, the Pandore system provides a communication layer, which is an abstraction of a message-passing architecture. This intermediate level is then implemented using the effective primitives of the real architectures.