Create Output Model and Configuration Parameters authored by Reiner Jung's avatar Reiner Jung
The output model consists of different configuration files depending on the used packages.
- Overall reference of the architecture https://mitgcm.readthedocs.io/en/latest/software_arch/software_arch.html
## model/inc/SIZE.h
The memory layout is grid based. Where the grid is split up in tiles to be able to parallelize the execution.
- sNx and sNy model grid size for one tile
- OLx and OLy are the extend of the overlay OLx and OLy (usual 4 points) in that case OLx = 4 and OLy = 4. Larger sizes reduce performance.
- nSx and nSy specify the number of tiles for one single process
(Who named them so close to sNx?)
- nPx and nPy define how many processes are used in x and y direction.
The complete model gird size is then:
```
Nx = sNx*nSx*nPx
Ny = sNy*nSy*nPy
```
## input/eedata
This file may hold additional parameters for configuration. So far:
- nTx and nTy which define how many threads can be used per process
- nTx * nTy = the number of threads spawned, i.e., the PARALLEL environment variable.
- nTx must subdivide the number of sub-domains in x (nSx) exactly. (constraint)
- nTy must subdivide the number of sub-domains in y (nSy) exactly. (constraint)
## Overall Configuration
https://mitgcm.readthedocs.io/en/latest/software_arch/software_arch.html#annotated-call-tree-for-mitgcm-and-wrapper