From owner-sc22wg5@open-std.org  Thu Jan 22 22:19:50 2009
Return-Path: <owner-sc22wg5@open-std.org>
X-Original-To: sc22wg5-dom7
Delivered-To: sc22wg5-dom7@www2.open-std.org
Received: by www2.open-std.org (Postfix, from userid 521)
	id B5FD2CA5FED; Thu, 22 Jan 2009 22:19:50 +0100 (CET)
X-Original-To: sc22wg5@open-std.org
Delivered-To: sc22wg5@open-std.org
Received: from mail.jpl.nasa.gov (sentrion1.jpl.nasa.gov [128.149.139.105])
	by www2.open-std.org (Postfix) with ESMTP id B5BB0CA5FE6
	for <sc22wg5@open-std.org>; Thu, 22 Jan 2009 22:19:48 +0100 (CET)
Received: from mprox2.jpl.nasa.gov (mprox2.jpl.nasa.gov [137.78.160.141])
	by mail.jpl.nasa.gov (Switch-3.3.2mp/Switch-3.3.2mp) with ESMTP id n0MLJY0Q013867;
	Thu, 22 Jan 2009 21:19:34 GMT
Received: from [137.79.7.57] (math.jpl.nasa.gov [137.79.7.57])
	(authenticated bits=0)
	by mprox2.jpl.nasa.gov (Switch-3.2.6/Switch-3.2.6) with ESMTP id n0MLJWAn031373
	(version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NOT);
	Thu, 22 Jan 2009 13:19:32 -0800
Subject: Re: (j3.2006) (SC22WG5.3886) [ukfortran]	[MPI3	Fortran]	MPI
	non-blocking transfers
From: Van Snyder <Van.Snyder@jpl.nasa.gov>
Reply-To: Van.Snyder@jpl.nasa.gov
To: "longb@cray.com" <longb@cray.com>
Cc: WG5 <sc22wg5@open-std.org>,
	MPI-3 Fortran working group <mpi3-fortran@lists.mpi-forum.org>
In-Reply-To: <49789AC3.4010203@cray.com>
References: <Prayer.1.3.1.0901211104060.5654@hermes-2.csi.cam.ac.uk>
	 <49776DF7.1040900@cray.com>	<20090121211748.130A5C178D9@www2.open-std.org>
	 <20090121224014.6CB63C178D9@www2.open-std.org>
	 <20090121234200.4F3BDCA3434@www2.open-std.org>
	 <20090122000407.D5A8ECA3434@www2.open-std.org>
	 <20090122100652.C31E9CA3434@www2.open-std.org>  <49789AC3.4010203@cray.com>
Content-Type: text/plain
Organization: Yes
Date: Thu, 22 Jan 2009 13:19:32 -0800
Message-Id: <1232659172.15119.826.camel@math.jpl.nasa.gov>
Mime-Version: 1.0
X-Mailer: Evolution 2.12.3 (2.12.3-8.el5_2.3) 
Content-Transfer-Encoding: 7bit
X-Source-IP: math.jpl.nasa.gov [137.79.7.57]
X-Source-Sender: Van.Snyder@jpl.nasa.gov
X-AUTH: Authorized
Sender: owner-sc22wg5@open-std.org
Precedence: bulk


On Thu, 2009-01-22 at 08:11 -0800, Bill Long wrote:
> 
> >> One simple step toward solving the problem is to write an extra
> >> interface layer that includes the argument, which then calls the real
> >> MPI wait routine, not passing that argument.  Then declaring the buffer
> >> and the dummy argument of the wait routine interface layer to be
> >> ASYNCHRONOUS ought to work, according to the rules we already have in
> >> place for Fortran asynchronous I/O.
> >>
> 
> The basic problem with adding a buffer argument to a variant of the
> MPI_wait routines is that the buffer variable may not be accessible in
> the scoping unit of the call.  This seems like a fatal flaw with this
> approach.

If it's not accessible in the scoping unit of the call, then the
compiler can't possibly fiddle with it, and in particular can't possibly
move references to it across the call.


