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.
Changeset 11101 for branches/UKMO/dev_r5518_GO6_package/NEMOGCM/NEMO/OPA_SRC/IOM/iom_nf90.F90 – NEMO

Ignore:
Timestamp:
2019-06-11T16:10:28+02:00 (5 years ago)
Author:
frrh
Message:

Merge changes from Met Office GMED ticket 450 to reduce unnecessary
text output from NEMO.
This output, which is typically not switchable, is rarely of interest
in normal (non-debugging) runs and simply redunantley consumes extra
file space.
Further, the presence of this text output has been shown to
significantly degrade performance of models which are run during
Met Office HPC RAID (disk) checks.
The new code introduces switches which are configurable via the
changes made in the associated Met Office MOCI ticket 399.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/UKMO/dev_r5518_GO6_package/NEMOGCM/NEMO/OPA_SRC/IOM/iom_nf90.F90

    r6491 r11101  
    8484         !                 ! ============= 
    8585         IF( ldwrt ) THEN  ! ... in write mode 
    86             IF(lwp) WRITE(numout,*) TRIM(clinfo)//' open existing file: '//TRIM(cdname)//' in WRITE mode' 
     86            IF(lwp .AND. nprint > 0) THEN 
     87               WRITE(numout,*) TRIM(clinfo)//' open existing file: '//TRIM(cdname)//' in WRITE mode' 
     88               IF(lflush) CALL flush(numout) 
     89            ENDIF 
    8790            IF( snc4set%luse ) THEN 
    8891               CALL iom_nf90_check(NF90_OPEN( TRIM(cdname), NF90_WRITE  , if90id ), clinfo) 
     
    9295            CALL iom_nf90_check(NF90_SET_FILL( if90id, NF90_NOFILL, idmy                          ), clinfo) 
    9396         ELSE              ! ... in read mode 
    94             IF(lwp) WRITE(numout,*) TRIM(clinfo)//' open existing file: '//TRIM(cdname)//' in READ mode' 
     97            IF(lwp .AND. nprint > 0) THEN 
     98               WRITE(numout,*) TRIM(clinfo)//' open existing file: '//TRIM(cdname)//' in READ mode' 
     99               IF(lflush) CALL flush(numout) 
     100            ENDIF 
    95101            CALL iom_nf90_check(NF90_OPEN( TRIM(cdname), NF90_NOWRITE, if90id, chunksize = ichunk ), clinfo) 
    96102         ENDIF 
     
    103109               cdname = TRIM(cltmp) 
    104110            ENDIF 
    105             IF(lwp) WRITE(numout,*) TRIM(clinfo)//' create new file: '//TRIM(cdname)//' in WRITE mode' 
     111            IF(lwp .AND. nprint > 0) THEN 
     112               WRITE(numout,*) TRIM(clinfo)//' create new file: '//TRIM(cdname)//' in WRITE mode' 
     113               IF(lflush) CALL flush(numout) 
     114            ENDIF 
    106115 
    107116            IF( llclobber ) THEN   ;   imode = IOR( NF90_64BIT_OFFSET, NF90_CLOBBER   ) 
     
    109118            ENDIF 
    110119            IF( snc4set%luse ) THEN 
    111                IF(lwp) WRITE(numout,*) TRIM(clinfo)//' creating file: '//TRIM(cdname)//' in hdf5 (netcdf4) mode' 
     120               IF(lwp .AND. nprint > 0) THEN 
     121                  WRITE(numout,*) TRIM(clinfo)//' creating file: '//TRIM(cdname)//' in hdf5 (netcdf4) mode' 
     122                  IF(lflush) CALL flush(numout) 
     123               ENDIF 
    112124               CALL GET_NF90_SYMBOL("NF90_HDF5", ihdf5) 
    113125               IF( llclobber ) THEN   ;   imode = IOR(ihdf5, NF90_CLOBBER) 
     
    158170        &                                               len  = iom_file(kiomid)%lenuld ), clinfo ) 
    159171         ENDIF 
    160          IF(lwp) WRITE(numout,*) '                   ---> '//TRIM(cdname)//' OK' 
     172         IF(lwp .AND. nprint > 0) THEN 
     173            WRITE(numout,*) '                   ---> '//TRIM(cdname)//' OK' 
     174            IF(lflush) CALL flush(numout) 
     175         ENDIF 
    161176      ELSE 
    162177         kiomid = 0               ! return error flag 
     
    431446         ! trick: defined to 0 to say that dimension variables are defined but not yet written 
    432447         iom_file(kiomid)%dimsz(1, 1)  = 0    
    433          IF(lwp) WRITE(numout,*) TRIM(clinfo)//' define dimension variables done' 
     448         IF(lwp .AND. nprint > 1) THEN 
     449            WRITE(numout,*) TRIM(clinfo)//' define dimension variables done' 
     450            IF(lflush) CALL flush(numout) 
     451         ENDIF 
    434452      ENDIF 
    435453      ! define the data if it is not already done 
     
    498516            CALL iom_nf90_check(SET_NF90_DEF_VAR_CHUNKING(if90id, idvar, ichunkalg, ichunksz), clinfo) 
    499517            CALL iom_nf90_check(SET_NF90_DEF_VAR_DEFLATE(if90id, idvar, ishuffle, ideflate, ideflate_level), clinfo) 
    500             IF(lwp) WRITE(numout,*) TRIM(clinfo)//' chunked ok. Chunks sizes: ', ichunksz 
    501          ENDIF 
    502          IF(lwp) WRITE(numout,*) TRIM(clinfo)//' defined ok' 
     518            IF(lwp .AND. nprint > 1) WRITE(numout,*) TRIM(clinfo)//' chunked ok. Chunks sizes: ', ichunksz 
     519         ENDIF 
     520         IF(lwp .AND. nprint > 1) THEN 
     521            WRITE(numout,*) TRIM(clinfo)//' defined ok' 
     522            IF(lflush) CALL flush(numout) 
     523         ENDIF 
    503524      ELSE 
    504525         idvar = kvid 
     
    543564               CALL iom_nf90_check(NF90_INQUIRE_DIMENSION( if90id, 3, len = iom_file(kiomid)%dimsz(1,3) ), clinfo) 
    544565               iom_file(kiomid)%dimsz(1  , 4) = 1   ! unlimited dimension 
    545                IF(lwp) WRITE(numout,*) TRIM(clinfo)//' write dimension variables done' 
     566               IF(lwp .AND. nprint > 1) THEN 
     567                 WRITE(numout,*) TRIM(clinfo)//' write dimension variables done' 
     568                 IF(lflush) CALL flush(numout) 
     569               ENDIF 
    546570            ENDIF 
    547571         ENDIF 
     
    561585         IF( iom_file(kiomid)%luld(idvar) )   iom_file(kiomid)%dimsz(iom_file(kiomid)%ndims(idvar), idvar)    & 
    562586               &                            = iom_file(kiomid)%dimsz(iom_file(kiomid)%ndims(idvar), idvar) + 1 
    563          IF(lwp) WRITE(numout,*) TRIM(clinfo)//' written ok' 
     587         IF(lwp .AND. nprint > 0) THEN 
     588           WRITE(numout,*) TRIM(clinfo)//' written ok' 
     589           IF(lflush) CALL flush(numout) 
     590         ENDIF 
    564591      ENDIF 
    565592      !      
Note: See TracChangeset for help on using the changeset viewer.