Skip to content
Draft
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
16 changes: 9 additions & 7 deletions src/core_atmosphere/dynamics/mpas_atm_time_integration.F
Original file line number Diff line number Diff line change
Expand Up @@ -7308,26 +7308,28 @@ subroutine atm_compute_solve_diagnostics_work(nCells, nEdges, nVertices, &
if(present(rk_step)) then
if(rk_step /= 3) reconstruct_v = .false.
end if

if (reconstruct_v) then
call mpas_timer_start('atm_compute_solve_diag_7313')
!$acc parallel default(present)
!$acc loop gang
!$acc loop gang worker
do iEdge = edgeStart,edgeEnd
!$acc loop vector
do k = 1,nVertLevels
v(k,iEdge) = 0.0_RKIND
end do
!$acc loop seq
do i=1,nEdgesOnEdge(iEdge)
eoe = edgesOnEdge(i,iEdge)
!DIR$ IVDEP
!$acc loop vector
do k = 1,nVertLevels
!$acc loop vector
do k = 1,nVertLevels
!$acc loop seq
do i=1,nEdgesOnEdge(iEdge)
eoe = edgesOnEdge(i,iEdge)
v(k,iEdge) = v(k,iEdge) + weightsOnEdge(i,iEdge) * u(k, eoe)
end do
end do
end do
!$acc end parallel
call mpas_timer_stop('atm_compute_solve_diag_7313')
end if

!
Expand Down