Argonne National Laboratory

Parallel PDE-Based Simulations Using the Common Component Architecture

TitleParallel PDE-Based Simulations Using the Common Component Architecture
Publication TypeReport
Year of Publication2004
AuthorsAllan, BA, Diachin, LF, Benson, SJ, Armstrong, R, Bernholdt, DE, Dahlgren, T, Krishnan, M, Kohl, JA, Larson, JW, Lefantzi, S, McInnes, LCurfman, Nieplocha, J, Norris, B, Parker, SG, Ray, J, Zhou, S
Date Published07/2004
Other NumbersANL/MCS-P1179-0704

<p>The complexity of parallel PDE-based simulations continues to increase as multimodel, multiphysics, and multi-institutional projects become widespread. A goal of component-based software engineering in such large-scale simulations is to help manage this complexity by enabling better interoperability among various codes that have been independently developed by different groups. The Common Component Architecture (CCA) Forum is defining a component architecture specification to address the challenges of high-performance scientific computing. In addition, several execution frameworks, supporting infrastructure, and general-purpose components are being developed. Furthermore, this group is collaborating with others in the high-performance computing community to design suites of domain-specific component interface specifications and underlying implementations. This chapter discusses recent work on leveraging these CCA efforts in parallel PDE-based simulations involving accelerator design, climate modeling, combustion, and accidental figures and explosions. We explain how component technology helps to address the different challenges posed by each of these applications, and we highlight how component interfaces built on existing parallel toolkits facilitate the reuse of software for parallel mesh manipulation, discretization, linear algebra, integration, optimization, and parallel data redistribution. We also present performance data to demonstrate the suitability of this approach, we we discuss strategies for applying component technologies to both new and existing applications.</p>