CO_BROADCAST — Copy a value to all images the current set of images#

CO_BROADCAST(A, SOURCE_IMAGE, STAT, ERRMSG)#

CO_BROADCAST copies the value of argument A on the image with image index SOURCE_IMAGE to all images in the current team. A becomes defined as if by intrinsic assignment. If the execution was successful and STAT is present, it is assigned the value zero. If the execution failed, STAT gets assigned a nonzero value and, if present, ERRMSG gets assigned a value describing the occurred error.

Parameters
  • A – INTENT(INOUT) argument; shall have the same dynamic type and type parameters on all images of the current team. If it is an array, it shall have the same shape on all images.

  • SOURCE_IMAGE – a scalar integer expression. It shall have the same value on all images and refer to an image of the current team.

  • STAT – (optional) a scalar integer variable

  • ERRMSG – (optional) a scalar character variable

Standard:

Technical Specification (TS) 18508 or later

Class:

Collective subroutine

Syntax:
CALL CO_BROADCAST(A, SOURCE_IMAGE [, STAT, ERRMSG])
Example:
program test
  integer :: val(3)
  if (this_image() == 1) then
    val = [1, 5, 3]
  end if
  call co_broadcast (val, source_image=1)
  print *, this_image, ":", val
end program test
See also:

CO_MAX — Maximal value on the current set of images, CO_MIN — Minimal value on the current set of images, CO_SUM — Sum of values on the current set of images, CO_REDUCE — Reduction of values on the current set of images