Exploring memory hierarchy and network topology for runtime AMR data sharing across scientific applications

Runtime data sharing across applications is of great importance for avoiding high I/O overhead for scientific data analytics. Sharing data on a staging space running on a set of dedicated compute nodes is faster than writing data to a slow disk-based parallel file system (PFS) and then reading it back for post-processing. Originally, the staging space has been purely based on main memory (DRAM), and thus was several orders of magnitude faster than the PFS approach. However, storing all the data produced by large-scale simulations on DRAM is impractical. Moving data from memory to SSD-based burst buffers is a potential approach to address this issue. However, SSDs are about one order of magnitude slower than DRAM. To optimize data access performance over the staging space, methods such as prefetching data from SSDs according to detected spatial access patterns and distributing data across the network topology have been explored. Although these methods work well for uniform mesh data, which they were designed for, they are not well suited for adaptive mesh refinement (AMR) data. Two mąjor issues must be addressed before constructing such a memory hierarchy and topology-aware runtime AMR data sharing framework: (1) spatial access pattern detection and prefetching for AMR data; (2) AMR data distribution across the network topology at runtime. We propose a framework that addresses these challenges and demonstrate its effectiveness with extensive experiments on AMR data. Our results show the framework's spatial access pattern detection and prefetching methods demonstrate about 26% performance improvement for client analytical processes. Moreover, the framework's topology-aware data placement can improve overall data access performance by up to 18%.

[1]  Daniel F. Martin,et al.  Adaptive mesh, finite volume modeling of marine ice sheets , 2013, J. Comput. Phys..

[2]  Karsten Schwan,et al.  Flexpath: Type-Based Publish/Subscribe System for Large-Scale Science Analytics , 2014, 2014 14th IEEE/ACM International Symposium on Cluster, Cloud and Grid Computing.

[3]  Scott Klasky,et al.  Moving the Code to the Data - Dynamic Code Deployment Using ActiveSpaces , 2011, 2011 IEEE International Parallel & Distributed Processing Symposium.

[4]  Houjun Tang,et al.  AMRZone: A Runtime AMR Data Sharing Framework for Scientific Applications , 2016, 2016 16th IEEE/ACM International Symposium on Cluster, Cloud and Grid Computing (CCGrid).

[5]  Fan Zhang,et al.  Adaptive data placement for staging-based coupled scientific workflows , 2015, SC15: International Conference for High Performance Computing, Networking, Storage and Analysis.

[6]  Houjun Tang,et al.  Parallel In Situ Detection of Connected Components in Adaptive Mesh Refinement Data , 2015, 2015 15th IEEE/ACM International Symposium on Cluster, Cloud and Grid Computing.

[7]  Fan Zhang,et al.  Exploring Data Staging Across Deep Memory Hierarchies for Coupled Data Intensive Simulation Workflows , 2015, 2015 IEEE International Parallel and Distributed Processing Symposium.

[8]  Kevin Harms,et al.  Scalable Parallel I/O on a Blue Gene/Q Supercomputer Using Compression, Topology-Aware Data Aggregation, and Subfiling , 2014, 2014 22nd Euromicro International Conference on Parallel, Distributed, and Network-Based Processing.

[9]  Jeffrey Bennett,et al.  DASH-IO: an empirical study of flash-based IO for HPC , 2010 .

[10]  Karsten Schwan,et al.  Event-based systems: opportunities and challenges at exascale , 2009, DEBS '09.

[11]  Gerd Heber,et al.  An overview of the HDF5 technology suite and its applications , 2011, AD '11.

[12]  Fan Zhang,et al.  Using cross-layer adaptations for dynamic data management in large scale coupled scientific workflows , 2013, 2013 SC - International Conference for High Performance Computing, Networking, Storage and Analysis (SC).

[13]  Karsten Schwan,et al.  DataStager: scalable data staging services for petascale applications , 2009, HPDC '09.

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

[15]  Fan Zhang,et al.  Combining in-situ and in-transit processing to enable extreme-scale scientific analysis , 2012, 2012 International Conference for High Performance Computing, Networking, Storage and Analysis.

[16]  Christos Faloutsos,et al.  Analysis of the Clustering Properties of the Hilbert Space-Filling Curve , 2001, IEEE Trans. Knowl. Data Eng..

[17]  Scott Klasky,et al.  DataSpaces: an interaction and coordination framework for coupled simulation workflows , 2012, HPDC '10.

[18]  M. Berger,et al.  Automatic adaptive grid refinement for the Euler equations , 1985 .