comm_isend_real_dp Subroutine

private subroutine comm_isend_real_dp(comm, data, dest, tag, request)

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

Arguments

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

Calls

proc~~comm_isend_real_dp~~CallsGraph proc~comm_isend_real_dp comm_isend_real_dp mpi_isend mpi_isend proc~comm_isend_real_dp->mpi_isend

Called by

proc~~comm_isend_real_dp~~CalledByGraph proc~comm_isend_real_dp comm_isend_real_dp interface~isend isend interface~isend->proc~comm_isend_real_dp

Variables

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

Source Code

   subroutine comm_isend_real_dp(comm, data, dest, tag, request)
   !! Initiates a non-blocking send operation. The request must be
   !! waited on using wait() or test() before the buffer can be reused.
      type(comm_t), intent(in) :: comm
      real(dp), intent(in) :: data
      integer(int32), intent(in) :: dest
      integer(int32), intent(in) :: tag
      type(request_t), intent(out) :: request
      integer(int32) :: ierr

      call MPI_Isend(data, 1, MPI_DOUBLE_PRECISION, dest, tag, comm%m_comm, request%m_request, ierr)
      request%is_valid = .true.
   end subroutine comm_isend_real_dp