An XML Based Component Model for Generating Scientific Applications and Performing Large Scale Simulations in a Meta-computing Environment
The architecture of a component based environment for constructing scientific applications — generally referred to as a Problem Solving Environment (PSE), is described. Each component is a self-contained program, and may be a sequential code developed in C, Fortran or Java, or may contain internal parallelism using MPI or PVM libraries. A user visually constructs an application by combining components from a local or remote repository as a data flow graph. Components are self-documenting, with their interfaces defined in XML, which enables a user to search for components suitable to a particular application, enables a component to be configured when instantiated, enables each component to register with an event listener and facilitates the sharing of components between repositories. The data flow graph is also encoded in XML, and sent to a resource manager for executing the application on a workstation cluster, or a heterogeneous environment made of workstations and high performance parallel machines.
Components in the PSE can also wrap legacy codes. We also describe the architecture and implementation of a molecular dynamics application based on the Lennard-Jones code , containing MPI calls, executed on a cluster of workstations, and based on our generic component model. A user can submit simulation data to the application remotely using a Java based user interface. Users need not download any softwares for the simulation and do not need to know the exact implementation.
KeywordsComponent-Based Development Component Interface/Re-use Metaprogramming Systems Parallel Computing Application Generators
Unable to display preview. Download preview PDF.
- 2.Vijay Menon and Anne E. Trefethen, “MultiMATLAB: Integrating MATLAB with High-Performance Parallel Computing”, SuperComputing97, 1997.Google Scholar
- 5.H. Casanova and J. J. Dongarra, “NetSolve: A Network-Enabled Server for Solving Computational Science Problems”, Int. J. Supercomputing Appl. Vol. 11, No. 3, pp. 212–223, 1997.Google Scholar
- 6.Alan W. Brown, Kurt C. Wallnau, “The Current State of CBSE”, IEEE Software, September 1998.Google Scholar
- 8.Sanjiva Weerawarana, Joseph Kesselman and Matthew J. Duftler “Bean Markup Language (BeanML)”, IBM TJ Watson Research Center, Hawthorne, NY 10532, 1999Google Scholar
- 9.The Open Software Description Format, See Web page at http://www.w3.org/TR/NOTE-OSD.
- 11.S. Weerawarana. Proceedings of the Second Annual Object-Oriented Numberics Conference, Sunriver, Oregon, April 1994.Google Scholar
- 12.R. Bramley and D. Gannon. See Web page on PSEWare at http://www.extreme.indiana.edu/pseware.
- 13.A. S. Grimshaw, “Campus-Wide Computing: Early Results Using Legion at the University of Virginia”, Int. J. Supercomputing Appl. Vol. 11, No. 2, pp. 129–143, 1997.Google Scholar
- 14.I. Foster and C. Kesselman, “GLOBUS: A Metacomputing Infrastructure Toolkit”, Int. J. Supercomputing Appl. Vol. 11, No. 2, pp. 115–128, 1997.Google Scholar
- 15.Alan W. Brown, Kurt C. Wallnau, “The Current State of CBSE”, IEEE Software Sep. 1998.Google Scholar
- 16.S. Browne, The Netlib Mathematical Software Repository. D-lib Magazine, Sep. 1995.Google Scholar
- 19.M. P. Allen and D. Tildesley, “Computer Simulation of Liquids”, Claredon Press, Oxford, 1987.Google Scholar