New URL for NEMO forge!   http://forge.nemo-ocean.eu

Since March 2022 along with NEMO 4.2 release, the code development moved to a self-hosted GitLab.
This present forge is now archived and remained online for history.
2009WP/2009Stream1 – NEMO
wiki:2009WP/2009Stream1

Version 3 (modified by rblod, 15 years ago) (diff)

--

2009 Stream 1 : User Interface


Last edited Timestamp?


This is a continuing stream for which, in 2008, we have simplified the forcing interface (SBC module + on-the-fly interpolation) and the TOP interface. The major actions in 2009 will be to introduce an easy and efficient way to add/remove model output fields (new IOM for output) and the starting of 2 years work on a simplification of the new configurations settings (Configuration manager). The actions of the stream are:

Substream 1.1: IOM for outputs


Description and participants

IOM for outputs

Advancement


Substream 1.2: NetCDF4 IO options


Description and participants

NetCDF4 offers the opportunity to employ dataset chunking and compression algorithms to greatly reduce the volume of data written out by NEMO without any loss of precision. NetCDF4.0.1 is the latest, full release of the library and this has been successfully tested for use in NEMO by NOCS. Even with severe tests, involving ORCA025 configurations with biogeochemical tracers, there are no run-time performance issues of any concern. In fact on some I/O limited clusters a speed enhancement is achieved because the benefits of writing out fewer data outweigh the computational costs of in-memory compression. The great benefit though is in the reduction of filesizes, for example:

File name   Disk usage for netCDF3.X (MBytes) Disk usage for netCDF4.0 (Mbytes) Reduction factor
*grid T*.nc         1500                                586                        2.56
*grid U*.nc          677                                335                        2.02
*grid V*.nc          677                                338                        2.00
*grid W*.nc         3300                                929                        3.55
*icemod*.nc          208                                145                        1.43

Table 11: Effect of chunking and compression on the size of the NEMO 3.0 output files.
For each file name the usage is the sum of all 221 individual processor output files.

The code changes required to use netcdf4 within NEMO are relatively straight-forward and involve minor changes to: iom_def.F90, iom.F90, iom_nf90.F90 and restart.F90 in the NEMO code and: histcom.f90 in IOIPSL. Changes are also required in the relevant makefiles to link in the netcdf4 library (-lnetcdff -lnetcdf) and the HDF5 and compression libraries that underlie netcdf4 (-lhdf5_fortran -lhdf5 -lhdf5_hl -lz). The need to make changes to IOIPSL routines makes providing a solution which supports both netcdf3 and netcdf4 difficult (preprocessor keys are not used in IOIPSL). This requires some discussion. The uptake of netcdf4 in NEMO may also be restricted by slow uptake of 3rd party software providers. Any compilable code can simply be relinked to the new libraries. Existing utilities will then be able to read netCDF4 files (and write netCDF3 files). Code changes are only necessary if it is required to write new netCDF4 files. However, commercial packages, such as IDL, will need netCDF4 support provided by the vendor (planned for early 2010). Other packages may fare better; NOCS has been able to compile netCDF4-compatible versions of Ferret and a netCDF4-compatible version of the mexnc toolkit for use with matlab (versions 2008a onwards). Details are available on request.

Advancement


Substream 1.3 : Configuration manager


Description and participants

Develop tools to build regional configurations

Advancement


Substream 1.4 :bio interfaces


Description and participants

Interface for other bio-models in TOP

Advancement


Substream 1.5 : reference manuels


Description and participants

Advancement


Substream 1.6 :Reference configurations


Description and participants

Advancement