Abstract

This paper discusses an approach to supporting SPMD (single-program, multiple-data) execution of programs with pointer-based data structures on distributed-memory machines. Through a combination of language design and new compilation techniques, static and dynamic implicit parallelism present in sequential programs based upon pointer-based data structures is exploited. Language support is provided for constructing and manipulating local as well as distributed data structures. The compiler translates the program for execution in SPMD mode in which each processor executes that part of the program which operates on the elements of distributed data structures local to the processor. Therefore the parallelism implicit in a sequential program is exploited. A novel approach for implementing pointers which is based upon the generation of names for the nodes in a data structure is presented in this paper. The name based strategy enables the dynamic distribution of data structures among the processors as well as the traversal of distributed data structures without interprocessor communication.

Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call