Experiences from Software Engineering of Large Scale AMR Multiphysics Code Frameworks
This provides insights for software engineers working on high-performance computing (HPC) multiphysics codes, but it is incremental as it reports on existing efforts without introducing new methods.
The paper summarizes experiences and lessons learned from developing two large-scale multiphysics simulation codes, FLASH and Chombo, which use structured adaptive mesh refinement (SAMR) frameworks to manage infrastructure like mesh and I/O.
Among the present generation of multiphysics HPC simulation codes there are many that are built upon general infrastructural frameworks. This is especially true of the codes that make use of structured adaptive mesh refinement (SAMR) because of unique demands placed on the housekeeping aspects of the code. They have varying degrees of abstractions between the infrastructure such as mesh management and IO and the numerics of the physics solvers. In this experience report we summarize the experiences and lessons learned from two of such major software efforts, FLASH and Chombo.