Intel® Fortran Compiler 17.0 Developer Guide and Reference

Execution Segments for Images

On each image, a segment is the sequence of statements executed before the first execution of an image control statement, between the execution of two image control statements, or after the last execution of an image control statement.

The segment executed immediately before the execution of an image control statement includes the evaluation of all expressions within that image control statement.

A coarray can be referenced or defined by execution of an atomic subroutine during the execution of a segment that is unordered, relative to the execution of a segment in which the coarray is referenced or defined by execution of an atomic subroutine. Otherwise, the following rules apply:

Incorrect sequencing of image control statements can suspend execution indefinitely. For example, one image might be executing a SYNC ALL statement while another is executing an ALLOCATE statement for a coarray.

See Also