(j3.2006) Paper submission

Bill Long longb
Mon Jun 13 14:45:09 EDT 2011

On 6/12/11 11:16 PM, Malcolm Cohen wrote:

> This possibility is not limited to MPI or new things like OpenCL but includes
> the asynchronous i/o primitives found in most operating systems and available
> through most C compilers.  Such primitives have even been available in ordinary
> retail operating systems like *BSD, Linux and Windows for well over a decade.

I appreciate that someone could call the C aio* routines within a 
subroutine and the effect would be the same as if the equivalent 
Fortran I/O  had been executed asynchronously. I'm not clear on how 
calling aio* routines are any different from the following:

Real,asynchronous  :: buf (1000)

! Inside read_sub there is an asynchronous READ statement for buf on unit 9
call read_sub (buf,1000, 9)

! Inside wait_sub there is a WAIT statement on unit 9
call wait_sub(9)

If we get this all-Fortran case right, why would we not get the aio* 
case right as well?

If the problem is as trivial as vendor's currently ignoring 
ASYNCHRONOUS, that should be easy to fix.  However, the TR still needs a 
"2.4 ASYNCHRONOUS attribute"  in Clause 2 explaining the requirement.


Bill Long                                           longb at cray.com
Fortran Technical Support    &                 voice: 651-605-9024
Bioinformatics Software Development            fax:   651-605-9142
Cray Inc./Cray Plaza, Suite 210/380 Jackson St./St. Paul, MN 55101

More information about the J3 mailing list