coriolis_adv_enter_data Subroutine

private subroutine coriolis_adv_enter_data(this)

Type Bound

coriolis_adv_t

Arguments

Type IntentOptional Attributes Name
class(coriolis_adv_t), intent(inout) :: this

Calls

proc~~coriolis_adv_enter_data~~CallsGraph proc~coriolis_adv_enter_data coriolis_adv_t%coriolis_adv_enter_data proc~coriolis_adv_enter_data_impl coriolis_adv_enter_data_impl proc~coriolis_adv_enter_data->proc~coriolis_adv_enter_data_impl proc~scratch_3d_buffer_enter_data_impl scratch_3d_buffer_enter_data_impl proc~coriolis_adv_enter_data_impl->proc~scratch_3d_buffer_enter_data_impl

Source Code

   subroutine coriolis_adv_enter_data(this)
      ! Bare `copyin(this)` removed (stack-descriptor map → AMD cross-slot
      ! overlap; see ocean_surfstress_enter_data).  f_corner + the scratch
      ! buffers attach below; cor-descriptor presence (so DCs reading
      ! cor%f_corner(i,j) don't per-launch memcpy) comes from the root
      ! copyin(state) in ocean_state_enter_data.  A V100 A/B with copyin(this)
      ! gone is bit-identical and faster overall, so the root copy covers it.
      class(coriolis_adv_t), intent(inout) :: this
      select type (this)
      type is (coriolis_adv_t)
         call coriolis_adv_enter_data_impl(this)
      end select
   end subroutine coriolis_adv_enter_data