The Common Component Architecture Forum
cca logo     The Common Component Architecture Forum
 
 
Quick Links
Main
  Components
  Contacts
  Docs
  Glossary
  Groups
  Help
  Meetings
  Members
  News
  Overview
  Scidac
  Software
  Mailing Lists
  Toolkit
  Tutorials
 
Search
 
About
The CCA Forum is a group committed to defining a standard component architecture for high performance computing. Please email the webmaster for suggestions about this site.
 
   

Computational Quality of Service (CQoS)

The component-based approach to scientific computing confers two main advantages to the development of high-performance scientific software: (1) it facilitates the development of multiphysics applications by leveraging components that encapsulate the expertise of many investigators who typically have different expertise and preferences for programming styles and languages, and (2) it enables the automated assembly of those components so that their runtime and accuracy can be optimized. Computer and computational scientists at ANL, ORNL, SNL, and the University of Oregon, who are members of the SciDAC Center for Component Technology for Terascale Simulation Software, have recently defined a prototype software architecture for Computational Quality of Service (CQoS), which focuses on enabling the automatic selection and configuration of components to suit the computational conditions imposed by a simulation and its operating environment. Because numerical conditions typically change as simulations evolve, and because a massively parallel machine environment may degrade or improve with time, a CQoS-enabled environment provides dynamic adaptation support throughout the application's execution.

A mathematical model of a component's non-functional capabilities, such as computational cost, accuracy, and failure rate, when used in combination with a description of another component's requirements, enables the automation of the process of application assembly. Such performance models can be supplied through user-provided or automated instrumentation of the source code, or through source code analysis. Given individual performance models for an ensemble of components, we have developed a global performance model evaluator, which estimates the performance model of an entire component ensemble. Optimizing the overall performance expressed in this aggregate model enables the automatic selection of components, resulting in enhanced overall application performance. Furthermore, the quality metrics and corresponding performance models can be used at runtime to substitute a component instance that no longer satisfies certain quality requirements with another functionally equivalent component, which implements a different algorithm. The CQoS infrastructure has been used by researchers in the SciDAC Computational Facility for Reacting Flow Science to analyze the computational and message-passing costs of their simulations with a view of scaling up to thousands of processors. Minimizing the ratio of message-passing time to computation time is crucial for this process. Whereas manual optimization is prohibitively complex, the automated application assembly and adaptation approach leads to far more efficient use of parallel resources.

Selected Recent Publications

  • B. Norris, J. Ray, R. Armstrong, L. C. McInnes, D. E. Bernholdt, W. R. Elwasif, A. D. Malony and S. Shende, Computational Quality of Service for Scientific Components, Proceedings of the International Symposium on Component-Based Software Engineering (CBSE7), Edinburgh, Scotland, May 2004, also available as Argonne National Laboratory preprint ANL/MCS-P1131-0204. [paper]
  • P. Hovland, K. Keahey, L. C. McInnes, B. Norris, L. F. Diachin, and P. Raghavan, A Quality of Service Approach for High-Performance Numerical Components, Proceedings of Workshop on QoS in Component-Based Software Engineering, Software Technologies Conference, Toulouse, France, June 2003, also available as Argonne National Laboratory preprint ANL/MCS-P1028-0203. [paper].
  • J. Ray and N. Trebon and S. Shende and R. C. Armstrong and A. Malony, Performance Measurement and Modeling of Component Applications in a High Performance Computing Environment : A Case Study, 18th International Parallel and Distributed Computing Symposium, April 2004, Santa Fe, NM. Also available as Technical Report SAND2003-8631, Sandia National Laboratories, Livermore, CA, Nov. 2003. [paper]
  • A. Malony, S. Shende, N. Trebon, J. Ray, R. Armstrong, C. Rasmussen, and M. Sottile, Performance Technology for Parallel and Distributed Component Software, (to appear) Concurrency and Computation: Practice and Experience, Wiley, 2004. [paper]
  • S. Shende, A. D. Malony, C. Rasmussen, M. Sottile, A Performance Interface for Component-Based Applications, Proc. International Workshop on Performance Modeling, Evaluation, and Optimization of Parallel and Distributed Systems, IPDPS'03, IEEE Computer Society, 278, 2003. [paper]
  • S. Lefantzi, J. Ray, and S. Shende, Strong Scalability Analysis and Performance Evaluation of a SAMR CCA-based Reacting Flow Code Poster, SC2003 Conference, Nov. 2003. [poster]

  •  
    © Copyright 2002-2004