Database Reference
In-Depth Information
Because the DataTap API is not common to GTC or other current MPP
applications, we use the ADIOS system to make DataTap (and structured
stream) integration easier. By employing this API, a simple change in an
entry in the XML file causes GTC, for example, to use synchronous MPI-IO,
POSIX, our asynchronous DataTap servers, parallel-netCDF, HDF-5, NULL
(no I/O performed), or other transports. Further, each data grouping, such
as a restart versis diagnostic output, can use different transports, at no loss
in performance compared with the direct use of methods like MPI-IO. The
outcome is that integration details for downstream processing are removed
from MPP codes, thereby permitting the user to enable or disable integration
without the need for recompilation or relinking. A key property of structured
streams preserved by ADIOS is the description of the structure of data to
be moved in addition to extents or sizes. This makes it possible to describe
semantically meaningful actions on data in ADIOS, such as chunking it for
more ecient transport, filtering it to remove uninteresting data for analysis
or display, 20 and similar actions.
We describe next the use of DataTap with the GTC code, as an example.
Once GTC had been modified to use ADIOS, it was configured to use the
DataTap as an output transport. The DataTap uses some of the compute
node memory, storage that would otherwise be available to GTC. This method
allows the application to proceed with computation as the data is moved to
the DataTap server. Once at the DataTap server, the data is forwarded into
the I/O graph.
The GTC simulations use several postprocessing tasks. These include the vi-
sualization of the simulated plasma toroid with respect to certain parameters.
We describe next how the visualization data is constructed using DataTap
and the I/O graph. The visualization that has proven useful is a display of
the electrostatic potential at collections of points in a cross-section of the sim-
ulated toroid, called poloidal planes. The poloidal plane is described by a grid
of points, each of which has a scalar value—the electrostatic potential at that
grid vertex. To construct an image, this grid can be plotted in two or three
dimensions, with appropriate color values assigned to represent the range of
potential values. The visualization can be constructed after the simulation
is run by coordinating information across several output files. Using the I/O
graph components, we can recover this information with minimal impact on
the application and, equally importantly, while the application is running.
This permits end users to rapidly inspect simulation results while the MPP
code is executing.
The DataTap is comprised of two separate components, the server and the
client. The DataTap server operates on the I/O or service nodes, while the
DataTap client is an I/O method provided to GTC through the ADIOS API.
Because the number of compute nodes is so much greater than the number
of service nodes, there is a corresponding mismatch between the number of
DataTap clients and servers. To take advantage of asynchronicity, the DataTap
client only issues a transfer request to the DataTap server instead of sending
Search WWH ::




Custom Search