An XML Based Component Model for Generating Scientific Applications and Performing Large Scale Simulations in a Meta-computing Environment

  • Omer F. Rana
  • Maozhen Li
  • David W. Walker
  • Matthew Shields
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 1799)


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 [18], 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.


Component-Based Development Component Interface/Re-use Metaprogramming Systems Parallel Computing Application Generators 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    E. Gallopoulos, E. N. Houstis and J. R. Rice, “Computer as Thinker/Doer:Problem-Solving Environments for Computational Science”, IEEE Computational Science and Engineering, Vol. 1, No. 2, pp. 11–23, 1994CrossRefGoogle Scholar
  2. 2.
    Vijay Menon and Anne E. Trefethen, “MultiMATLAB: Integrating MATLAB with High-Performance Parallel Computing”, SuperComputing97, 1997.Google Scholar
  3. 3.
    E. Gallopoulos, E. N. Houstis and J. R. Rice, “Workshop on Problem-Solving Environment:Findings and Recommendations”, ACM Computing Surveys, Vol. 27, No. 2, pp 277–279, June 1995CrossRefGoogle Scholar
  4. 4.
    J. R. Rice and R. F. Boisvert, “From Scientific Software Libraries to Problem-Solving Environments”, IEEE Computational Science and Engineering, Vol. 3, No. 3, pp. 44–53, 1996.CrossRefGoogle Scholar
  5. 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. 6.
    Alan W. Brown, Kurt C. Wallnau, “The Current State of CBSE”, IEEE Software, September 1998.Google Scholar
  7. 7.
    K. M. Decker and B. J. N. Wylie, “Software Tools for Scalable Multilevel Application Engineering”, Int. J. Supercomputing Appl. Vol. 11, No. 3, pp. 236–250, 1997.CrossRefGoogle Scholar
  8. 8.
    Sanjiva Weerawarana, Joseph Kesselman and Matthew J. Duftler “Bean Markup Language (BeanML)”, IBM TJ Watson Research Center, Hawthorne, NY 10532, 1999Google Scholar
  9. 9.
    The Open Software Description Format, See Web page at
  10. 10.
    G. Spezzano, D. Talia, S. Di Gregorio, “A Parallel Cellular Tool for Interactive Modeling and Simulation”, IEEE Computational Science and Engineering, Vol. 3, No. 3, pp. 33–43, 1996.CrossRefGoogle Scholar
  11. 11.
    S. Weerawarana. Proceedings of the Second Annual Object-Oriented Numberics Conference, Sunriver, Oregon, April 1994.Google Scholar
  12. 12.
    R. Bramley and D. Gannon. See Web page on PSEWare at
  13. 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. 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. 15.
    Alan W. Brown, Kurt C. Wallnau, “The Current State of CBSE”, IEEE Software Sep. 1998.Google Scholar
  16. 16.
    S. Browne, The Netlib Mathematical Software Repository. D-lib Magazine, Sep. 1995.Google Scholar
  17. 17.
    J. G. Powles, W. A. B. Evans, and N. Quirke, “Non-destructive Molecular Dynamics Simulation of the Chemical Potential of a Fluid”, Mol. Phys, Vol. 46, pp. 13476–1370, 1982.CrossRefGoogle Scholar
  18. 18.
    L. Verlet, “Computer Experiments on Classical Fluids I. Thermodynamical Properties of Lennard-Jones Molecules”, Phys. Rev., Vol. 159, pp. 98–103, 1967.CrossRefGoogle Scholar
  19. 19.
    M. P. Allen and D. Tildesley, “Computer Simulation of Liquids”, Claredon Press, Oxford, 1987.Google Scholar
  20. 20.
    S. Plimpton, “Fast Parallel Algorithms for Short-Range Molecular Dynamics”, J. Comput. Phys., Vol. 117, pp. 1–19, March 1995.zbMATHCrossRefGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2000

Authors and Affiliations

  • Omer F. Rana
    • 1
  • Maozhen Li
    • 1
  • David W. Walker
    • 1
  • Matthew Shields
    • 1
  1. 1.Department of Computer ScienceCardiff UniversityCardiffUK

Personalised recommendations