comm_irecv_integer_array Subroutine

private subroutine comm_irecv_integer_array(comm, data, source, tag, request)

Initiates a non-blocking receive operation. The request must be waited on using wait() or test() before the buffer can be used.

Arguments

Type IntentOptional Attributes Name
type(comm_t), intent(in) :: comm
integer(kind=int32), intent(out) :: data(:)
integer(kind=int32), intent(in) :: source
integer(kind=int32), intent(in) :: tag
type(request_t), intent(out) :: request

Calls

proc~~comm_irecv_integer_array~~CallsGraph proc~comm_irecv_integer_array comm_irecv_integer_array mpi_irecv mpi_irecv proc~comm_irecv_integer_array->mpi_irecv

Called by

proc~~comm_irecv_integer_array~~CalledByGraph proc~comm_irecv_integer_array comm_irecv_integer_array interface~irecv irecv interface~irecv->proc~comm_irecv_integer_array

Variables

Type Visibility Attributes Name Initial
integer(kind=int32), private :: ierr

Source Code

   subroutine comm_irecv_integer_array(comm, data, source, tag, request)
      !! Initiates a non-blocking receive operation. The request must be
      !! waited on using wait() or test() before the buffer can be used.
      type(comm_t), intent(in) :: comm
      integer(int32), intent(out) :: data(:)
      integer(int32), intent(in) :: source
      integer(int32), intent(in) :: tag
      type(request_t), intent(out) :: request
      integer(int32) :: ierr

      call MPI_Irecv(data, size(data), MPI_INTEGER, source, tag, comm%m_comm, request%m_request, ierr)
      request%is_valid = .true.
   end subroutine comm_irecv_integer_array