A Component Architecture for High-Performance Scientific Computing
David E. Bernholdt, Benjamin A. Allan, Robert Armstrong, Felipe Bertrand, Kenneth Chiu, Tamara L. Dahlgren, Kostadin Damevski, Wael R Elwasif, Thomas G. W. Epperly, Madhusudhan Govindaraju, Daniel S. Katz, James Arthur Kohl, Manoj Krishnan, Gary Kumfert, Jay Walter Larson, Sophia Lefantzi, Michael Lewis, Allen D. Malony, Lois C. Mclnnes, Jarek Nieplocha · The International Journal of High Performance Computing Applications · 2006
The Common Component Architecture (CCA) provides a means for software developers to manage the complexity of large-scale scientific simulations and to move toward a plug-and-play environment for high-performance coputing. In the scientific computing context, component models also promote collaboration using independently developed software, thereby allowing particular individals or groups to focus on the aspects of greatest interest to them. The CCA supports parallel and distributed coputing as well as local high-performance connections between components in a language-independent manner. The design places minimal requirements on components and thus facilitates the integration of existing code into the CCA environment. The CCA model imposes minimal ovehead to minimize the impact on application performance. The focus on high performance distinguishes the CCA from most other component models. The CCA is being applied within an increasing range of disciplines, including cobustion research, global climate simulation, and computtional chemistry.