Enabling Tractable Exploration of the Performance of Adaptive Mesh Refinement

A broad range of physical phenomena in science and engineering can be explored using finite difference and volume based application codes. Incorporating Adaptive Mesh Refinement (AMR) into these codes focuses attention on the most critical parts of a simulation, enabling increased numerical accuracy of the solution while limiting memory consumption. However, adaptivity comes at the cost of increased runtime complexity, which is particularly challenging on emerging and expected future architectures. In order to explore the design space offered by new computing environments, we have developed a proxy application called miniAMR. MiniAMR exposes a range of the important issues that will significantly impact the performance potential of full application codes. In this paper, we describe miniAMR, demonstrate what is designed to represent in a full application code, and illustrate how it can be used to exploit future high performance computing architectures. To ensure an accurate understanding of what miniAMR is intended to represent, we compare it with CTH, a shock hydrodynamics code in heavy use throughout several computational science and engineering communities.

[1]  Shahid H. Bokhari,et al.  A Partitioning Strategy for Nonuniform Problems on Multiprocessors , 1987, IEEE Transactions on Computers.

[2]  B. Hendrickson,et al.  Zoltan: A Dynamic Load-Balancing Library for Parallel Applications , 2000 .

[3]  Mahesh Rajan,et al.  Application-Driven Acceptance of Cielo an XE6 Petascale Capability Platform. , 2011 .

[4]  Stephen L. Olivier,et al.  Toward an evolutionary task parallel integrated MPI + X programming model , 2015, PMAM@PPoPP.

[5]  Mark F. Adams,et al.  Chombo Software Package for AMR Applications Design Document , 2014 .

[6]  Stephen A. Jarvis,et al.  Optimisation of Patch Distribution Strategies for AMR Applications , 2012, EPEW/UKPEW.

[7]  C. T. Vaughan,et al.  Assessing the role of mini-applications in predicting key performance characteristics of scientific and engineering applications , 2015, J. Parallel Distributed Comput..

[8]  Sue P. Goudy,et al.  Analysis of an Application on Red Storm , 2006 .

[9]  Scott R. Kohn,et al.  Managing application complexity in the SAMRAI object‐oriented framework , 2002, Concurr. Comput. Pract. Exp..

[10]  M. Berger,et al.  Adaptive mesh refinement for hyperbolic partial differential equations , 1982 .

[11]  Sandia Report,et al.  MiniGhost: A Miniapp for Exploring Boundary Exchange Strategies Using Stencil Computations in Scientific Parallel Computing , 2012 .

[12]  Courtenay T. Vaughan,et al.  Navigating an Evolutionary Fast Path to Exascale , 2012, 2012 SC Companion: High Performance Computing, Networking Storage and Analysis.

[13]  J. M. McGlaun,et al.  CTH: A software family for multi-dimensional shock physics analysis , 1995 .

[14]  P. Colella,et al.  Local adaptive mesh refinement for shock hydrodynamics , 1989 .

[15]  Stephen L. Olivier,et al.  Early Experiences Co-Scheduling Work and Communication Tasks for Hybrid MPI+X Applications , 2014, 2014 Workshop on Exascale MPI at Supercomputing Conference.

[16]  Stephen A. Jarvis,et al.  Optimising Hydrodynamics applications for the Cray XC30 with the application tool suite , 2014 .