comm_isend_irecv_long Subroutine

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

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

Arguments

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

mpi communicator


Calls

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

Contents


Variables

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