Componentising a Scientific Application for the Grid

Building and evolving grid applications is complex. A promising approach to managing this complexity is component-based development, currently attracting growing interest in the grid community. Evaluating the effectiveness of component-based development requires real-world experience. To this end, this paper presents a case study in reengineering a high performance numerical solver to become a component-based grid application. The adopted component model is an extension of the generic Fractal model that specifically targets grid environments. The paper provides qualitative and quantitative evidence that componentisation has improved the modifiability and reusability of the application without significantly affecting performance.

[1]  James Arthur Kohl,et al.  A Component Architecture for High-Performance Scientific Computing , 2006, Int. J. High Perform. Comput. Appl..

[2]  Denis Caromel,et al.  From Distributed Objects to Hierarchical Grid Components , 2003, OTM.

[3]  Kenn R. Luecke,et al.  Reengineering C++ Component Models via Automatic Program Transformation , 2005, WCRE.

[4]  Thierry Coupaye,et al.  Recursive and Dynamic Software Composition with Sharing , 2002 .

[5]  Soo Dong Kim,et al.  A systematic method to identify software components , 2004, 11th Asia-Pacific Software Engineering Conference.

[6]  James Arthur Kohl,et al.  The CCA core specification in a distributed memory SPMD framework , 2002, Concurr. Comput. Pract. Exp..

[7]  Marwan Abi-Antoun,et al.  A Case Study in Incremental Architecture-Based Re-engineering of a Legacy Application , 2005, 5th Working IEEE/IFIP Conference on Software Architecture (WICSA'05).

[8]  Lois C. McInnes,et al.  Parallel components for PDEs and optimization: some issues and experiences , 2002, Parallel Comput..

[9]  Berna L. Massingill Patterns for Parallel Application Programs , 1999 .

[10]  Per Runeson,et al.  Adopting a Component-Based Software Architecture for an Industrial Control System - A Case Study , 2005, Component-Based Software Development for Embedded Systems.

[11]  Franck Cappello,et al.  Grid'5000: a large scale, reconfigurable, controlable and monitorable Grid platform , 2005 .

[12]  Ali Erdem Özcan,et al.  A component-based approach for MPSoC SW design: experience with OS customization for H.264 decoder , 2005, 3rd Workshop on Embedded Systems for Real-Time Multimedia, 2005..

[13]  Dennis Gannon,et al.  XCAT3: a framework for CCA components as OGSA services , 2004, Ninth International Workshop on High-Level Parallel Programming Models and Supportive Environments, 2004. Proceedings..

[14]  Denis Caromel,et al.  A parallel object-oriented application for 3D electromagnetism , 2004, 18th International Parallel and Distributed Processing Symposium, 2004. Proceedings..

[15]  Lars Lundberg,et al.  Using components to increase maintainability in a large telecommunication system , 2002, Ninth Asia-Pacific Software Engineering Conference, 2002..

[16]  J. Ray,et al.  ODEPACK++: refactoring the LSODE Fortran library for use in the CCA high performance component software architecture , 2004, Ninth International Workshop on High-Level Parallel Programming Models and Supportive Environments, 2004. Proceedings..