The CCA component model for high-performance scientific computing

  • Authors:
  • Rob Armstrong;Gary Kumfert;Lois Curfman McInnes;Steven Parker;Ben Allan;Matt Sottile;Thomas Epperly;Tamara Dahlgren

  • Affiliations:
  • Sandia National Laboratories, Livermore, CA 94551-9915, U.S.A.;Lawrence Livermore National Laboratory, Livermore, CA 94550, U.S.A.;Argonne National Laboratory, Argonne, IL 10439, U.S.A.;University of Utah, Salt Lake City, UT 84112, U.S.A.;Sandia National Laboratories, Livermore, CA 94551-9915, U.S.A.;Los Alamos National Laboratory, Los Alamos, NM 87545, U.S.A.;Lawrence Livermore National Laboratory, Livermore, CA 94550, U.S.A.;Lawrence Livermore National Laboratory, Livermore, CA 94550, U.S.A.

  • Venue:
  • Concurrency and Computation: Practice & Experience - Computational Frameworks
  • Year:
  • 2006

Quantified Score

Hi-index 0.00

Visualization

Abstract

The Common Component Architecture (CCA) is a component model for high-performance computing, developed by a grass-roots effort of computational scientists. Although the CCA is usable with CORBA-like distributed-object components, its main purpose is to set forth a component model for high-performance, parallel computing. Traditional component models are not well suited for performance and massive parallelism. We outline the design pattern for the CCA component model, discuss our strategy for language interoperability, describe the development tools we provide, and walk through an illustrative example using these tools. Performance and scalability, which are distinguishing features of CCA components, affect choices throughout design and implementation. Copyright © 2005 John Wiley & Sons, Ltd.