To: J3 10-112r1
From: John Reid
Subject: Comment GB-12: Difference between SYNC IMAGES and SYNC ALL
Date: 2010 February 15
References: WG5/N1802, WG5/N1803, J3/09-007r3
DISCUSSION
The difference between SYNC IMAGES and SYNC ALL should be clarified.
EDIT
[190:15+]In 8.5.4 "SYNC IMAGES statement" at the end of Note 8.37, add
"When the following example runs on five or more images, each image
synchronizes with both of its neighbors, in a circular fashion.
INTEGER :: up, down
IF (NUM_IMAGES()>1) THEN
up = THIS_IMAGE()+1; IF (up>NUM_IMAGES()) up = 1
down = THIS_IMAGE()-1; IF (down==0) down = NUM_IMAGES()
SYNC IMAGES ( (/ up, down /) )
END IF
This might appear to have the same effect as SYNC ALL but there is no
ordering between the preceding and succeeding segments on non-adjacent
images. For example, the segment preceding the SYNC IMAGES statement
on image 3 will be ordered before those succeeding it on images 2 and 4,
but not those on images 1 and 5."