Engineering high-performance legacy codes as CORBA components for problem-solving environments

  • Authors:
  • M. Li;D. W. Walker;O. F. Rana;Y. Huang;P. T. Williams;R. C. Ward

  • Affiliations:
  • Department of Electronic and Computer Engineering, Brunel University, Uxbridge, Middlesex UB8 3PH, UK;School of Computer Science, Cardiff University, P.O. Box 916, Cardiff CE24 3XF, UK;School of Computer Science, Cardiff University, P.O. Box 916, Cardiff CE24 3XF, UK;School of Computer Science, Cardiff University, P.O. Box 916, Cardiff CE24 3XF, UK;Computational Sciences and Engineering Division, Oak Ridge National Laboratory, P.O. Box 2008, Oak Ridge, TN;Computational Sciences and Engineering Division, Oak Ridge National Laboratory, P.O. Box 2008, Oak Ridge, TN

  • Venue:
  • Journal of Parallel and Distributed Computing
  • Year:
  • 2003

Quantified Score

Hi-index 0.00

Visualization

Abstract

This paper describes techniques used to leverage high-performance legacy codes as CORBA components to a distributed problem-solving environment. It first briefly introduces the software architecture adopted by the environment. Then it presents a CORBA oriented wrapper generator (COWG) which can be used to automatically wrap high-performance legacy codes as CORBA components. Two legacy codes have been wrapped with COWG. One is an MPI-based molecular dynamic simulation (MDS) code, the other is a finite element-based computational fluid dynamics (CFD) code for simulating incompressible Navier-Stokes flows. Performance comparisons between runs of the MDS CORBA component and the original MDS legacy code on a cluster of workstations and on a parallel computer are also presented. Wrapped as CORBA components, these legacy codes can be reused in a distributed computing environment. The first case shows that high-performance can be maintained with the wrapped MDS component. The second case shows that a Web user can submit a task to the wrapped CFD component through a Web page without knowing the exact implementation of the component. In this way, a user's desktop computing environment can be extended to a high-performance computing environment using a cluster of workstations or a parallel computer.