darray_gsumf Subroutine

public subroutine darray_gsumf(buffer, n)

Global sum for double precision array (DDI_GSUMF equivalent)

In-place reduction across all ranks.

Arguments

Type IntentOptional Attributes Name
real(kind=dp), intent(inout) :: buffer(*)
integer(kind=int32), intent(in) :: n

Calls

proc~~darray_gsumf~~CallsGraph proc~darray_gsumf darray_gsumf interface~allreduce allreduce proc~darray_gsumf->interface~allreduce proc~allreduce_dp allreduce_dp interface~allreduce->proc~allreduce_dp proc~allreduce_dp_array allreduce_dp_array interface~allreduce->proc~allreduce_dp_array proc~allreduce_dp_array_to allreduce_dp_array_to interface~allreduce->proc~allreduce_dp_array_to proc~allreduce_dp_to allreduce_dp_to interface~allreduce->proc~allreduce_dp_to proc~allreduce_i32 allreduce_i32 interface~allreduce->proc~allreduce_i32 proc~allreduce_i32_array allreduce_i32_array interface~allreduce->proc~allreduce_i32_array proc~allreduce_sp allreduce_sp interface~allreduce->proc~allreduce_sp proc~allreduce_sp_array allreduce_sp_array interface~allreduce->proc~allreduce_sp_array proc~allreduce_sp_array_to allreduce_sp_array_to interface~allreduce->proc~allreduce_sp_array_to proc~allreduce_sp_to allreduce_sp_to interface~allreduce->proc~allreduce_sp_to mpi_allreduce mpi_allreduce proc~allreduce_dp->mpi_allreduce proc~comm_get comm_t%comm_get proc~allreduce_dp->proc~comm_get proc~allreduce_dp_array->mpi_allreduce proc~allreduce_dp_array->proc~comm_get proc~allreduce_dp_array_to->mpi_allreduce proc~allreduce_dp_array_to->proc~comm_get proc~allreduce_dp_to->mpi_allreduce proc~allreduce_dp_to->proc~comm_get proc~allreduce_i32->mpi_allreduce proc~allreduce_i32->proc~comm_get proc~allreduce_i32_array->mpi_allreduce proc~allreduce_i32_array->proc~comm_get proc~allreduce_sp->mpi_allreduce proc~allreduce_sp->proc~comm_get proc~allreduce_sp_array->mpi_allreduce proc~allreduce_sp_array->proc~comm_get proc~allreduce_sp_array_to->mpi_allreduce proc~allreduce_sp_array_to->proc~comm_get proc~allreduce_sp_to->mpi_allreduce proc~allreduce_sp_to->proc~comm_get

Variables

Type Visibility Attributes Name Initial
real(kind=dp), private, allocatable :: temp(:)

Source Code

   subroutine darray_gsumf(buffer, n)
      real(dp), intent(inout) :: buffer(*)
      integer(int32), intent(in) :: n
      real(dp), allocatable :: temp(:)

      allocate (temp(n))
      temp = buffer(1:n)
      call allreduce(wrapper_comm, temp, n)
      buffer(1:n) = temp
      deallocate (temp)
   end subroutine darray_gsumf