This PR enables GPU calculation of diagnostics fields used in tendency computations by adding OpenACC directives to the atm_compute_solve_diagnostics_work routine.
Timing information for the OpenACC data transfers in this routine is captured in the log file by a new timer: compute_diagnostics_solve [ACC_data_xfer].
As in PR #1176, invariant fields are copied in during the mpas_atm_dynamics_init and deleted in the mpas_atm_dynamics_finalize routines. However, these do not minimize the data movement as atm_compute_solve_diagnostics is called during the initialization phase before mpas_atm_dynamics_init is called.
This PR enables GPU calculation of diagnostics fields used in tendency computations by adding OpenACC directives to the
atm_compute_solve_diagnostics_work
routine.Timing information for the OpenACC data transfers in this routine is captured in the log file by a new timer:
compute_diagnostics_solve [ACC_data_xfer]
.As in PR #1176, invariant fields are copied in during the
mpas_atm_dynamics_init
and deleted in thempas_atm_dynamics_finalize
routines. However, these do not minimize the data movement asatm_compute_solve_diagnostics
is called during the initialization phase beforempas_atm_dynamics_init
is called.