Changeset 38b7917 in flexpart.git for src/mpi_mod.f90


Ignore:
Timestamp:
Mar 8, 2016, 9:54:38 AM (8 years ago)
Author:
Espen Sollum ATMOS <eso@…>
Branches:
master, 10.4.1_pesei, GFS_025, bugfixes+enhancements, dev, release-10, release-10.4.1, scaling-bug, univie
Children:
9b53903
Parents:
db712a8
Message:

Parallelization of domain fill option (save/restart not implemented yet)

File:
1 edited

Legend:

Unmodified
Added
Removed
  • src/mpi_mod.f90

    rdb712a8 r38b7917  
    120120  logical, parameter :: mp_dbg_out = .false.
    121121  logical, parameter :: mp_time_barrier=.true.
    122   logical, parameter :: mp_measure_time=.false.
     122  logical, parameter :: mp_measure_time=.true.
    123123  logical, parameter :: mp_exact_numpart=.true.
    124124
    125125! for measuring CPU/Wall time
    126   real(sp) :: mp_comm_time_beg, mp_comm_time_end, mp_comm_time_total=0.
    127   real(dp) :: mp_comm_wtime_beg, mp_comm_wtime_end, mp_comm_wtime_total=0.
    128   real(sp) :: mp_root_time_beg, mp_root_time_end, mp_root_time_total=0.
    129   real(dp) :: mp_root_wtime_beg, mp_root_wtime_end, mp_root_wtime_total=0.
    130   real(sp) :: mp_barrier_time_beg, mp_barrier_time_end, mp_barrier_time_total=0.
    131   real(dp) :: mp_barrier_wtime_beg, mp_barrier_wtime_end, mp_barrier_wtime_total=0.
    132   real(sp) :: tm_nploop_beg, tm_nploop_end, tm_nploop_total=0.
    133   real(sp) :: tm_tot_beg, tm_tot_end, tm_tot_total=0.
    134   real(dp) :: mp_getfields_wtime_beg, mp_getfields_wtime_end, mp_getfields_wtime_total=0.
    135   real(sp) :: mp_getfields_time_beg, mp_getfields_time_end, mp_getfields_time_total=0.
    136   real(dp) :: mp_readwind_wtime_beg, mp_readwind_wtime_end, mp_readwind_wtime_total=0.
    137   real(sp) :: mp_readwind_time_beg, mp_readwind_time_end, mp_readwind_time_total=0.
    138   real(dp) :: mp_io_wtime_beg, mp_io_wtime_end, mp_io_wtime_total=0.
    139   real(sp) :: mp_io_time_beg, mp_io_time_end, mp_io_time_total=0.
    140   real(dp) :: mp_wetdepo_wtime_beg, mp_wetdepo_wtime_end, mp_wetdepo_wtime_total=0.
    141   real(sp) :: mp_wetdepo_time_beg, mp_wetdepo_time_end, mp_wetdepo_time_total=0.
    142   real(dp) :: mp_advance_wtime_beg, mp_advance_wtime_end, mp_advance_wtime_total=0.
    143   real(dp) :: mp_conccalc_time_beg, mp_conccalc_time_end, mp_conccalc_time_total=0.
    144   real(dp) :: mp_total_wtime_beg, mp_total_wtime_end, mp_total_wtime_total=0.
    145   real(dp) :: mp_vt_wtime_beg, mp_vt_wtime_end, mp_vt_wtime_total
    146   real(sp) :: mp_vt_time_beg, mp_vt_time_end, mp_vt_time_total
     126  real(sp),private :: mp_comm_time_beg, mp_comm_time_end, mp_comm_time_total=0.
     127  real(dp),private :: mp_comm_wtime_beg, mp_comm_wtime_end, mp_comm_wtime_total=0.
     128  real(sp),private :: mp_root_time_beg, mp_root_time_end, mp_root_time_total=0.
     129  real(dp),private :: mp_root_wtime_beg, mp_root_wtime_end, mp_root_wtime_total=0.
     130  real(sp),private :: mp_barrier_time_beg, mp_barrier_time_end, mp_barrier_time_total=0.
     131  real(dp),private :: mp_barrier_wtime_beg, mp_barrier_wtime_end, mp_barrier_wtime_total=0.
     132  real(sp),private :: tm_nploop_beg, tm_nploop_end, tm_nploop_total=0.
     133  real(sp),private :: tm_tot_beg, tm_tot_end, tm_tot_total=0.
     134  real(dp),private :: mp_getfields_wtime_beg, mp_getfields_wtime_end, mp_getfields_wtime_total=0.
     135  real(sp),private :: mp_getfields_time_beg, mp_getfields_time_end, mp_getfields_time_total=0.
     136  real(dp),private :: mp_readwind_wtime_beg, mp_readwind_wtime_end, mp_readwind_wtime_total=0.
     137  real(sp),private :: mp_readwind_time_beg, mp_readwind_time_end, mp_readwind_time_total=0.
     138  real(dp),private :: mp_io_wtime_beg, mp_io_wtime_end, mp_io_wtime_total=0.
     139  real(sp),private :: mp_io_time_beg, mp_io_time_end, mp_io_time_total=0.
     140  real(dp),private :: mp_wetdepo_wtime_beg, mp_wetdepo_wtime_end, mp_wetdepo_wtime_total=0.
     141  real(sp),private :: mp_wetdepo_time_beg, mp_wetdepo_time_end, mp_wetdepo_time_total=0.
     142  real(dp),private :: mp_advance_wtime_beg, mp_advance_wtime_end, mp_advance_wtime_total=0.
     143  real(dp),private :: mp_conccalc_time_beg, mp_conccalc_time_end, mp_conccalc_time_total=0.
     144  real(dp),private :: mp_total_wtime_beg, mp_total_wtime_end, mp_total_wtime_total=0.
     145  real(dp),private :: mp_vt_wtime_beg, mp_vt_wtime_end, mp_vt_wtime_total
     146  real(sp),private :: mp_vt_time_beg, mp_vt_time_end, mp_vt_time_total
    147147
    148148! dat_lun           logical unit number for i/o
     
    18241824      end if
    18251825
     1826    case ('advance')
     1827      if (imode.eq.0) then
     1828        mp_advance_wtime_beg = mpi_wtime()
     1829      else
     1830        mp_advance_wtime_end = mpi_wtime()
     1831
     1832        mp_advance_wtime_total = mp_advance_wtime_total + &
     1833             &(mp_advance_wtime_end - mp_advance_wtime_beg)
     1834      end if
     1835
    18261836    case ('getfields')
    18271837      if (imode.eq.0) then
     
    18541864             &mp_conccalc_time_beg
    18551865      end if
     1866
    18561867    case ('rootonly')
    18571868      if (imode.eq.0) then
Note: See TracChangeset for help on using the changeset viewer.
hosted by ZAMG