(j3.2006) (SC22WG5.4113) Standard intrinsics and coarrays (NOT random numbers)

N.M. Maclaren nmm1
Thu Oct 22 08:41:57 EDT 2009


Here is an alternative, that I think takes on board Bill's and Van's 
comments. It does not include the random number issues.


In 13.5, Standard generic intrinsic procedures, after Table 13.1, add
the new paragraphs:

    The effects of calling COMMAND_ARGUMENT_COUNT, EXECUTE_COMMAND_LINE,
    GET_COMMAND, GET_COMMAND_ARGUMENT, GET_ENVIRONMENT_VARIABLE on any
    image other than image 1 are processor dependent.

[ I dithered over "effects of calling" versus "results returned from",
but decided that the former was better because one plausible
implementation of these on other images is by a message and response
handshake to image 1. ]

    < Random numbers will be mentioned separately >

    It is processor dependent whether the results returned from
    CPU_TIME, DATE_AND_TIME and SYSTEM_CLOCK are dependent on which
    image calls them.

    NOTE 13.x
    This means that it is unspecified whether images use synchronized
    clocks, whether CPU_TIME returns a per-image or per-program value,
    whether all images run in the same time zone and whether the count
    rate and maximum in SYSTEM_CLOCK are the same for all images.

    The use of all other standard intrinsic procedures in unordered
    segments is subject only to their argument use following the rules
    in 8.5.2.


In A2, Processor Dependencies, after "how the sequences of atomic
actions in unordered segments interleave (13.1)", add the new bullet
points:

    * The effects of calling COMMAND_ARGUMENT_COUNT,
      EXECUTE_COMMAND_LINE, GET_COMMAND, GET_COMMAND_ARGUMENT,
      GET_ENVIRONMENT_VARIABLE on any image other than image 1 (13.5);

    * whether the results returned from CPU_TIME, DATE_AND_TIME and
      SYSTEM_CLOCK are dependent on which image calls them (13.5);


Regards,
Nick Maclaren.




More information about the J3 mailing list