comm_typed_isend_irecv_real Subroutine

private subroutine comm_typed_isend_irecv_real(send, recv, state, message_flag, send_state, comm)

exchange the communication mes with a non-blocking mpi communication using preposted irecv and isend with a waitall

values for send me must have been copied from the actual state array start receive communications

start the sending communications wait for above communications to complete

Arguments

TypeIntentOptionalAttributesName
type(tem_communication_type), intent(inout) :: send
type(tem_communication_type), intent(inout) :: recv
real(kind=rk), intent(inout) :: state(*)
integer, intent(in) :: message_flag
real(kind=rk), intent(in), optional :: send_state(*)
integer, intent(in) :: comm

mpi communicator


Calls

proc~~comm_typed_isend_irecv_real~~CallsGraph proc~comm_typed_isend_irecv_real comm_typed_isend_irecv_real mpi_isend mpi_isend proc~comm_typed_isend_irecv_real->mpi_isend mpi_irecv mpi_irecv proc~comm_typed_isend_irecv_real->mpi_irecv mpi_waitall mpi_waitall proc~comm_typed_isend_irecv_real->mpi_waitall

Contents


Variables

TypeVisibilityAttributesNameInitial
integer, private :: status(mpi_status_size,max(recv%nprocs,send%nprocs))
integer, private :: ierr
integer, private :: iproc