Related Information |
Parallel Program InteroperabilityWe are currently developing techniques that will allow parallel compute and data objects to offer their services to near and remote clients. Our goal is to develop techniques that will allow users to compose programs running on any combination of distributed memory, shared memory or networked microcomputers or workstations. This research is motivated by two important classes of applications -- sensor data processing and integration, and complex physical simulations. An important early result of this work is the development of runtime support (Meta-Chaos) which allows communication between diverse runtime libraries. The ability to use multiple libraries is needed in several application areas, such as multidisciplinary complex physical simulations and remote-sensing applications. In these scenarios, an application can consist of a single program or multiple programs that use a variety of runtime libraries for partitioning the data-sets and/or inter-process communication.Another important part is the control language which specifies the range and frequency of information exchange between programs being coupled. It uses a set of mappings between data regions belonging to different programs -- each mapping identifies the regions of interest and the frequency at which they are to be kept consistent. Our implementation allows the mappings to specified either at initialization time or later during actual execution of the program. We used early prototypes of these systems to demonstrate the ability to couple High Performance Fortran applications with other HPF applications as well as with applications developed using the Maryland CHAOS and Multiblock Parti libraries. |