23 | | * IOM for the output |
24 | | |
25 | | Purposes : - add flexibility for outputs - eventually use dedicated processors for output |
26 | | |
27 | | Using histwrite is still the default behaviour for safety. Nevertheless, iom_put can be activated with the cpp_key key_iomput and should become the default (only) in the future. |
28 | | |
29 | | Iom_put allows to distribute and add desired output fields everywhere in the code without specific declaration in diawri : Ex : CALL iom_put( "ssh" , sshn ) in sshwzv It is based on : - a XML-F90 parser, svn co http://forge.ipsl.jussieu.fr/ioserver/svn/XMLF90 - an additional library svn co http://forge.ipsl.jussieu.fr/ioserver/svn/XMLIO_SERVER When using modipsl environment, they are extracting automatically with NEMO. Both are delivered under GPL licence but not under the responsibility of the NEMO team. Actually two levels of functionalities are available : |
30 | | |
31 | | 1- Just use iom_put to output the variable easily |
32 | | |
33 | | 2- Use in addition dedicated processors for output (server mode), then an additional executable is needed At execution time, when key_iomput has been activated, two additional files are required (and provided with the standard configuration): |
34 | | |
35 | | - xmlio_server.def : a namelist to define if we are in server mode or not |
36 | | |
37 | | - iodef.xml : an xml file to be completed with precision on the variable called by iom_put in nemo (name for output, frequency, file) |
38 | | |
39 | | In server mode only, user has to define a mpi configuration file (for instance mpi.conf) looking like: |
40 | | |
| 23 | === IOM for the output === |
| 24 | * Purposes : |
| 25 | * add flexibility for outputs |
| 26 | * eventually use dedicated processors for output |
| 27 | Using histwrite is still the default behaviour. Nevertheless, iom_put can be activated with the cpp_key key_iomput and should become the default (only) in the future. |
| 28 | Iom_put allows to distribute and add desired output fields everywhere in the code without specific declaration in diawri : |
| 29 | Ex : CALL iom_put( "ssh" , sshn ) in sshwzv [[BR]] |
| 30 | * Technical requirement |
| 31 | * a XML-F90 parser, svn co http://forge.ipsl.jussieu.fr/ioserver/svn/XMLF90 |
| 32 | * an additional library svn co http://forge.ipsl.jussieu.fr/ioserver/svn/XMLIO_SERVER |
| 33 | When using modipsl environment, they are extracting automatically with NEMO. Both are delivered under GPL licence but not under the responsibility of the NEMO team. Actually two levels of functionalities are available : |
| 34 | * Functionalities |
| 35 | * Just use iom_put to output the variable easily |
| 36 | * Use in addition dedicated processors for output (server mode), then an additional executable is needed (''server mode'') |
| 37 | |
| 38 | * How to use it : at execution time, when key_iomput has been activated, two additional files are required (and provided with the standard configuration): |
| 39 | * xmlio_server.def : a namelist to define if we are in server mode or not |
| 40 | * iodef.xml : an xml file to be completed with precision on the variable called by iom_put in nemo (name for output, frequency, file) |
| 41 | * In server mode only, user has to define a mpi configuration file (for instance mpi.conf) looking like: |
| 42 | |
| 43 | {{{ |
42 | | |
43 | | -p 2-e ./ioserver <--------- means 2 cpu for IO |
44 | | |
45 | | Then mpirun –f mpi.conf IOM for output has been implemented in OPA, TOP, LIM3 and LIM3, it is tested in NVTK, it is currently not compatible with AGRIF (key_agrif) and not implemented in diaptr. |
46 | | |
| 45 | -p 2 -e ./ioserver <--------- means 2 cpu for IO |
| 46 | }}} |
| 47 | Then mpirun –f mpi.conf |
| 48 | |
| 49 | |
| 50 | IOM for output has been implemented in OPA, TOP, LIM3 and LIM3, it is tested in NVTK, it is currently not compatible with AGRIF (key_agrif) and not implemented in diaptr. |
| 51 | |
| 52 | * Nota |
49 | | *-----*-----*-----*-----*-----*-----*-----*-----*-----*-----* |
50 | | |
51 | | Nemo_v3.2 : *-----*-----*-----*-----*-----*-----*-----*-----*-----*-----* |
52 | | |
53 | | * achievement of the coupled interface |
54 | | |
55 | | * VVL reactivation |
| 55 | Nemo_v3.1 : *-----*-----*-----*-----*-----*-----*-----*-----*-----*-----* |
| 56 | |_______________________________| |______________________________| |
| 57 | |
| 58 | Nemo_v3.2 : *-----*-----*-----*-----*-----*-----*-----*-----*-----*-----* |
| 59 | |______________________________| |______________________________| |
| 60 | |
| 61 | |
| 62 | === achievement of the coupled interface === |
| 63 | |
| 64 | === VVL reactivation === |