(j3.2006) a question on cobounds

Jim Xia jimxia
Tue Jul 28 00:04:53 EDT 2009


> >> *        integer, save :: U(10)[N,*]      !<-- but do we intend to 
allow
> >> this?  I have difficulties in finding constraints/rules that forbid 
this*
> >>
> >> 
> >
> > This is allowed.  The array U has the same size on all images, and the
> > size is known at compile time.  The [N,*] only affects how the image
> > numbers are computed in references within the subroutine. This case is
> > discussed at [92:24-26].
> > 
> Frankly, this looks like shockingly bad design.  Like Jim, I never 
> imagined that something with variable bounds could be static, even if 
> the size were constant.


Same shock today here finding this out.  Although it's not much of an 
implementation issue, the simple fact that a piece of static memory can be 
declared differently from one run to another, from one image to another, 
is quite appalling.  It seems we just handed bad programmers a huge 
ammunition.  One can *smartly* devise asymmetrically coshaped coarrays on 
different images and play all kinds of games with that.  This blows away 
the symmetrical attribute (or simplicity) I've always associated with 
coarrays.  All in a sudden UPC seems not a bad language at all since the 
asymmetrical nature of a shared array can be better regulated than this. 
If cobounds provide nothing more than a shrewd way to compute image index, 
then what is the point to have cobounds and corank?  It may make things 
much easier if corank has to be 1 and colbound must be 1.  Maybe we should 
stay with MPI after all.


Jim Xia

XL Fortran Compiler Test
IBM Toronto Lab at 8200 Warden Ave, Markham, On, L6G 1C7
Phone (905) 413-3444  Tie-line 313-3444
email: jimxia at ca.ibm.com
D2/YF7/8200 /MKM

http://www.ibm.com/software/awdtools/fortran/xlfortran

-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://j3-fortran.org/pipermail/j3/attachments/20090728/97170190/attachment.html 



More information about the J3 mailing list