Subject: hpff-distribute: pointers, mapping etc

From: Rob Schreiber <[email-masked]>
Date: Mon, 15 Jan 1996 16:49:41 -0800

---------------------------------------------------------------------------
[email-masked] is a mailing list for discussion of data
distribution in High Performance Fortran.  Instructions for adding or
deleting yourself from this list appear at the bottom of this message.
---------------------------------------------------------------------------

There seems to be a lot of confusion about what mappings pointers can have.
I hope the distribution group will tackle this and produce something
we all understand and IBM will implement.

The issues are these:

1.   There seems to be no appetite anymore for any ambiguity as to mapping.
That is why realign and redistribute and maybe inherit are on there way out.
Thus, pointers that assume the mapping of their targets are viewed as bad.
Since pointers must agree with their targets as to type and rank, the obvious solution is to
give pointers mappings statically (at the declaration) and to require that the target
have an identical mapping.   This would apply to the allocated object if the pointer is used
in an allocate.  Why is this tricky?

1.   What if the pointer and target have imprecise mappings, with something
left to the compiler:

     real, pointer :: p(:,:)
     real x(100,100)
     !hpf$ distribute (block, block) :: x, p

The compiler might choose different processors arrangements.

2.   How do I generate and map linked structures one cell at a time?
A reasonable HPF answer might be "Use some other programming language."

3.  I dont see distribution ranges as the right answer here.   In fact,
with these rules and without dynamic mapping (and inherit?) there is no
need for them.

---------------------------------------------------------------------------
To (un)subscribe to this list, send mail to
[email-masked].
Leave the subject line blank, and in the body put the line
(un)subscribe <email-address>
---------------------------------------------------------------------------