Component-based software for high-performance scientific computing

Recent advances in both computational hardware and multidisciplinary science have given rise to an unprecedented level of complexity in scientific simulation software. This paper describes an ongoing grass roots effort aimed at addressing complexity in high-performance computing through the use of Component-Based Software Engineering (CBSE). Highlights of the benefits and accomplishments of the Common Component Architecture (CCA) Forum and SciDAC ISIC are given, followed by an illustrative example of how the CCA has been applied to drive scientific discovery in quantum chemistry. Thrusts for future research are also described briefly.

[1]  Premkumar T. Devanbu,et al.  Improving scientific software component quality through assertions , 2005, SE-HPCS '05.

[2]  Felipe Bertrand,et al.  DCA: a distributed CCA framework based on MPI , 2004, Ninth International Workshop on High-Level Parallel Programming Models and Supportive Environments, 2004. Proceedings..

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

[4]  Padma Raghavan,et al.  A Quality-of-Service Architecture for High-Performance Numerical Components † , 2003 .

[5]  Robert J. Harrison,et al.  Global arrays: A nonuniform memory access programming model for high-performance computers , 1996, The Journal of Supercomputing.

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

[7]  David E. Bernholdt,et al.  Computational Quality of Service for Scientific Components , 2004, CBSE.

[8]  Keming Zhang,et al.  SCIRun2: a CCA framework for high performance computing , 2004, Ninth International Workshop on High-Level Parallel Programming Models and Supportive Environments, 2004. Proceedings..

[9]  Mark S. Gordon,et al.  General atomic and molecular electronic structure system , 1993, J. Comput. Chem..

[10]  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..

[11]  David E. Bernholdt,et al.  High performance computational chemistry: An overview of NWChem a distributed parallel application , 2000 .

[12]  Curtis L. Janssen,et al.  Parallel Processing for Ab Initio Quantum Mechanical Methods , 2002 .

[13]  Lois Curfman McInnes,et al.  TAO users manual. , 2003 .

[14]  Benjamin A. Allan,et al.  The Scalability Impact of a Component-based Software Engineering Framework on a Growing SAMR Toolkit , 2006 .

[15]  Jarek Nieplocha,et al.  Component‐based integration of chemistry and optimization software , 2004, Journal of computational chemistry.

[16]  Jarek Nieplocha,et al.  Multilevel Parallelism in Computational Chemistry using Common Component Architecture and Global Arrays , 2005, ACM/IEEE SC 2005 Conference (SC'05).