Runtime Coupling of Data-parallel Programs

View/ Open
Date
1998-10-15Author
Ranganathan, M.
Acharya, Anurag
Edjlali, Guy
Sussman, Alan
Saltz, Joel
Metadata
Show full item recordAbstract
We consider the problem of efficiently coupling multiple
data-parallel programs at runtime. We propose an approach that establishes
a mapping between data structures in different data-parallel programs and
implements a user specified consistency model. Mappings are established at
runtime and new mappings between programs can be added and deleted while
the programs are in execution. Mappings, or the identity of the processors
involved, do not have to be known at compile-time or even link-time.
Programs can be made to interact with different granularities of
interaction without requiring any re-coding. A priori knowledge of data
movement requirements allows for buffering of data and overlap of
computations between coupled applications. Efficient data movement is
achieved by pre-computing an optimized schedule. We describe our prototype
implementation and evaluate its performance for a set of synthetic
benchmarks that examine the variation of performance with coupling
parameters. We demonstrate that the cost of the added flexibility gained
by our coupling method is not prohibitive when compared with a monolithic
code that does the same computation.
(Also cross-referenced as UMIACS-TR-95-116)