CUDA Fortran - unconventional loop

Hi
I would like to use CUDA for the following code sample. I would appreciate any help.

      H = 0.0
      do zz = 1,NZ-1
        do ii = zz,NZ-1
          H(:,:,zz) = H(:,:,zz) + &
                    -0.5*(tmp(:,:,ii)+tmp(:,:,ii+1))*dp(zz)
        end do
      end do