- ...
community10.1
- Optimizing for the idiosyncrasies in computer
environments outside GFDL is left to the researcher.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
- ...
difficult10.2
- As in the Cyber 205 experience.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
- ... speed10.3
- It is reassuring that the
ideas influencing the design of MOM have not significantly altered
speed when compared to MOM 1. Early comparisons were carried out using
the standard test case resolution of
by
and 15
levels. Changes in the external mode of MOM 1 were necessary to assure
the same accuracy as in MOM and there were no diagnostics enabled. MOM
ranged from 3% slower to 6% faster (depending on size of the memory
window) than MOM 1. Minimum memory configuration in MOM was 1% greater
than in MOM 1.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
- ... questionable10.4
- Cases in point were
the old I/O manager and time manager modules.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
- ...
size11.1
- The size of the problem is related to the product of the
number of grid cells in latitude, longitude, and depth. It is also
related to which options are enabled and how many additional passive
tracers are used.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
- ... memory11.2
- The assumption is that
memory is a precious resource which is to be conserved. Historically,
this has been true and the expectation is that it will continue to be
in the future.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
- ...
levels11.3
- At GFDL, the eight processor CRAY YMP had 32MW of
central memory which had been upgraded to 64MW within the last year of
its lifetime. Solid state disk space was 256MW.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
- ... ramdrive11.4
- A ramdrive
is a portion of memory used as a disk to speed up reading and writing
of data. If solid state disk is not available, a ramdrive is a good
alternative.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
- ...
disk11.5
- The viability of this depends on disk access speed. Solid
State Disk on the CRAY YMP, C90, and T90 is fast enough to allow this
to work well. Slower disk access can also work if the reads from disk
are buffered by the work involved in updating the slice. In practice
this is not difficult to implement as long as the slices are to be
accessed in a predetermined way.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
- ... possible11.6
- In
general, two dimensional variables will not collapse into one long
vector because operations along the first dimension typically do not
include boundary cells i=1 and i=imt. In the k dimension, limits
are sometimes a function of i and j. Running indices over boundary
cells leads to out of bounds references which is to be discouraged
because it leads to programming errors and prevents use of the bounds
checking feature on compilers.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
- ...
indices11.7
- Reasons for this ordering are given in Section
11.2.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
- ... row11.8
- When
uni-tasking, since calculations proceed from south to north and the
southern most latitude is land, the second order quantity can be set to
zero at jrow=1. This may be utilized to reduce the minimum size of
the MW to jmw=4 which makes the MW assymetrical. This is no
longer allowed because assymetrical MW's lead to complications when
multi-tasking. To make the assymetrical MW work when multi-tasking
requires extra communication calls and the management of the MW becomes
more complicated. For simplicity, the MW is required to be symmetric
with the same number of buffer rows to the north and south of the
computed rows. The price is 25% more memory for the symmetric MW
which buys simplicity and generality.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
- ...
typically11.9
- When option pressure_gradient_average is
enabled, the value of
must be increased by one.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
- ... CRAY11.10
- Usually the
wait time for rotating disk significantly affects efficiency. The
option for using rotating disk is fio.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
- ... reduced12.1
- In fact, it may increase. However,
the focus is changed from cpu time to wall clock time. Wall clock time
is the time it takes to get results back.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
- ... used12.2
- This is necessary otherwise science may
become processor dependent.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
- ... size12.3
- As the number of grid cells
increase, the number of iterations must increase to keep the same level
of accuracy.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
- ... dimensioned12.4
- Dimensioned by the
full number of grid cells in latitude, longitude, and depth.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
- ... number12.5
- The
important point is to have the same amount of work on each processor.
If more work is required on some rows than others, then the number of
rows on each processsor should be different. It is assumed here that
the same amount of work is on every row and that each processor should
get the same number of rows.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
- ... depth14.1
- Positive vertical
velocity at the bottom of a cell points upward in the positive zdirection
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
- ... dimensional14.2
- Referring to three spatial dimensions.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
- ...
cell)14.3
- The j index need only be dimensioned for the size of
the memory window. Refer to Chapter 10 for a description
of the memory window and Section 14.2 for a description
of jrow.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
- ...
component14.4
- n=1 is the zonal and n=2 is the meridional velocity
component. Vertical velocity is not a prognostic variable. It is a
diagnostic variable defined as an advective velocity at the bottom face
of cells. Note that since there are T cells and U cells, there are
vertical velocities associated with each. For diagnostic purposes, the
vertical velocity on the bottom of T cells is output.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
- ... tracer14.5
- n=1 is for potential temperature in units
of degrees C, n=2 is for salinity. The ``model salinity unit'' is
(ppt-35)/1000 where ``ppt'' is ``parts per thousand'' or ``grams of
salt per kilogram of water''. The ``ppt'' unit of salinity has been
largely replaced by ``practical salinity units'' or ``psu'' in the
literature which is based on conductivity measurements instead of
measuring ``grams of salt per kilogram of water''. MOM uses
for the Boussinesq approximation. The
model salinity units can be converted back to ``ppt'' by adding 0.035
grams/cm3 and multiplying by 1000. n > 2 is for additional
passive tracers.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
- ...
diffusion14.6
- This is the explicit portion of K33 indicated
in 34.1 when option isoneutralmix is enabled. If
option implicitvmix is enabled, then it is the explicit part of
the vertical diffusion.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
- ... form14.7
- These are the
K31 and K32 tensor components indicated in Section
34.1.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
- ...
diffusion14.8
- If option implicitvmix is enabled, then it is
the explicit part of the vertical diffusion.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
- ...14.9
- This is a non-standard Fortran 77 feature that
is very useful. Most compilers support it. Refer to any Fortran manual
for usage.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
- ... time15.1
- Date and time
defined at the center of the data record. For instance, if the record
was January (31 days long), the centered time would be at day 15.5
which is the center.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
- ... execute15.2
- This time is accounted for in the timer
routines.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
- ... events15.3
- The interval
must be referenced to a starting time which may be specified as the
beginning of the experiment, the beginning of a particular job, or a
specific date in time.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
- ...
quantities15.4
- Each event may have its own interval and averaging
period.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.