The
DDB is a general purpose tool for coupling multiple, possibly
heterogeneous, parallel models. It is implemented as a library
used by all participating elements, one of which serves as a distinguished
process during a startup phase preceding the main computation
(Sklower et al., 2002). This "registration broker" process
correlates offers to produce quantities with requests to consume
them, forwards the list of intersections to each of the producers,
and informs each consumer of how many pieces to expect.
After the initial phase, the registration broker may participate
as a regular member of the computation. A library of data
translation routines is included in the DDB to support exchanges
of data between models using different computational grids.
Having each producer send directly to each consumer conserves
bandwidth, reduces memory requirements, and minimizes the delay
that would otherwise occur if a centralized element were to reassemble
each of the fields and retransmit them.
Function
Software
tool to handle distributed data exchange between the ESM component
Major
Task
Gather
information from each model component (may have been decomposed
into many subdomains running at different processors).
Convert
data resolutions, units, etc., and redistribute them to the needed
model components.
Keep
track of coupling sequence, such as how often AGCM needs sea surface
temperature and which processors have that information.