The
UCLA AGCM is a complex code
representing many physical processes.
Despite the complexity of the
code, one can identify the following
two major components:
- AGCM/Dynamics,
which computes the evolution of
the fluid flow governed by the
appropriate equations (the primative
equations written in finite differences).
- AGCM/Physics,
which computs the effect of processes
not resolved by the model's grid
(such as convection on cloud scales)
on processes that are resolved
by the grid (such as the flow
on the large scale).
The
OGCM also has two major components:
- OGCM/Baroclinic,
determines the deviation from
the vertically averaged velocity,
temperature and salinity fields.
- OGCM/Barotropic,
determines the vertically averaged
distributions of those fields.
The
coupled atmosphere-ocean GCM, therefore,
can be decomposed into four components.
When
run on a single node in the AGCM and
OGCM codes execute sequentially and
exchange information corresponding
to the air-sea interface. The AGCM
is first integrated for a fixed period
of time and then transfers the time-averaged
sea surface temperature to the AGCM.
The data transfers, including the
interpolations required by differences
in grid resolution between model components,
are performed by a suite of coupling
routines.
When
run on multiple nodes, a scheme that
allows the two codes to run in parallel
is used. Because AGCM/Dynamics does
not exchange data with the OGCM, these
components can run in parallel. Further,
AGCM/Physics can start as soon as
OGCM/Baroclinic completes its calculation,
because this includes the sea surface
temperatrue, and can run in parallel
with the OGCM/Barotropic. The figure
below is a schematic of this running
stragegy, under the assumption that
overhed due to distribution can be
neglected and model components running
in parallel are perfectly balanced.
