1 |
% $Header$ |
% $Header$ |
2 |
|
|
3 |
This chapter focuses on describing the {\bf WRAPPER} environment within which |
This chapter focuses on describing the {\bf WRAPPER} environment |
4 |
both the core numerics and the pluggable packages operate. The description |
within which both the core numerics and the pluggable packages |
5 |
presented here is intended to be a detailed exposition and contains significant |
operate. The description presented here is intended to be a detailed |
6 |
background material, as well as advanced details on working with the WRAPPER. |
exposition and contains significant background material, as well as |
7 |
The tutorial sections of this manual (see sections |
advanced details on working with the WRAPPER. The tutorial sections |
8 |
\ref{sect:tutorials} and \ref{sect:tutorialIII}) |
of this manual (see sections \ref{sect:tutorials} and |
9 |
contain more succinct, step-by-step instructions on running basic numerical |
\ref{sect:tutorialIII}) contain more succinct, step-by-step |
10 |
experiments, of varous types, both sequentially and in parallel. For many |
instructions on running basic numerical experiments, of varous types, |
11 |
projects simply starting from an example code and adapting it to suit a |
both sequentially and in parallel. For many projects simply starting |
12 |
particular situation |
from an example code and adapting it to suit a particular situation |
13 |
will be all that is required. |
will be all that is required. The first part of this chapter |
14 |
The first part of this chapter discusses the MITgcm architecture at an |
discusses the MITgcm architecture at an abstract level. In the second |
15 |
abstract level. In the second part of the chapter we described practical |
part of the chapter we described practical details of the MITgcm |
16 |
details of the MITgcm implementation and of current tools and operating system |
implementation and of current tools and operating system features that |
17 |
features that are employed. |
are employed. |
18 |
|
|
19 |
\section{Overall architectural goals} |
\section{Overall architectural goals} |
20 |
\begin{rawhtml} |
\begin{rawhtml} |
25 |
three-fold |
three-fold |
26 |
|
|
27 |
\begin{itemize} |
\begin{itemize} |
28 |
\item We wish to be able to study a very broad range |
\item We wish to be able to study a very broad range of interesting |
29 |
of interesting and challenging rotating fluids problems. |
and challenging rotating fluids problems. |
30 |
\item We wish the model code to be readily targeted to |
\item We wish the model code to be readily targeted to a wide range of |
31 |
a wide range of platforms |
platforms |
32 |
\item On any given platform we would like to be |
\item On any given platform we would like to be able to achieve |
33 |
able to achieve performance comparable to an implementation |
performance comparable to an implementation developed and |
34 |
developed and specialized specifically for that platform. |
specialized specifically for that platform. |
35 |
\end{itemize} |
\end{itemize} |
36 |
|
|
37 |
These points are summarized in figure \ref{fig:mitgcm_architecture_goals} |
These points are summarized in figure |
38 |
which conveys the goals of the MITgcm design. The goals lead to |
\ref{fig:mitgcm_architecture_goals} which conveys the goals of the |
39 |
a software architecture which at the high-level can be viewed as consisting |
MITgcm design. The goals lead to a software architecture which at the |
40 |
of |
high-level can be viewed as consisting of |
41 |
|
|
42 |
\begin{enumerate} |
\begin{enumerate} |
43 |
\item A core set of numerical and support code. This is discussed in |
\item A core set of numerical and support code. This is discussed in |
71 |
\begin{center} |
\begin{center} |
72 |
\resizebox{!}{2.5in}{\includegraphics{part4/mitgcm_goals.eps}} |
\resizebox{!}{2.5in}{\includegraphics{part4/mitgcm_goals.eps}} |
73 |
\end{center} |
\end{center} |
74 |
\caption{ |
\caption{ The MITgcm architecture is designed to allow simulation of a |
75 |
The MITgcm architecture is designed to allow simulation of a wide |
wide range of physical problems on a wide range of hardware. The |
76 |
range of physical problems on a wide range of hardware. The computational |
computational resource requirements of the applications targeted |
77 |
resource requirements of the applications targeted range from around |
range from around $10^7$ bytes ($\approx 10$ megabytes) of memory to |
78 |
$10^7$ bytes ( $\approx 10$ megabytes ) of memory to $10^{11}$ bytes |
$10^{11}$ bytes ($\approx 100$ gigabytes). Arithmetic operation |
79 |
( $\approx 100$ gigabytes). Arithmetic operation counts for the applications of |
counts for the applications of interest range from $10^{9}$ floating |
80 |
interest range from $10^{9}$ floating point operations to more than $10^{17}$ |
point operations to more than $10^{17}$ floating point operations.} |
|
floating point operations.} |
|
81 |
\label{fig:mitgcm_architecture_goals} |
\label{fig:mitgcm_architecture_goals} |
82 |
\end{figure} |
\end{figure} |
83 |
|
|
86 |
<!-- CMIREDIR:wrapper: --> |
<!-- CMIREDIR:wrapper: --> |
87 |
\end{rawhtml} |
\end{rawhtml} |
88 |
|
|
89 |
A significant element of the software architecture utilized in |
A significant element of the software architecture utilized in MITgcm |
90 |
MITgcm is a software superstructure and substructure collectively |
is a software superstructure and substructure collectively called the |
91 |
called the WRAPPER (Wrappable Application Parallel Programming |
WRAPPER (Wrappable Application Parallel Programming Environment |
92 |
Environment Resource). All numerical and support code in MITgcm is written |
Resource). All numerical and support code in MITgcm is written to |
93 |
to ``fit'' within the WRAPPER infrastructure. Writing code to ``fit'' within |
``fit'' within the WRAPPER infrastructure. Writing code to ``fit'' |
94 |
the WRAPPER means that coding has to follow certain, relatively |
within the WRAPPER means that coding has to follow certain, relatively |
95 |
straightforward, rules and conventions (these are discussed further in |
straightforward, rules and conventions (these are discussed further in |
96 |
section \ref{sect:specifying_a_decomposition}). |
section \ref{sect:specifying_a_decomposition}). |
97 |
|
|
98 |
The approach taken by the WRAPPER is illustrated in figure |
The approach taken by the WRAPPER is illustrated in figure |
99 |
\ref{fig:fit_in_wrapper} which shows how the WRAPPER serves to insulate code |
\ref{fig:fit_in_wrapper} which shows how the WRAPPER serves to |
100 |
that fits within it from architectural differences between hardware platforms |
insulate code that fits within it from architectural differences |
101 |
and operating systems. This allows numerical code to be easily retargetted. |
between hardware platforms and operating systems. This allows |
102 |
|
numerical code to be easily retargetted. |
103 |
|
|
104 |
|
|
105 |
\begin{figure} |
\begin{figure} |
416 |
\subsection{Distributed memory communication} |
\subsection{Distributed memory communication} |
417 |
\label{sect:distributed_memory_communication} |
\label{sect:distributed_memory_communication} |
418 |
Many parallel systems are not constructed in a way where it is |
Many parallel systems are not constructed in a way where it is |
419 |
possible or practical for an application to use shared memory |
possible or practical for an application to use shared memory for |
420 |
for communication. For example cluster systems consist of individual computers |
communication. For example cluster systems consist of individual |
421 |
connected by a fast network. On such systems there is no notion of shared memory |
computers connected by a fast network. On such systems there is no |
422 |
at the system level. For this sort of system the WRAPPER provides support |
notion of shared memory at the system level. For this sort of system |
423 |
for communication based on a bespoke communication library |
the WRAPPER provides support for communication based on a bespoke |
424 |
(see figure \ref{fig:comm_msg}). The default communication library used is MPI |
communication library (see figure \ref{fig:comm_msg}). The default |
425 |
\ref{mpi}. However, it is relatively straightforward to implement bindings to |
communication library used is MPI \cite{MPI-std-20}. However, it is |
426 |
optimized platform specific communication libraries. For example the work |
relatively straightforward to implement bindings to optimized platform |
427 |
described in \ref{hoe-hill:99} substituted standard MPI communication for a |
specific communication libraries. For example the work described in |
428 |
highly optimized library. |
\ref{hoe-hill:99} substituted standard MPI communication for a highly |
429 |
|
optimized library. |
430 |
|
|
431 |
\subsection{Communication primitives} |
\subsection{Communication primitives} |
432 |
\label{sect:communication_primitives} |
\label{sect:communication_primitives} |
1481 |
{\footnotesize |
{\footnotesize |
1482 |
\begin{verbatim} |
\begin{verbatim} |
1483 |
C |
C |
|
C |
|
1484 |
C Invocation from WRAPPER level... |
C Invocation from WRAPPER level... |
1485 |
C : |
C : |
1486 |
C : |
C : |
1544 |
C | | |-OPTIM_READPARMS :: Optimisation support package. see pkg/ctrl |
C | | |-OPTIM_READPARMS :: Optimisation support package. see pkg/ctrl |
1545 |
C | | |-GRDCHK_READPARMS :: Gradient check package. see pkg/grdchk |
C | | |-GRDCHK_READPARMS :: Gradient check package. see pkg/grdchk |
1546 |
C | | |-ECCO_READPARMS :: ECCO Support Package. see pkg/ecco |
C | | |-ECCO_READPARMS :: ECCO Support Package. see pkg/ecco |
1547 |
|
C | | |-PTRACERS_READPARMS :: multiple tracer package, see pkg/ptracers |
1548 |
|
C | | |-GCHEM_READPARMS :: tracer interface package, see pkg/gchem |
1549 |
C | | |
C | | |
1550 |
C | |-PACKAGES_CHECK |
C | |-PACKAGES_CHECK |
1551 |
C | | | |
C | | | |
1552 |
C | | |-KPP_CHECK :: KPP Package. pkg/kpp |
C | | |-KPP_CHECK :: KPP Package. pkg/kpp |
1553 |
C | | |-OBCS_CHECK :: Open bndy Package. pkg/obcs |
C | | |-OBCS_CHECK :: Open bndy Pacakge. pkg/obcs |
1554 |
C | | |-GMREDI_CHECK :: GM Package. pkg/gmredi |
C | | |-GMREDI_CHECK :: GM Package. pkg/gmredi |
1555 |
C | | |
C | | |
1556 |
C | |-PACKAGES_INIT_FIXED |
C | |-PACKAGES_INIT_FIXED |
1557 |
C | | |-OBCS_INIT_FIXED :: Open bndy Package. see pkg/obcs |
C | | |-OBCS_INIT_FIXED :: Open bndy Package. see pkg/obcs |
1558 |
C | | |-FLT_INIT :: Floats Package. see pkg/flt |
C | | |-FLT_INIT :: Floats Package. see pkg/flt |
1559 |
|
C | | |-GCHEM_INIT_FIXED :: tracer interface pachage, see pkg/gchem |
1560 |
C | | |
C | | |
1561 |
C | |-ZONAL_FILT_INIT :: FFT filter Package. see pkg/zonal_filt |
C | |-ZONAL_FILT_INIT :: FFT filter Package. see pkg/zonal_filt |
1562 |
C | | |
C | | |
1563 |
C | |-INI_CG2D :: 2d con. grad solver initialisation. |
C | |-INI_CG2D :: 2d con. grad solver initialization. |
1564 |
C | | |
C | | |
1565 |
C | |-INI_CG3D :: 3d con. grad solver initialisation. |
C | |-INI_CG3D :: 3d con. grad solver initialization. |
1566 |
C | | |
C | | |
1567 |
C | |-CONFIG_SUMMARY :: Provide synopsis of kernel setup. |
C | |-CONFIG_SUMMARY :: Provide synopsis of kernel setup. |
1568 |
C | :: Includes annotated table of kernel |
C | :: Includes annotated table of kernel |
1587 |
C | | |-INI_CORI :: Set coriolis term. zero, f-plane, beta-plane, |
C | | |-INI_CORI :: Set coriolis term. zero, f-plane, beta-plane, |
1588 |
C | | | :: sphere options are coded. |
C | | | :: sphere options are coded. |
1589 |
C | | | |
C | | | |
1590 |
C | | |-INI_CG2D :: 2d con. grad solver initialisation. |
C | | |-INI_CG2D :: 2d con. grad solver initialization. |
1591 |
C | | |-INI_CG3D :: 3d con. grad solver initialisation. |
C | | |-INI_CG3D :: 3d con. grad solver initialization. |
1592 |
C | | |-INI_MIXING :: Initialise diapycnal diffusivity. |
C | | |-INI_MIXING :: Initialize diapycnal diffusivity. |
1593 |
C | | |-INI_DYNVARS :: Initialise to zero all DYNVARS.h arrays (dynamical |
C | | |-INI_DYNVARS :: Initialize to zero all DYNVARS.h arrays (dynamical |
1594 |
C | | | :: fields). |
C | | | :: fields). |
1595 |
C | | | |
C | | | |
1596 |
C | | |-INI_FIELDS :: Control initializing model fields to non-zero |
C | | |-INI_FIELDS :: Control initializing model fields to non-zero |
1598 |
C | | | |-INI_THETA :: Set model initial temperature field. |
C | | | |-INI_THETA :: Set model initial temperature field. |
1599 |
C | | | |-INI_SALT :: Set model initial salinity field. |
C | | | |-INI_SALT :: Set model initial salinity field. |
1600 |
C | | | |-INI_PSURF :: Set model initial free-surface height/pressure. |
C | | | |-INI_PSURF :: Set model initial free-surface height/pressure. |
1601 |
C | | | |
C | | | |-INI_PRESSURE :: Compute model initial hydrostatic pressure |
1602 |
C | | |-INI_TR1 :: Set initial tracer 1 distribution. |
C | | | |-READ_CHECKPOINT :: Read the checkpoint |
1603 |
C | | | |
C | | | |
1604 |
C | | |-THE_CORRECTION_STEP :: Step forward to next time step. |
C | | |-THE_CORRECTION_STEP :: Step forward to next time step. |
1605 |
C | | | | :: Here applied to move restart conditions |
C | | | | :: Here applied to move restart conditions |
1626 |
C | | | |-CONVECT :: Mix static instability. |
C | | | |-CONVECT :: Mix static instability. |
1627 |
C | | | |-TIMEAVE_CUMULATE :: Update convection statistics. |
C | | | |-TIMEAVE_CUMULATE :: Update convection statistics. |
1628 |
C | | | |
C | | | |
1629 |
C | | |-PACKAGES_INIT_VARIABLES :: Does initialisation of time evolving |
C | | |-PACKAGES_INIT_VARIABLES :: Does initialization of time evolving |
1630 |
C | | | | :: package data. |
C | | | | :: package data. |
1631 |
C | | | | |
C | | | | |
1632 |
C | | | |-GMREDI_INIT :: GM package. ( see pkg/gmredi ) |
C | | | |-GMREDI_INIT :: GM package. ( see pkg/gmredi ) |
1633 |
C | | | |-KPP_INIT :: KPP package. ( see pkg/kpp ) |
C | | | |-KPP_INIT :: KPP package. ( see pkg/kpp ) |
1634 |
C | | | |-KPP_OPEN_DIAGS |
C | | | |-KPP_OPEN_DIAGS |
1635 |
C | | | |-OBCS_INIT_VARIABLES :: Open bndy. package. ( see pkg/obcs ) |
C | | | |-OBCS_INIT_VARIABLES :: Open bndy. package. ( see pkg/obcs ) |
1636 |
|
C | | | |-PTRACERS_INIT :: multi. tracer package,(see pkg/ptracers) |
1637 |
|
C | | | |-GCHEM_INIT :: tracer interface pkg (see pkh/gchem) |
1638 |
C | | | |-AIM_INIT :: Interm. atmos package. ( see pkg/aim ) |
C | | | |-AIM_INIT :: Interm. atmos package. ( see pkg/aim ) |
1639 |
C | | | |-CTRL_MAP_INI :: Control vector package.( see pkg/ctrl ) |
C | | | |-CTRL_MAP_INI :: Control vector package.( see pkg/ctrl ) |
1640 |
C | | | |-COST_INIT :: Cost function package. ( see pkg/cost ) |
C | | | |-COST_INIT :: Cost function package. ( see pkg/cost ) |
1677 |
C/\ | | | | :: for forcing datasets. |
C/\ | | | | :: for forcing datasets. |
1678 |
C/\ | | | | |
C/\ | | | | |
1679 |
C/\ | | | |-EXCH :: Sync forcing. in overlap regions. |
C/\ | | | |-EXCH :: Sync forcing. in overlap regions. |
1680 |
|
C/\ | | |-SEAICE_MODEL :: Compute sea-ice terms. ( pkg/seaice ) |
1681 |
|
C/\ | | |-FREEZE :: Limit surface temperature. |
1682 |
|
C/\ | | |-GCHEM_FIELD_LOAD :: load tracer forcing fields (pkg/gchem) |
1683 |
C/\ | | | |
C/\ | | | |
1684 |
C/\ | | |-THERMODYNAMICS :: theta, salt + tracer equations driver. |
C/\ | | |-THERMODYNAMICS :: theta, salt + tracer equations driver. |
1685 |
C/\ | | | | |
C/\ | | | | |
1686 |
C/\ | | | |-INTEGRATE_FOR_W :: Integrate for vertical velocity. |
C/\ | | | |-INTEGRATE_FOR_W :: Integrate for vertical velocity. |
1687 |
C/\ | | | |-OBCS_APPLY_W :: Open bndy. package ( see pkg/obcs ). |
C/\ | | | |-OBCS_APPLY_W :: Open bndy. package ( see pkg/obcs ). |
1688 |
C/\ | | | |-FIND_RHO :: Calculates [rho(S,T,z)-Rhonil] of a slice |
C/\ | | | |-FIND_RHO :: Calculates [rho(S,T,z)-RhoConst] of a slice |
1689 |
C/\ | | | |-GRAD_SIGMA :: Calculate isoneutral gradients |
C/\ | | | |-GRAD_SIGMA :: Calculate isoneutral gradients |
1690 |
C/\ | | | |-CALC_IVDC :: Set Implicit Vertical Diffusivity for Convection |
C/\ | | | |-CALC_IVDC :: Set Implicit Vertical Diffusivity for Convection |
1691 |
C/\ | | | | |
C/\ | | | | |
1692 |
C/\ | | | |-OBCS_CALC :: Open bndy. package ( see pkg/obcs ). |
C/\ | | | |-OBCS_CALC :: Open bndy. package ( see pkg/obcs ). |
1693 |
C/\ | | | |-EXTERNAL_FORCING_SURF:: Accumulates appropriately dimensioned |
C/\ | | | |-EXTERNAL_FORCING_SURF:: Accumulates appropriately dimensioned |
1694 |
C/\ | | | | :: forcing terms. |
C/\ | | | | | :: forcing terms. |
1695 |
|
C/\ | | | | |-PTRACERS_FORCING_SURF :: Tracer package ( see pkg/ptracers ). |
1696 |
C/\ | | | | |
C/\ | | | | |
1697 |
C/\ | | | |-GMREDI_CALC_TENSOR :: GM package ( see pkg/gmredi ). |
C/\ | | | |-GMREDI_CALC_TENSOR :: GM package ( see pkg/gmredi ). |
1698 |
C/\ | | | |-GMREDI_CALC_TENSOR_DUMMY :: GM package ( see pkg/gmredi ). |
C/\ | | | |-GMREDI_CALC_TENSOR_DUMMY :: GM package ( see pkg/gmredi ). |
1710 |
C/\ | | | |-CALC_GT :: Calculate the temperature tendency terms |
C/\ | | | |-CALC_GT :: Calculate the temperature tendency terms |
1711 |
C/\ | | | | | |
C/\ | | | | | |
1712 |
C/\ | | | | |-GAD_CALC_RHS :: Generalised advection package |
C/\ | | | | |-GAD_CALC_RHS :: Generalised advection package |
1713 |
C/\ | | | | | :: ( see pkg/gad ) |
C/\ | | | | | | :: ( see pkg/gad ) |
1714 |
|
C/\ | | | | | |-KPP_TRANSPORT_T :: KPP non-local transport ( see pkg/kpp ). |
1715 |
|
C/\ | | | | | |
1716 |
C/\ | | | | |-EXTERNAL_FORCING_T :: Problem specific forcing for temperature. |
C/\ | | | | |-EXTERNAL_FORCING_T :: Problem specific forcing for temperature. |
1717 |
C/\ | | | | |-ADAMS_BASHFORTH2 :: Extrapolate tendencies forward in time. |
C/\ | | | | |-ADAMS_BASHFORTH2 :: Extrapolate tendencies forward in time. |
1718 |
C/\ | | | | |-FREESURF_RESCALE_G :: Re-scale Gt for free-surface height. |
C/\ | | | | |-FREESURF_RESCALE_G :: Re-scale Gt for free-surface height. |
1722 |
C/\ | | | |-CALC_GS :: Calculate the salinity tendency terms |
C/\ | | | |-CALC_GS :: Calculate the salinity tendency terms |
1723 |
C/\ | | | | | |
C/\ | | | | | |
1724 |
C/\ | | | | |-GAD_CALC_RHS :: Generalised advection package |
C/\ | | | | |-GAD_CALC_RHS :: Generalised advection package |
1725 |
C/\ | | | | | :: ( see pkg/gad ) |
C/\ | | | | | | :: ( see pkg/gad ) |
1726 |
|
C/\ | | | | | |-KPP_TRANSPORT_S :: KPP non-local transport ( see pkg/kpp ). |
1727 |
|
C/\ | | | | | |
1728 |
C/\ | | | | |-EXTERNAL_FORCING_S :: Problem specific forcing for salt. |
C/\ | | | | |-EXTERNAL_FORCING_S :: Problem specific forcing for salt. |
1729 |
C/\ | | | | |-ADAMS_BASHFORTH2 :: Extrapolate tendencies forward in time. |
C/\ | | | | |-ADAMS_BASHFORTH2 :: Extrapolate tendencies forward in time. |
1730 |
C/\ | | | | |-FREESURF_RESCALE_G :: Re-scale Gs for free-surface height. |
C/\ | | | | |-FREESURF_RESCALE_G :: Re-scale Gs for free-surface height. |
1731 |
C/\ | | | | |
C/\ | | | | |
1732 |
C/\ | | | |-TIMESTEP_TRACER :: Step tracer field forward in time |
C/\ | | | |-TIMESTEP_TRACER :: Step tracer field forward in time |
1733 |
C/\ | | | | |
C/\ | | | | |
1734 |
C/\ | | | |-CALC_GTR1 :: Calculate other tracer(s) tendency terms |
C/\ | | | |-TIMESTEP_TRACER :: Step tracer field forward in time |
1735 |
|
C/\ | | | | |
1736 |
|
C/\ | | | |-PTRACERS_INTEGRATE :: Integrate other tracer(s) (see pkg/ptracers). |
1737 |
C/\ | | | | | |
C/\ | | | | | |
1738 |
C/\ | | | | |-GAD_CALC_RHS :: Generalised advection package |
C/\ | | | | |-GAD_CALC_RHS :: Generalised advection package |
1739 |
C/\ | | | | | :: ( see pkg/gad ) |
C/\ | | | | | | :: ( see pkg/gad ) |
1740 |
C/\ | | | | |-EXTERNAL_FORCING_TR:: Problem specific forcing for tracer. |
C/\ | | | | | |-KPP_TRANSPORT_PTR:: KPP non-local transport ( see pkg/kpp ). |
1741 |
|
C/\ | | | | | |
1742 |
|
C/\ | | | | |-PTRACERS_FORCING :: Problem specific forcing for tracer. |
1743 |
|
C/\ | | | | |-GCHEM_FORCING_INT :: tracer forcing for gchem pkg (if all |
1744 |
|
C/\ | | | | | tendancy terms calcualted together) |
1745 |
C/\ | | | | |-ADAMS_BASHFORTH2 :: Extrapolate tendencies forward in time. |
C/\ | | | | |-ADAMS_BASHFORTH2 :: Extrapolate tendencies forward in time. |
1746 |
C/\ | | | | |-FREESURF_RESCALE_G :: Re-scale Gs for free-surface height. |
C/\ | | | | |-FREESURF_RESCALE_G :: Re-scale Gs for free-surface height. |
1747 |
|
C/\ | | | | |-TIMESTEP_TRACER :: Step tracer field forward in time |
1748 |
C/\ | | | | |
C/\ | | | | |
|
C/\ | | | |-TIMESTEP_TRACER :: Step tracer field forward in time |
|
1749 |
C/\ | | | |-OBCS_APPLY_TS :: Open bndy. package (see pkg/obcs ). |
C/\ | | | |-OBCS_APPLY_TS :: Open bndy. package (see pkg/obcs ). |
|
C/\ | | | |-FREEZE :: Limit range of temperature. |
|
1750 |
C/\ | | | | |
C/\ | | | | |
1751 |
C/\ | | | |-IMPLDIFF :: Solve vertical implicit diffusion equation. |
C/\ | | | |-IMPLDIFF :: Solve vertical implicit diffusion equation. |
1752 |
C/\ | | | |-OBCS_APPLY_TS :: Open bndy. package (see pkg/obcs ). |
C/\ | | | |-OBCS_APPLY_TS :: Open bndy. package (see pkg/obcs ). |
1805 |
C/\ | | |-DO_FIELDS_BLOCKING_EXCHANGES :: Sync up overlap regions. |
C/\ | | |-DO_FIELDS_BLOCKING_EXCHANGES :: Sync up overlap regions. |
1806 |
C/\ | | | |-EXCH |
C/\ | | | |-EXCH |
1807 |
C/\ | | | |
C/\ | | | |
1808 |
|
C/\ | | |-GCHEM_FORCING_SEP :: tracer forcing for gchem pkg (if |
1809 |
|
C/\ | | | tracer dependent tendencies calculated |
1810 |
|
C/\ | | | separatly) |
1811 |
|
C/\ | | | |
1812 |
C/\ | | |-FLT_MAIN :: Float package ( pkg/flt ). |
C/\ | | |-FLT_MAIN :: Float package ( pkg/flt ). |
1813 |
C/\ | | | |
C/\ | | | |
1814 |
C/\ | | |-MONITOR :: Monitor package ( pkg/monitor ). |
C/\ | | |-MONITOR :: Monitor package ( pkg/monitor ). |
1819 |
C/\ | | | |-AIM_WRITE_DIAGS :: Intermed. atmos diags. see pkg/aim |
C/\ | | | |-AIM_WRITE_DIAGS :: Intermed. atmos diags. see pkg/aim |
1820 |
C/\ | | | |-GMREDI_DIAGS :: GM diags. see pkg/gmredi |
C/\ | | | |-GMREDI_DIAGS :: GM diags. see pkg/gmredi |
1821 |
C/\ | | | |-KPP_DO_DIAGS :: KPP diags. see pkg/kpp |
C/\ | | | |-KPP_DO_DIAGS :: KPP diags. see pkg/kpp |
1822 |
|
C/\ | | | |-SBO_CALC :: SBO diags. see pkg/sbo |
1823 |
|
C/\ | | | |-SBO_DIAGS :: SBO diags. see pkg/sbo |
1824 |
|
C/\ | | | |-SEAICE_DO_DIAGS :: SEAICE diags. see pkg/seaice |
1825 |
|
C/\ | | | |-GCHEM_DIAGS :: gchem diags. see pkg/gchem |
1826 |
C/\ | | | |
C/\ | | | |
1827 |
C/\ | | |-WRITE_CHECKPOINT :: Do I/O for restart files. |
C/\ | | |-WRITE_CHECKPOINT :: Do I/O for restart files. |
1828 |
C/\ | | |
C/\ | | |
1840 |
C | |
C | |
1841 |
C |-COMM_STATS :: Summarise inter-proc and inter-thread communication |
C |-COMM_STATS :: Summarise inter-proc and inter-thread communication |
1842 |
C :: events. |
C :: events. |
1843 |
C |
C |
1844 |
\end{verbatim} |
\end{verbatim} |
1845 |
} |
} |
1846 |
|
|