/[MITgcm]/MITgcm/doc/README
ViewVC logotype

Annotation of /MITgcm/doc/README

Parent Directory Parent Directory | Revision Log Revision Log | View Revision Graph Revision Graph


Revision 1.15 - (hide annotations) (download)
Wed May 5 18:32:33 1999 UTC (25 years ago) by adcroft
Branch: MAIN
CVS Tags: checkpoint46n_post, checkpoint47e_post, checkpoint44e_post, checkpoint46l_post, checkpoint46g_pre, checkpoint47c_post, release1_p13_pre, checkpoint50c_post, checkpoint46f_post, checkpoint48e_post, checkpoint50c_pre, checkpoint44f_post, checkpoint46b_post, checkpoint43a-release1mods, ecco_c50_e32, ecco_c50_e33, ecco_c50_e30, ecco_c50_e31, release1_p13, checkpoint40pre3, checkpoint40pre1, checkpoint40pre7, checkpoint40pre6, checkpoint48i_post, checkpoint40pre9, checkpoint40pre8, checkpoint46l_pre, chkpt44d_post, checkpoint51, checkpoint50, release1_p8, release1_p9, checkpoint50d_post, release1_p1, release1_p2, release1_p3, release1_p4, release1_p5, release1_p6, release1_p7, checkpoint50b_pre, checkpoint44e_pre, release1_b1, ecco_c51_e34d, ecco_c51_e34e, ecco_c51_e34f, ecco_c51_e34g, ecco_c51_e34a, ecco_c51_e34b, ecco_c51_e34c, checkpoint48b_post, checkpoint43, checkpoint51d_post, checkpoint48c_pre, checkpoint47d_pre, checkpoint38, release1_chkpt44d_post, checkpoint47a_post, checkpoint48d_pre, checkpoint47i_post, branch-atmos-merge-shapiro, checkpoint47d_post, icebear5, icebear4, icebear3, icebear2, checkpoint46d_pre, checkpoint40pre2, checkpoint48d_post, release1-branch_tutorials, checkpoint48f_post, checkpoint45d_post, checkpoint46j_pre, chkpt44a_post, checkpoint44h_pre, checkpoint48h_post, checkpoint40pre4, ecco_c50_e29, checkpoint51b_pre, checkpoint46a_post, checkpoint47g_post, checkpoint46j_post, checkpoint28, checkpoint29, checkpoint21, checkpoint22, checkpoint23, checkpoint24, checkpoint25, checkpoint46k_post, checkpoint27, ecco_c50_e28, chkpt44c_pre, checkpoint48a_post, checkpoint45a_post, checkpoint50f_post, checkpoint50a_post, checkpoint50f_pre, branch-atmos-merge-freeze, branch-atmos-merge-start, ecco_c44_e19, ecco_c44_e18, ecco_c44_e17, ecco_c44_e16, release1_p12, release1_p10, release1_p11, release1_p16, release1_p17, release1_p14, release1_p15, checkpoint47j_post, pre38tag1, ecco_c50_e33a, branch-exfmods-tag, checkpoint44g_post, checkpoint26, checkpoint46e_pre, checkpoint48c_post, checkpoint45b_post, checkpoint46b_pre, release1-branch-end, c37_adj, release1_final_v1, checkpoint51b_post, checkpoint51c_post, checkpoint46c_pre, checkpoint46, checkpoint47b_post, checkpoint44b_post, ecco_c51_e34, checkpoint46h_pre, checkpoint46m_post, checkpoint46a_pre, checkpoint50g_post, checkpoint45c_post, ecco_ice2, ecco_ice1, checkpoint44h_post, pre38-close, checkpoint46g_post, release1_p12_pre, checkpoint39, checkpoint33, checkpoint32, checkpoint31, checkpoint30, checkpoint37, checkpoint36, checkpoint35, checkpoint34, ecco_c44_e22, checkpoint50h_post, checkpoint50e_pre, checkpoint50i_post, ecco_c44_e25, checkpoint40pre5, checkpoint47f_post, checkpoint50e_post, chkpt44a_pre, checkpoint46i_post, ecco_c44_e23, ecco_c44_e20, ecco_c44_e21, ecco_c44_e26, ecco_c44_e27, ecco_c44_e24, checkpoint46c_post, ecco-branch-mod1, ecco-branch-mod2, ecco-branch-mod3, ecco-branch-mod4, ecco-branch-mod5, checkpoint50d_pre, branch-atmos-merge-zonalfilt, checkpoint46e_post, release1_beta1, checkpoint51e_post, checkpoint44b_pre, checkpoint42, checkpoint40, checkpoint41, checkpoint47, checkpoint44, checkpoint45, checkpoint48, checkpoint49, checkpoint46h_post, checkpoint51f_pre, chkpt44c_post, checkpoint48g_post, checkpoint47h_post, checkpoint44f_pre, branch-atmos-merge-phase5, branch-atmos-merge-phase4, branch-atmos-merge-phase7, branch-atmos-merge-phase6, branch-atmos-merge-phase1, branch-atmos-merge-phase3, branch-atmos-merge-phase2, checkpoint46d_post, checkpoint50b_post, release1-branch_branchpoint, checkpoint51a_post
Branch point for: c24_e25_ice, branch-exfmods-curt, release1_final, release1-branch, release1, ecco-branch, release1_50yr, icebear, branch-atmos-merge, pre38, release1_coupled
Changes since 1.14: +9 -28 lines
Implemented new I/O package (mdsio.F). This package does parallel
I/O in much the same way as dfile.F used to except it uses "direct
access" rather than (f77) unformatted sequential access.

Problems with dfile.F package included:
  o unnecessary memory use (each process had two global sized buffers)
  o inability to read the files it had written without post-processing
  o "tiled" files were tiled by process/thread rather than actual tiles
  o created huge numbers of files with no alternatives

Features of the mdsio.F package:
  o direct-access binary writes
  o no excessive memory use
  o ability to read/write from multiple record files
  o "tiled" files are based on "WRAPPER" tiles so that the number
    and content of files is independent of the number of threads
    and/or processes
  o option to create single "global" files rather than "tiled" files
  o ability to read both "global" and "tiled" files
    [Caveat: the tiling of files must match the model tiles]
  o checkpoints now use a single file per model section
    ie.  one file for the hydrostatic model core, one file
    for the non-hydrostatic extensions and one file for the C-D
    extensions
  o the mid-level I/O routines now is broken into more source files
    read_write_fld.F supplies basic I/O routines with the same interface
                     as the original I/O package
    read_write_rec.F supplies I/O routines which allow multiple records
    write_state.F    writes the model state
    checkpoint.F     supplies the read/write checkpoint routines

All the example input data has had to be modified to be direct-access.
Otherwise only routines that used I/O have been affected and not
all of those have been due to the continuity of arguments in
the read_write_fld.F routines.

What needs to be done?  We have to create a suite of conversion
utilities for users with old-style data. Also supply the option
for using old-style I/O, not just for die-hards but for reading
data too extensive to be converted. And more...

1 adcroft 1.15 $Header: /u/gcmpack/models/MITgcmUV/doc/README,v 1.14 1998/10/28 03:23:17 cnh Exp $
2 adcroft 1.8
3 cnh 1.2
4 cnh 1.1 MITgcmUV Getting Started
5     ========================
6 cnh 1.3
7     o Introduction
8 cnh 1.4
9 cnh 1.7 This note is a guide to using the MIT General Circulation Model Ultra Verstaile
10     implementation, MITgmcUV. MITgcmUV is a Fortran code that implements the
11     algorithm described in Marshall et. al. 1997, Hill, Adcroft, ...
12     The MITgcmUV implementation is designed to work efficiently on all classes
13     of computer platforms. It can be used in both a single processor mode
14     and a parallel processor mode. Parallel processing can be either multi-threaded
15     shared memory such as that found on CRAY T90 machines or it can be multi-process
16     distributed memory. A set of "execution enviroment" support routines are
17     used to allow the same numerical code to run on top of a single-process, multi-threaded
18     or distributed multi-process configuration.
19    
20     o Installing
21     To setup the model on a particular computer the code tree must be created
22     and appropriate compile and run scripts set up. For some platforms
23     the necessary scripts are included in the release - in this case follow
24     the steps below:
25    
26     1. Extract MITgcmUV from the downloadable archive
27 cnh 1.14 tar -xvf cNN.tar
28 cnh 1.7
29     2. Create platform specific make file
30 adcroft 1.15 For example on a Digital UNIX machine the script "genmake" can
31 cnh 1.7 be used as shown below
32    
33 cnh 1.9 cd bin
34     ../tools/genmake
35 cnh 1.10 cp Makefile.alpha Makefile ( On Alpha machine)
36 cnh 1.7
37     3. Now create header file dependency entries
38     make depend
39    
40     4. Compile code
41     make
42 adcroft 1.8
43 adcroft 1.15 5. To run the model with example data see the "README" in each of
44     the example experiments in ../verification/exp*/
45     e.g. ../verification/exp2/README
46 cnh 1.7
47 cnh 1.5
48     o Running
49 cnh 1.7
50     - Input and output files
51    
52     Required files
53     ==============
54     The model is configured to look for two files with fixed names.
55     These files are called
56     "eedata" and "data".
57     The file eedata contains "execution environment" data. At present
58     this consists of a specification of the number of threads to
59     use in X and Y under multithreaded execution.
60 cnh 1.5
61     - Serial execution
62    
63 adcroft 1.15 - Parallel execution. MPI
64     mPx, nPy
65     dmpirun
66    
67 cnh 1.5 - Parallel execution. Threads
68     nSx, nSy
69     setenv PARALLEL n
70     nTx=2, nTy=2
71    
72     - Parallel execution. Hybrid
73 cnh 1.11
74     o Cutomising the code
75    
76     Model structure
77     ===============
78     The "numerical" model is contained within a execution
79     environment support wrapper. This wrapper is designed
80     to provide a general framework for grid-point models.
81     MITgcmUV is a specific numerical model that uses the
82     framework.
83     Under this structure the model is split into
84     execution environment support code and conventional
85     numerical model code. The execution environment
86     support code is held under the "eesupp" directory.
87     The grid point model code is held under the
88     "model" directory.
89     Code execution actually starts in the eesupp
90     routines and not in the model routines. For this
91     reason the top level main.F is in the eesupp/src
92     directory. End-users should not need to worry about
93     this level. The top-level routine for the numerical
94     part of the code is in model/src/the_model_main.F.
95    
96 cnh 1.3
97     o References
98 cnh 1.6 Web sites - HP
99     for doc Digital
100     SGI
101     Sun
102     Linux threads
103     CRAY multitasking
104 cnh 1.7 PPT notes

  ViewVC Help
Powered by ViewVC 1.1.22