<p><b>dwj07@fsu.edu</b> 2012-08-27 13:29:46 -0600 (Mon, 27 Aug 2012)</p><p><br>
        -- BRANCH COMMIT --<br>
<br>
        Adding timers around base sw core.<br>
</p><hr noshade><pre><font color="gray">Modified: branches/omp_blocks/openmp_test/src/core_sw/mpas_sw_time_integration.F
===================================================================
--- branches/omp_blocks/openmp_test/src/core_sw/mpas_sw_time_integration.F        2012-08-27 18:28:21 UTC (rev 2128)
+++ branches/omp_blocks/openmp_test/src/core_sw/mpas_sw_time_integration.F        2012-08-27 19:29:46 UTC (rev 2129)
@@ -5,8 +5,8 @@
use mpas_configure
use mpas_constants
use mpas_dmpar
+ use mpas_timer
-
contains
@@ -70,6 +70,7 @@
real (kind=RKIND), dimension(4) :: rk_weights, rk_substep_weights
+ call mpas_timer_start('computations')
call mpas_setup_provis_states(domain % blocklist)
!
@@ -104,6 +105,7 @@
rk_substep_weights(2) = dt/2.
rk_substep_weights(3) = dt
rk_substep_weights(4) = 0.
+ call mpas_timer_stop('computations')
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
@@ -113,12 +115,15 @@
! --- update halos for diagnostic variables
+ call mpas_timer_start('communications')
call mpas_dmpar_exch_halo_field(domain % blocklist % provis % pv_edge)
if (config_h_mom_eddy_visc4 > 0.0) then
call mpas_dmpar_exch_halo_field(domain % blocklist % provis % divergence)
call mpas_dmpar_exch_halo_field(domain % blocklist % provis % vorticity)
end if
+ call mpas_timer_stop('communications')
+ call mpas_timer_start('computations')
! --- compute tendencies
@@ -132,9 +137,13 @@
! --- update halos for prognostic variables
+ call mpas_timer_stop('computations')
+ call mpas_timer_start('communications')
call mpas_dmpar_exch_halo_field(domain % blocklist % tend % u)
call mpas_dmpar_exch_halo_field(domain % blocklist % tend % h)
call mpas_dmpar_exch_halo_field(domain % blocklist % tend % tracers)
+ call mpas_timer_stop('communications')
+ call mpas_timer_start('computations')
! --- compute next substep state
@@ -178,6 +187,7 @@
end do
block => block % next
end do
+ call mpas_timer_stop('computations')
end do
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
@@ -188,6 +198,7 @@
!
! A little clean up at the end: decouple new scalar fields and compute diagnostics for new state
!
+ call mpas_timer_start('computations')
block => domain % blocklist
do while (associated(block))
do iCell=1,block % mesh % nCells
@@ -216,6 +227,7 @@
end do
call mpas_deallocate_provis_states(domain % blocklist)
+ call mpas_timer_stop('computations')
end subroutine sw_rk4
</font>
</pre>