exec_dist_transeq_3fused Subroutine

public subroutine exec_dist_transeq_3fused(r_du, u, u_recv_s, u_recv_e, v, v_recv_s, v_recv_e, dud, d2u, du_send_s, du_send_e, du_recv_s, du_recv_e, dud_send_s, dud_send_e, dud_recv_s, dud_recv_e, d2u_send_s, d2u_send_e, d2u_recv_s, d2u_recv_e, der1st, der2nd, nu, nproc, pprev, pnext, blocks, threads)

Arguments

Type IntentOptional Attributes Name
real(kind=dp), intent(out), device, dimension(:, :, :) :: r_du

The result array, it is also used as temporary storage

real(kind=dp), intent(in), device, dimension(:, :, :) :: u
real(kind=dp), intent(in), device, dimension(:, :, :) :: u_recv_s
real(kind=dp), intent(in), device, dimension(:, :, :) :: u_recv_e
real(kind=dp), intent(in), device, dimension(:, :, :) :: v
real(kind=dp), intent(in), device, dimension(:, :, :) :: v_recv_s
real(kind=dp), intent(in), device, dimension(:, :, :) :: v_recv_e
real(kind=dp), intent(out), device, dimension(:, :, :) :: dud
real(kind=dp), intent(out), device, dimension(:, :, :) :: d2u
real(kind=dp), intent(out), device, dimension(:, :, :) :: du_send_s
real(kind=dp), intent(out), device, dimension(:, :, :) :: du_send_e
real(kind=dp), intent(out), device, dimension(:, :, :) :: du_recv_s
real(kind=dp), intent(out), device, dimension(:, :, :) :: du_recv_e
real(kind=dp), intent(out), device, dimension(:, :, :) :: dud_send_s
real(kind=dp), intent(out), device, dimension(:, :, :) :: dud_send_e
real(kind=dp), intent(out), device, dimension(:, :, :) :: dud_recv_s
real(kind=dp), intent(out), device, dimension(:, :, :) :: dud_recv_e
real(kind=dp), intent(out), device, dimension(:, :, :) :: d2u_send_s
real(kind=dp), intent(out), device, dimension(:, :, :) :: d2u_send_e
real(kind=dp), intent(out), device, dimension(:, :, :) :: d2u_recv_s
real(kind=dp), intent(out), device, dimension(:, :, :) :: d2u_recv_e
type(cuda_tdsops_t), intent(in) :: der1st
type(cuda_tdsops_t), intent(in) :: der2nd
real(kind=dp), intent(in) :: nu
integer, intent(in) :: nproc
integer, intent(in) :: pprev
integer, intent(in) :: pnext
type(dim3), intent(in) :: blocks
type(dim3), intent(in) :: threads

Calls

proc~~exec_dist_transeq_3fused~~CallsGraph proc~exec_dist_transeq_3fused m_cuda_exec_dist::exec_dist_transeq_3fused proc~sendrecv_3fields m_cuda_sendrecv::sendrecv_3fields proc~exec_dist_transeq_3fused->proc~sendrecv_3fields proc~transeq_3fused_dist m_cuda_kernels_dist::transeq_3fused_dist proc~exec_dist_transeq_3fused->proc~transeq_3fused_dist proc~transeq_3fused_subs m_cuda_kernels_dist::transeq_3fused_subs proc~exec_dist_transeq_3fused->proc~transeq_3fused_subs mpi_irecv mpi_irecv proc~sendrecv_3fields->mpi_irecv mpi_isend mpi_isend proc~sendrecv_3fields->mpi_isend mpi_waitall mpi_waitall proc~sendrecv_3fields->mpi_waitall

Called by

proc~~exec_dist_transeq_3fused~~CalledByGraph proc~exec_dist_transeq_3fused m_cuda_exec_dist::exec_dist_transeq_3fused proc~transeq_cuda_dist m_cuda_backend::cuda_backend_t%transeq_cuda_dist proc~transeq_cuda_dist->proc~exec_dist_transeq_3fused proc~transeq_x_cuda m_cuda_backend::cuda_backend_t%transeq_x_cuda proc~transeq_x_cuda->proc~transeq_cuda_dist proc~transeq_y_cuda m_cuda_backend::cuda_backend_t%transeq_y_cuda proc~transeq_y_cuda->proc~transeq_cuda_dist proc~transeq_z_cuda m_cuda_backend::cuda_backend_t%transeq_z_cuda proc~transeq_z_cuda->proc~transeq_cuda_dist