[Dart-dev] DART/branches Revision: 12642
dart at ucar.edu
dart at ucar.edu
Thu Jun 7 10:37:01 MDT 2018
bdobbins at ucar.edu
2018-06-07 10:37:01 -0600 (Thu, 07 Jun 2018)
59
Working version, still very ugly and needing optimizations
Modified: DART/branches/graph_coloring/GPTL
===================================================================
--- DART/branches/graph_coloring/GPTL 2018-06-07 15:36:36 UTC (rev 12641)
+++ DART/branches/graph_coloring/GPTL 2018-06-07 16:37:01 UTC (rev 12642)
@@ -1 +1 @@
-link GPTL.ch_openmpi
\ No newline at end of file
+link GPTL.ch_mpt
\ No newline at end of file
Modified: DART/branches/graph_coloring/assimilation_code/location/threed_sphere/location_mod.f90
===================================================================
--- DART/branches/graph_coloring/assimilation_code/location/threed_sphere/location_mod.f90 2018-06-07 15:36:36 UTC (rev 12641)
+++ DART/branches/graph_coloring/assimilation_code/location/threed_sphere/location_mod.f90 2018-06-07 16:37:01 UTC (rev 12642)
@@ -73,7 +73,7 @@
integer, parameter :: VERTISSCALEHEIGHT = 4 ! by scale height (unitless)
type location_type
- private
+ !private
real(r8) :: lon, lat ! lon, lat are stored in radians
real(r8) :: vloc ! units vary based on value of which_vert
integer :: which_vert ! determines if vert is level, height, pressure, ...
@@ -1583,6 +1583,7 @@
! SHOULD ADD IN OPTIONAL ARGUMENT FOR DOING THIS!!!
! Could avoid adding any that have nums lower than base_ob???
t_ind = gc%gtt(bt)%loc_box(st - 1 + k)
+ !write(*,*) "n_in_box = ", n_in_box, i, j, t_ind
if(.not. present(dist)) then
! Dist isn't present; add this ob to list without computing distance
@@ -1614,7 +1615,7 @@
!------------------------ Verify by comparing to exhaustive search --------------
if(COMPARE_TO_CORRECT) then
- write(*,*) "C2C(Check) : ", num_close, cnum_close
+ !write(*,*) "C2C(Check) : ", num_close, cnum_close
! Do comparisons against full search
if((num_close /= cnum_close) .and. present(dist)) then
write(msgstring, *) 'get_close (', num_close, ') should equal exhaustive search (', cnum_close, ')'
Modified: DART/branches/graph_coloring/assimilation_code/modules/assimilation/assim_graph_tools_mod.f90
===================================================================
--- DART/branches/graph_coloring/assimilation_code/modules/assimilation/assim_graph_tools_mod.f90 2018-06-07 15:36:36 UTC (rev 12641)
+++ DART/branches/graph_coloring/assimilation_code/modules/assimilation/assim_graph_tools_mod.f90 2018-06-07 16:37:01 UTC (rev 12642)
@@ -508,15 +508,21 @@
!debug
real(kind=8) :: checksum, checksum_total
+!packed sends (into a buffer)?
+logical :: packed_sends = .true.
+
+! synchronize between timers?
+logical :: sync_between_timers = .false.
+
! trace files:
open(unit=15, file="trace.1")
open(unit=16, file="trace.2")
-checksum = sum(obs_ens_handle%copies(1:ens_size,:))
-call MPI_Reduce(checksum, checksum_total, 1, MPI_DOUBLE_PRECISION, MPI_SUM, 0, MPI_COMM_WORLD, iError)
-if (my_task_id() == 0) then
- write(*,*) "PreCheck0: ", checksum_total
-endif
+!checksum = sum(obs_ens_handle%copies(1:ens_size,:))
+!call MPI_Reduce(checksum, checksum_total, 1, MPI_DOUBLE_PRECISION, MPI_SUM, 0, MPI_COMM_WORLD, iError)
+!if (my_task_id() == 0) then
+! write(*,*) "PreCheck0: ", checksum_total
+!endif
!call task_sync()
call t_startf('ASSIMILATE:Pre.Loop')
@@ -531,7 +537,7 @@
!HK make window for mpi one-sided communication
! used for vertical conversion in get_close_obs
! Need to give create_mean_window the mean copy
-write(*,*) "Setup: Calling create_mean_window w/ ens_handle"
+!write(*,*) "Setup: Calling create_mean_window w/ ens_handle"
!call create_mean_window(ens_handle, ENS_MEAN_COPY, distribute_mean, graph=.true.)
call create_mean_window(ens_handle, ENS_MEAN_COPY, distribute_mean) ! Just use ens_handle%distribution type?
@@ -620,6 +626,9 @@
! overwrite the vertical location with the required localization vertical coordinate when you
! do the forward operator calculation
call get_my_obs_loc(ens_handle, obs_ens_handle, obs_seq, keys, my_obs_loc, my_obs_kind, my_obs_type, obs_time)
+!do iError = 1, obs_ens_handle%my_num_vars
+! write(*,*) "Loc : ", obs_ens_handle%my_vars(iError), my_obs_loc(iError)%lon, my_obs_loc(iError)%lat
+!enddo
if (convert_all_obs_verticals_first .and. is_doing_vertical_conversion) then
! convert the vertical of all my observations to the localization coordinate
@@ -737,24 +746,37 @@
! write(*,*) "ECheck3 : ", iError, sum(obs_ens_handle%copies(:,iError))
!end do
-checksum = sum(obs_ens_handle%copies(1:ens_size,:))
-call MPI_Reduce(checksum, checksum_total, 1, MPI_DOUBLE_PRECISION, MPI_SUM, 0, MPI_COMM_WORLD, iError)
-if (my_task_id() == 0) then
- !write(*,*) "PreCheck1: ", checksum_total
-endif
+!checksum = sum(obs_ens_handle%copies(1:ens_size,:))
More information about the Dart-dev
mailing list