[MITgcm-devel] seaice I/O flags: the cut & paste solution
Jean-Michel Campin
jmc at ocean.mit.edu
Sun May 22 14:31:06 EDT 2005
Hi,
Few remarks about the recent changes in the seaice I/O flags (MNC/MDS):
I just did a "cut & paste" from a pkg where I know the flags
are correctly set (I took pkg/thsice), it was quick (in fact, faster
than to try to figure out what was going on in the previous implementation)
and it works. In particular:
1) whatever the flags are, a non-zero frequency always produces
output (so that I don't run the model and realized at the end that
the outputs are missing).
2) Simple to use: the default behavior is that 1 flag (useMNC) controls
all the defaults.
3) the possibility exist to select, for each type of output (= each time
there is a specific frequency), whether to use MNC or MDSIO.
Regarding the defaults, I found useful to have
SEAICE_tave_mnc(default) = timeave_mnc, since we already have
SEAICE_taveFreq(default) = taveFreq
Note that this is not inconsistent with point 2, since timeave_mnc(default)=useMNC
None of 3 things were fully working in the previous implementation.
Some are not convinced that point 3 is a good approach ("too many flags").
However, it tends to be quiet useful, and as long as the default are
set correctly, does not require any knowledge of what those flags are,
to switch between MNC and MDSIO:
a) seaice snap-shot with MNC is clearly not working, but with 2 separated
flags, I can still use MNC for seaice time-averaged output.
b) I noticed that, running the lab-sea test on my laptop (g77)
take ~60.% more cpu time (time report, section ALL, User time)
with useMNC=T compared to the case useMNC=F.
Since I/O are really platform dependent, it's not a bad idea to have
many flags. And I can imagine that, one day, on one particular platform,
one wants to keep few selected outputs with MDSIO (for performance or
other reasons) while most of the output are done MNC.
Jean-Michel
More information about the MITgcm-devel
mailing list