FIXME : Add documentation
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer, | intent(inout), | dimension (:) | :: | i | ||
integer, | intent(in) | :: | dest |
subroutine min_reduce_integer_array (i, dest)
implicit none
integer, dimension (:), intent (in out) :: i
integer, intent (in) :: dest
# ifdef MPI
integer :: ierror
!$OMP MASTER
call time_message(.false., time_mp_collectives, ' MPI Collectives')
!$OMP END MASTER
if(iproc.eq.dest)then
call mpi_reduce &
(MPI_IN_PLACE, i, size(i), MPI_INTEGER, MPI_MIN, dest, mp_comm, ierror)
else
call mpi_reduce &
(i, i, size(i), MPI_INTEGER, MPI_MIN, dest, mp_comm, ierror)
endif
!$OMP MASTER
call time_message(.false., time_mp_collectives, ' MPI Collectives')
!$OMP END MASTER
# else
UNUSED_DUMMY(i)
if (dest /= 0) call mp_abort ("reduce to")
# endif
end subroutine min_reduce_integer_array