(j3.2006) (SC22WG5.4590) [ukfortran] Comments on N1885
Malcolm Cohen
malcolm
Fri Nov 18 03:02:18 EST 2011
I am slowly catching up with my email backlog...
> On 10/26/11 1:34 PM, Van Snyder wrote:
> >
> > I have a few (possibly misguided) comments on N1885.
> > 5.4.2p1: It seems to be OK for a processor to decide that
> > pure real function xyz ( x )
> > integer, intent(in) :: x
> > xyz = x + 1.0
> > end function xyz
> > is an asynchronous communication initiation or completion procedure.
I don't think so - it doesn't do any communication.
A Fortran procedure cannot do anything async without using async i/o (already
covered) or some of the coarray features (also already covered), so in fact you
cannot write a procedure in Fortran that is an async communicator.
>I thought it should have
>said nothing, or that the program determines whether a procedure is an
>asynchronous communication initiation or completion procedure
The program does not determine this. For example,aio_read and aio_write are
asynchronous communication procedures in Posix.1-2001 (so in Linux and FreeBSD,
other operating systems have other routines); it is not up to the program to
decide this, these are part of "the processor" so it is processor-dependent.
>I don't know how to say that the processor might have a list of
>procedures that it knows to be asynchronous communication
The point is that the processor has a set of procedures that *ARE* asynchronous
communicators. It is not a case of knowing, it is a case of being. The
processor is not just the compiler, or the compiler + the linker, etc. , it is
the whole shooting-match.
>so why say anything at all?
I don't see how this differs from the other processor-dependent features like
what units are preconnected etc. Arguably if we don't say anything the feature
does not even exist because there would not be any such procedures, unless one
takes the view that whether a procedure is an asynchronous communicator is
completely obvious (this discussion should put that conjecture to rest at
least). In any case it would be a disservice to have a processor-dependent
feature without admitting that it is processor dependent.
Cheers,
--
................................Malcolm Cohen, Nihon NAG, Tokyo.
More information about the J3
mailing list