parSumArrayES Subroutine

private subroutine parSumArrayES(arr, sz)

Uses

  • proc~~parsumarrayes~~UsesGraph proc~parsumarrayes parSumArrayES module~modgvec_globals MODgvec_Globals proc~parsumarrayes->module~modgvec_globals iso_fortran_env iso_fortran_env module~modgvec_globals->iso_fortran_env

Sum an array across MPI ranks: explicit-shape with implicit reshaping Multi-D->1D.

Arguments

Type IntentOptional Attributes Name
real(kind=wp), intent(inout), DIMENSION(sz) :: arr
integer, intent(in) :: sz

Calls

proc~~parsumarrayes~~CallsGraph proc~parsumarrayes parSumArrayES mpi_allreduce mpi_allreduce proc~parsumarrayes->mpi_allreduce

Source Code

  SUBROUTINE parSumArrayES(arr,sz)
  ! MODULES
    USE MODgvec_Globals, ONLY : wp
    IMPLICIT NONE
  !--------------------------------------------------------------------------------------------------------------------------------
  ! INPUT VARIABLES
    INTEGER, INTENT(IN) :: sz
    REAL(wp), DIMENSION(sz), INTENT(INOUT) :: arr  !implicit array reshaping
  !--------------------------------------------------------------------------------------------------------------------------------
  ! LOCAL VARIABLES
#   if MPI
    INTEGER :: ierr
  !================================================================================================================================
  ! BODY
    CALL MPI_AllReduce(MPI_IN_PLACE, arr, sz, dType, MPI_SUM, worldComm, ierr)
#   endif
  END SUBROUTINE parSumArrayES