×

zbMATH — the first resource for mathematics

The CCA core specification in a distributed memory SPMD framework. (English) Zbl 1008.68528
Summary: We present an overview of the Common Component Architecture (CCA) core specification and CCAFFEINE, a Sandia National Laboratories framework implementation compliant with the draft specification. CCAFFEINE stands for CCA Fast Framework Example In Need of Everything; that is, CCAFFEINE is fast, lightweight, and it aims to provide every framework service by using external, portable components instead of integrating all services into a single, heavy framework core. By fast, we mean that the CCAFFEINE glue does not get between components in a way that slows down their interactions. We present the CCAFFEINE solutions to several fundamental problems in the application of component software approaches to the construction of single program multiple data (SPMD) applications. We demonstrate the integration of components from three organizations, two within Sandia and one at Oak Ridge National Laboratory. We outline some requirements for key enabling facilities needed for a successful component approach to SPMD application building.

MSC:
68U99 Computing methodologies and applications
68N19 Other programming paradigms (object-oriented, sequential, concurrent, automatic, etc.)
PDF BibTeX XML Cite
Full Text: DOI
References:
[1] AVS Web page. http://www.avs.com/.
[2] The Mathworks Web page. http://www.mathworks.com/.
[3] The netlib Repository. http://www.netlib.org/.
[4] et al. POOMA: A framework for scientific simulations on parallel architectures. Parallel Programming Using C++, (eds.). MIT Press: Cambridge, MA, 1996; 553-594.
[5] Array Design and Expression Evaluation in POOMA II (Lecture Notes in Computer Science, vol. 1505). Springer: New York & Berlin, 1998; 231.
[6] Sierra Web page. http://www.cfd.sandia.gov/sierra.html.
[7] OVERTURE: An object-oriented software system for solving partial differential equations in serial and parallel environments. Proceedings of the Eighth SIAM Conference on Parallel Processing for Scientific Computing, Minneapolis, MN, March 1997. SIAM: Philadelphia, PA, 1997.
[8] Design of the HYPRE preconditioner library. Object Oriented Methods for Interoperable Scientific and Engineering Computing, (eds.). SIAM: Philadelphia, PA, 1999.
[9] System engineering for high performance computing software: The HDDA/DAGH infrastructure for implementation of parallel structured adaptive mesh refinement. IMA Volume 117: Structured Adaptive Mesh Refinement Grid Methods, (eds.). Springer: Berlin, 2000; 1-18. · Zbl 0942.65099
[10] et al. A common data management infrastructure for parallel adaptive algorithms for PDE solutions. Proceedings of Supercomputing’97, November 1997. IEEE Computer Society: Washington, DC, 1997.
[11] Efficient management of parallelism in object oriented numerical software libraries. Modern Software Tools in Scientific Computing, (eds.). Birkhauser: Boston, MA, 1997; 163-202. · Zbl 0882.65154
[12] Unitah: A massively parallel problem solving environment. HPDC’00: Ninth IEEE International Symposium on High Performance and Distributed Computing, August 2000. IEEE Computer Society: Washington, DC, 2000.
[13] Towards a common component architecture for high-performance scientific computing. Eighth IEEE International Symposium on High Performance Distributed Computing, August 1999. IEEE Computer Society: Washington, DC, 1999.
[14] A component based services architecture for building distributed applications. Proceedings Ninth IEEE International Symposium on High Performance and Distributed Computing, August 2000. IEEE Computer Society: Washington, DC, 2000.
[15] Visual Basic Web page. http://msdn.microsoft.com/vbasic ?12 December 2000?.
[16] Developing Java Beans (Java Series). O’Reilly and Associates: Sebastopol, CA, 1997. http://www.java.sun.com/products/javabeans.
[17] CORBA Component Model Web page. http://www.omg.org ?12 December 2000?.
[18] Applying Enterprise JavaBeans: Component-Based Development for the J2EE Platform (The Java Series). Addison-Wesley: Reading, MA, 2000.
[19] CCA forum’s Common Component Architecture Specification Web page. http://z.ca.sandia.gov/?cca-forum/spec ?2000?.
[20] Language interoperability for high-performance parallel scientific components. International Symposium on Computing in Object-Oriented Parallel Environments (ISCOPE ’99). Springer: New York & Berlin, 1999.
[21] Divorcing language dependencies from a scientific software library. 10th SIAM Conference on Parallel Processing. SIAM: Philadelphia, PA, 2000.
[22] Web appendix accompanying this paper. http://z.ca.sandia.gov/?cca-forum/Concurrency00Appendix.html ?22 December 2000?.
[23] Private Communication.
[24] Efficient and flexible fault tolerance and migration of scientific simulation using CUMULVS. Proceedings of the 2nd SIGMETRICS Symposium on Parallel and Distributed Tools, Welches, OR, August 1998. ACM: New York, NY, 1998.
[25] Geist, International Journal of High Performance Computing Applications 11 pp 224– (1997)
[26] Kohl, ORNL Review, Special Issue on Advanced Computing 30 (1997)
[27] Isis++ Web page. http://z.ca.sandia.gov/isis ?12 December 2000?.
[28] CPlant Web page. http://www.cplant.ca.sandia.gov/ ?12 December 2000?.
[29] CCA forum’s Web page. http://z.ca.sandia.gov/?cca-forum/spec/ ?20 December 2000?.
This reference list is based on information provided by the publisher or from digital mathematics libraries. Its items are heuristically matched to zbMATH identifiers and may contain data conversion errors. It attempts to reflect the references listed in the original paper as accurately as possible without claiming the completeness or perfect precision of the matching.