gfdl homepage > people > v. balaji's homepage > this page
IO Domains: Proposal to extend FMS data structures to support asynchronous parallel IO
IO Domains: Proposal to extend FMS data structures to support asynchronous parallel IO
Abstract
Current FMS practice is to use single-threaded I/O for restart files, and distributed I/O, followed by mppnccombine, for history files. As our processor counts climb from 𝒪(100) to 𝒪(1000), we observe that I/O is starting to become a significant drag on performance.
The current proposal extends the domain2D data structure to support an I/O subdomain. The subdomain is assigned to an independent list of PEs, on which the parent domain has null computational and data domains. Thus, these I/O PEs perform no computation. When an I/O request is made on the domain, the computational PEs transfer the data to the I/O PEs using mpp_redistribute (which is non-blocking on the computational PEs) and proceed with the calculation. The I/O PEs perform a blocking receive on the data, and proceed with I/O concurrently withe the computation.
Implications for code in the higher I/O layers (fms_io and diag_manager) is discussed, as well as assumptions about model code that may or may not be met.
* Corresponding author: V. Balaji, Princeton University and NOAA/GFDL, 201 Forrestal Road, Princeton NJ 08540-6646. Email: balaji@princeton.edu
last modified: 11 October 2007
this page visited: times
