comm_iprobe Subroutine

private subroutine comm_iprobe(comm, source, tag, message_pending, status)

Arguments

Type IntentOptional Attributes Name
type(comm_t), intent(in) :: comm
integer(kind=int32), intent(in) :: source
integer(kind=int32), intent(in) :: tag
logical, intent(out) :: message_pending
type(MPI_Status), intent(out) :: status

Calls

proc~~comm_iprobe~2~~CallsGraph proc~comm_iprobe~2 comm_iprobe mpi_iprobe mpi_iprobe proc~comm_iprobe~2->mpi_iprobe proc~status_array_to_type status_array_to_type proc~comm_iprobe~2->proc~status_array_to_type

Called by

proc~~comm_iprobe~2~~CalledByGraph proc~comm_iprobe~2 comm_iprobe interface~iprobe~2 iprobe interface~iprobe~2->proc~comm_iprobe~2

Variables

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

Source Code

   subroutine comm_iprobe(comm, source, tag, message_pending, status)
      type(comm_t), intent(in) :: comm
      integer(int32), intent(in) :: source
      integer(int32), intent(in) :: tag
      logical, intent(out) :: message_pending
      type(MPI_Status), intent(out) :: status
      integer(int32) :: ierr
      integer :: status_array(MPI_STATUS_SIZE)

      call MPI_Iprobe(source, tag, comm%m_comm, message_pending, status_array, ierr)
      ! Convert legacy status array to MPI_Status type
      status = status_array_to_type(status_array)
   end subroutine comm_iprobe