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 14219 for NEMO/branches/2020/dev_r14116_HPC-04_mcastril_Mixed_Precision_implementation_final/src/OCE/timing.F90 – NEMO

Ignore:
Timestamp:
2020-12-18T18:52:57+01:00 (4 years ago)
Author:
mcastril
Message:

Add Mixed Precision support by Oriol Tintó

File:
1 edited

Legend:

Unmodified
Added
Removed
  • NEMO/branches/2020/dev_r14116_HPC-04_mcastril_Mixed_Precision_implementation_final/src/OCE/timing.F90

    r14072 r14219  
    4040      CHARACTER(LEN=20)  :: surname 
    4141      INTEGER :: rank 
    42       REAL(wp)  :: t_cpu, t_clock, tsum_cpu, tsum_clock, tmax_cpu, tmax_clock, tmin_cpu, tmin_clock, tsub_cpu, tsub_clock 
     42      REAL(dp)  :: t_cpu, t_clock, tsum_cpu, tsum_clock, tmax_cpu, tmax_clock, tmin_cpu, tmin_clock, tsub_cpu, tsub_clock 
    4343      INTEGER :: ncount, ncount_max, ncount_rate 
    4444      INTEGER :: niter 
     
    5151   TYPE alltimer 
    5252      CHARACTER(LEN=20), DIMENSION(:), POINTER :: cname => NULL() 
    53       REAL(wp), DIMENSION(:), POINTER :: tsum_cpu   => NULL() 
    54       REAL(wp), DIMENSION(:), POINTER :: tsum_clock => NULL() 
     53      REAL(dp), DIMENSION(:), POINTER :: tsum_cpu   => NULL() 
     54      REAL(dp), DIMENSION(:), POINTER :: tsum_clock => NULL() 
    5555      INTEGER, DIMENSION(:), POINTER :: niter => NULL() 
    5656      TYPE(alltimer), POINTER :: next => NULL() 
     
    6363 
    6464   TYPE(timer), POINTER :: s_wrk        => NULL() 
    65    REAL(wp) :: t_overclock, t_overcpu 
     65   REAL(dp) :: t_overclock, t_overcpu 
    6666   LOGICAL :: l_initdone = .FALSE. 
    6767   INTEGER :: nsize 
    6868 
    6969   ! Variables for coarse grain timing 
    70    REAL(wp) :: tot_etime, tot_ctime 
    71    REAL(kind=wp), DIMENSION(2)     :: t_elaps, t_cpu 
    72    REAL(wp), ALLOCATABLE, DIMENSION(:) :: all_etime, all_ctime 
     70   REAL(dp) :: tot_etime, tot_ctime 
     71   REAL(kind=dp), DIMENSION(2)     :: t_elaps, t_cpu 
     72   REAL(dp), ALLOCATABLE, DIMENSION(:) :: all_etime, all_ctime 
    7373   INTEGER :: nfinal_count, ncount, ncount_rate, ncount_max 
    7474   INTEGER, DIMENSION(8)           :: nvalues 
     
    137137      ! 
    138138      INTEGER  :: ifinal_count, iperiods 
    139       REAL(wp) :: zcpu_end, zmpitime,zcpu_raw,zclock_raw 
     139      REAL(dp) :: zcpu_end, zmpitime,zcpu_raw,zclock_raw 
    140140      ! 
    141141      s_wrk => NULL() 
     
    219219      !!---------------------------------------------------------------------- 
    220220      INTEGER :: iperiods, istart_count, ifinal_count 
    221       REAL(wp) :: zdum 
     221      REAL(dp) :: zdum 
    222222      LOGICAL :: ll_f 
    223223      CHARACTER(len=*), INTENT(in), OPTIONAL :: clname 
     
    296296      LOGICAL :: ll_ord, ll_averep 
    297297      CHARACTER(len=120) :: clfmt 
    298       REAL(wp), DIMENSION(:), ALLOCATABLE ::   timing_glob 
    299       REAL(wp) ::   zsypd   ! simulated years per day (Balaji 2017) 
    300       REAL(wp) ::   zperc, ztot 
     298      REAL(dp), DIMENSION(:), ALLOCATABLE ::   timing_glob 
     299      REAL(dp) ::   zsypd   ! simulated years per day (Balaji 2017) 
     300      REAL(dp) ::   zperc, ztot 
    301301 
    302302      ll_averep = .TRUE. 
     
    642642      INTEGER                            :: idum, icode 
    643643      INTEGER, ALLOCATABLE, DIMENSION(:) :: iall_rank 
    644       REAL(wp) :: ztot_ratio 
    645       REAL(wp) :: zmax_etime, zmax_ctime, zmax_ratio, zmin_etime, zmin_ctime, zmin_ratio 
    646       REAL(wp) :: zavg_etime, zavg_ctime, zavg_ratio 
    647       REAL(wp), ALLOCATABLE, DIMENSION(:) :: zall_ratio 
     644      REAL(dp) :: ztot_ratio 
     645      REAL(dp) :: zmax_etime, zmax_ctime, zmax_ratio, zmin_etime, zmin_ctime, zmin_ratio 
     646      REAL(dp) :: zavg_etime, zavg_ctime, zavg_ratio 
     647      REAL(dp), ALLOCATABLE, DIMENSION(:) :: zall_ratio 
    648648      CHARACTER(LEN=128), dimension(8) :: cllignes 
    649649      CHARACTER(LEN=128)               :: clhline, clstart_date, clfinal_date 
Note: See TracChangeset for help on using the changeset viewer.