(j3.2006) (SC22WG5.5027) [ukfortran] Canada's national body report to WG 9 (Ada)

N.M. Maclaren nmm1
Tue Jul 9 04:23:48 EDT 2013

On Jul 8 2013, Van Snyder wrote:
>Canada's national body report to the recent WG 9 meeting in Berlin
>remarked that WG 14 and WG 21 "are making significant progress towards
>the model and implementation of support for massive parallelism (many
>cores) within their languages."

That is extremely dubious.  Massive parallelism was not part of WG21's
objectives in the original design.  As is usual, however, a partial
success has led to euphoria and hubris, and some people are claiming
that the current model is scalable to massive parallelism.  Others are
more realistic.

>"In addition, Canada believes that there should be a language
>independent model of massive parallelization (data-level parallelism and
>control-level parallelism) that underlies the work going on in
>individual languages.

Yes, I know - they aren't the only ones :-(  It will merely obstruct
progress - in exactly the same way that POSIX has obstructed threading
progress.  It's difficult enough to match language concepts, but matching
different parallelism models has never been done successfully, as far as
I know.

The next paragraph would imply that the objective is interoperability
for everything from distributed memory message-passing models (MPI and
descendents of Smalltalk) through virtual shared memory and PGAS to
tightly-coupled explicit threading (C++) and implicit threading (parts
of OpenMP, CilkPlus, X10 etc.)  Oh, and let's throw dataflow (Prolog,
VHDL and probably some more general languages) into this, just to keep
things from getting too simple!

The killer with what people usually mean by many-core (GPUs) is that
their architectural model is different from what modern multi-core
CPUs have turned into - though possibly not different from what they
will become by 2020.  And that is even more different from networked
processing (Cray etc.)

> The justification for this is that virtually every
>system or application built today consists of multiple languages linked
>into a common image. To effectively implement any level of parallelism
>in such a system requires that a common and compatible approach be
>followed. To this end, Canada is proposing to SC 22 for its plenary in
>September, that SC 22 form a study group to determine if the creation of
>such a model is possible and if so, how it can be achieved and what the
>best vehicle would be to progress such work. We ask that WG 9 and WG 9
>p-members be supportive of this initiative."

The trouble is that such study groups very rarely, if ever, return
negative recommendations.  One can hope, but I am not optimistic.

>Since Fortran has apparently taken the lead with coarrays, it might be
>worthwhile to mention coarrays in this context, if the topic arises at
>the SC 22 meeting.


Nick Maclaren.

More information about the J3 mailing list