(j3.2006) Liaison to IFIP WG 2.5
Wed Aug 22 04:54:27 EDT 2007
It is true, I do not claim to be technically expert in the area of co-arrays and after the recent
WG5/J3 meeting I am even more confused than I was before. In the early part of that meeting the
experts/advocates convinced me and other sceptics that co-arrays were the best way of expressing
architecture independent parallelism yet devised, great! I have long been totally convinced that for
HPC parallel was mainstream and that Fortran should be standardising good ways of exploiting such
machines. I agree with the proposition that soon most machines will be multicore. My beef is not
whether co-arrays should be standardised but how; should they be in the part-1 "core-language"
standard or in an optional part-n/TR.
Later in the same meeting it became clear that co-arrays were specifically aimed at systems that
were based on homogeneous parallelism. (To Alex, this is what I mean by architecturally specific.)
Looking at co-arrays from my al beit, limited understanding, they would be entirely superfluous to
anyone wishing to express an application in a
serial manner and most likely positively harmful in attempting to exploit heterogeneous parallelism.
Nevertheless, by including CAF in the core language standard every implementor must include them and
every user must be aware of them. Processors must implement them even if they are superfluous or
No application that can be written to exploit parallelism via co-arrays could not be written more
simply without co-arrays. (This is what I mean about not having general problem solving support.) On
appropriate hardware the use of CAF might make the solution run faster. On different hardware CAF
may well make it run slower.
For all these reasons I believe CAF should be standardised via an optional part-n standard.
The other thing that concerned me before and during the meeting is the continuing level of technical
dispute that exists over co-arrays. CAF generates the largest number of unresolved technical issues
and most of these result in multiple attempts at resolution, being sent back to subgroup repeatedly.
This does not suggest to an interested observer that a technically robust consensus has been
Standardise Co-arrays please but as a part-n standard and do not inflict it on core Fortran for ever
or the next 50 years.
I think Van underlined what I was saying about intervals. A few critical algorithms would benefit
from efficient evaluation via interval techniques. However, these are specialised and it would be
highly undesirable for whole applications to be written to use intervals instead of FP. It would be
desirable for hardware and languages to provide the primitives necessary to enable critical
algorithms to be programmed using intervals but a whole intrinsic type is not justified. By all
means establish a formal liaison with WG2.5.
End of rant.
> -----Original Message-----
> From: j3-bounces at j3-fortran.org [mailto:j3-bounces at j3-fortran.org]On
> Behalf Of Dan Nagle
> Sent: 21 August 2007 21:51
> To: fortran standards email list for J3
> Subject: Re: (j3.2006) Liaison to IFIP WG 2.5
> Lawrie Schonfelder wrote:
> > I would have to say that co-arrays are also not generally applicable.
> Parallel programming today is a mainstream programming technique.
> Mail clients, web browsers, and office suites all are
> multiprocessing programs.
> > As an optional part/TR they
> > are obviously desirable but since they are clearly an architecturally specific
> efficiency aid, not
> > providing general problem solving expression support,
> The above demonstrates that Lawrie doesn't understand co-arrays.
> One great advantage of co-arrays is
> their architectural >>> independence <<< from either
> SMP or DMP hardware, and thereby their suitability
> on any combination of the two (i.e., DMP with SMP nodes).
> > I remain emphatically opposed to their
> > inclusion as a core part of Fortran in much the same way as I would not wish intervals to be
> > included as an intrinsic.
> > I remain convinced that F2010 with co-arrays as an integral part of the standard is
> unacceptable and
> > so would a core Fortran with intervals as an intrinsic type!
> Having neatly hijacked the thread ...
> At the expense of getting back to the topic at hand,
> Van didn't ask to advocate intervals, he asked to liaise
> with WG 2.5. Why not see what that committee does,
> before starting the tirades?
> Hint: Google is your friend.
> Dan Nagle
> Purple Sage Computing Solutions, Inc.
> J3 mailing list
> J3 at j3-fortran.org
More information about the J3