High Performance Software Laboratory
Meta-Chaos: Tools


Click here to remove the abstracts

  • Interoperability of Data Parallel Runtime Libraries with Meta-Chaos
    Guy Edjlali, Alan Sussman and Joel Saltz.

    University of Maryland, Department of Computer Science and UMIACS Technical Report number CS-TR-3633 and UMIACS-TR-96-30. Compressed Postscript, HTML, Bibtex Reference.

    This paper describes a framework for providing the ability to use multiple specialized data parallel libraries and/or languages within a single application. The ability to use multiple libraries is required in many application areas, such as multidisciplinary complex physical simulations and remote sensing image database applications. An application can consist of one program or multiple programs that use different libraries to parallelize operations on distributed data structures. The framework is embodied in a runtime library called meta-Chaos that has been used to exchange data between data parallel programs written using High Performance Fortran, the Chaos and Multiblock Parti libraries developed at Maryland for handling various types of unstructured problems, and the runtime library for pC++, a data parallel version of C++ from Indiana University. Experimental results show that Meta-Chaos is able to move data between libraries efficiently, and that Meta-Chaos provides effective support for complex applications.

  • A Runtime Coupling of Data-parallel Programs
    M. Ranganathan, A. Acharya, G. Edjlali, A. Sussman and J. Saltz.

    Published in Proceedings of the 1996 International Conference on Supercomputing , May 1996.
    Compressed Postscript, Bibtex Reference.
    University of Maryland, Department of Computer Science and UMIACS Technical Report number CS-TR-3565 and UMIACS-TR-95-116.
    Compressed Postscript, HTML, Bibtex Reference.

    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.


    Questions about the system or webserver: webmaster@cs.umd.edu
    Problems with publications homepage: wes@cs.umd.edu