Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Co-arrays and gfortran ?

132 views
Skip to first unread message

john.chl...@gmail.com

unread,
Sep 25, 2012, 6:44:41 PM9/25/12
to
Trying to find out more about the status of gfortran and co-arrays. Is this something that will arrive anytime soon?

Also, I've noticed that the HPF group at Rice University is promoting something they call Coarray Fortran 2.0. Is this something that's gaining traction? It appears to be a "more complete" SPMD approach that includes "teams" and definable topology - much like MPI.

So where is gfortran going?

---John

Dan Nagle

unread,
Sep 25, 2012, 7:26:47 PM9/25/12
to
Hi,

AIUI, the communications library in gfortran needs work,
and volunteers are welcome. GCC generally, and gfortran in particular,
maintain extensive web sites. Current status is discussed there.

The work at Rice is one source of input to the further coarrays
work that the standards committees are doing now. How closely
the future standard will be to CAF 2.0 is best gauged by reading
the work list, which may be found at WG5's web site.

Coarrays were sufficiently controversial in the f08 standard
that they were split into a basic set and a further set. The basic set
is in f08 as published. The further set is receiving attention now.

If you really want to influence the standards work, join the committee.
--
Cheers!

Dan Nagle

Paul van Delst

unread,
Sep 26, 2012, 9:54:51 AM9/26/12
to
I hope to a full Fortran2003 implementation. :o)

The following comment doesn't really apply to the gfortran folks (I
think)... I understand folks want particular features implemented NOW,
but it sure seems to me that co-arrays (a F2008 feature that many
commercial compiler vendors, at least, say their customers want) are one
of the reasons regular, old Fortran2003 compilers are so few and far
between.

Anyhoo, here are the links for gfortran's 2003 status:
http://gcc.gnu.org/wiki/Fortran2003Status
and it's 2008 status:
http://gcc.gnu.org/wiki/Fortran2008Status

cheers,

paulv

john.chl...@gmail.com

unread,
Sep 26, 2012, 7:29:06 PM9/26/12
to
> cheers,
>
>
> paulv

It seems that co-arrays are a means of keeping Fortran ahead of the curve (so to speak) and relevant.

I've been writing numerical code in C for years and just recently been asked to re-visit Fortran. In particular, I was asked to re-write (translate) some plate vibration code I wrote in C (>2000 semicolons in C). I was very impressed with how well Fortran has aged (evolved). In the end, I have to say, I now prefer Fortran to C for numerical coding.

In truth, a lot of praise has to go to the developers of gfortran, an excellent tool/compiler.

BTW, take a look at: Response to: PETITION TO RETIRE FORTRAN (http://www.fortranstatement.com/Site/responses.html). Comparing the complexity of Fortran to C++ is crazy. No language I know of begins to compare to C++ in complexity ... an it's NO VALUE ADDED COMPLEXITY!

---John

Hossein

unread,
Sep 30, 2012, 4:26:43 PM9/30/12
to

I was following the implementation of Coarrays as well. Intel is done with the implementation so you can really try it. However, when using intel Coarrays, you are forced to use Intel MPI, in case you have MPI calls which I don't like.

Gfortran guys on the other hand were quite active but since the beginning of 2012 they somehow slowed down. I'm not sure of the reason, probably lack of support.

Hossein

john.chl...@gmail.com

unread,
Sep 30, 2012, 8:24:05 PM9/30/12
to
Actually, I was most interested in Rice University's involvement with their CAF 2.0 proposal. This seems to be fundamental different from co-arrays a la Fortran 2008.

---John

Steve Lionel

unread,
Oct 2, 2012, 9:35:07 AM10/2/12
to
On 9/30/2012 4:26 PM, Hossein wrote:
> I was following the implementation of Coarrays as well. Intel is done with the implementation so you can really try it. However, when using intel Coarrays, you are forced to use Intel MPI, in case you have MPI calls which I don't like.

No, you're not "forced" to use Intel MPI, though that's the only MPI we
officially support. We have a number of customers using MPICH2 or other
MPI implementations that are API-compatible. If this interests you,
contact us through Intel Premier Support and we'll tell you what you
need to use a different MPI.

--
Steve Lionel
Developer Products Division
Intel Corporation
Merrimack, NH

For email address, replace "invalid" with "com"

User communities for Intel Software Development Products
http://software.intel.com/en-us/forums/
Intel Software Development Products Support
http://software.intel.com/sites/support/
My Fortran blog
http://www.intel.com/software/drfortran

Refer to http://software.intel.com/en-us/articles/optimization-notice
for more information regarding performance and optimization choices in
Intel software products.

john.chl...@gmail.com

unread,
Oct 2, 2012, 12:50:12 PM10/2/12
to
Are the gfortran guys going in the same direction (as the Intel implementation): using MPI as infrastructure?

I've used OpenMPI (and MPICH2, but I prefer OpenMPI - better "out of the box" experience) and it works as advertised - good stuff. But this begs the question, doesn't basing your implementation on MPI limit what you can do with co-arrays? Why not use MPI directly - in your Fortran code in lieu of co-arrays?

---John

Steven G. Kargl

unread,
Oct 2, 2012, 1:07:19 PM10/2/12
to
On Tue, 02 Oct 2012 09:50:12 -0700, john.chludzinski wrote:

> On Tuesday, October 2, 2012 9:35:11 AM UTC-4, Steve Lionel wrote:
>> On 9/30/2012 4:26 PM, Hossein wrote:
>>
>>> I was following the implementation of Coarrays as well. Intel is done with the
>>> implementation so you can really try it. However, when using intel Coarrays, you
>>> are forced to use Intel MPI, in case you have MPI calls which I don't like.
>>
>> No, you're not "forced" to use Intel MPI, though that's the only MPI we
>> officially support. We have a number of customers using MPICH2 or other
>> MPI implementations that are API-compatible. If this interests you,
>> contact us through Intel Premier Support and we'll tell you what you
>> need to use a different MPI.
>>
>> Steve Lionel
>> Developer Products Division
>> Intel Corporation
>> Merrimack, NH
>
> Are the gfortran guys going in the same direction (as the Intel implementation):
> using MPI as infrastructure?

http://gcc.gnu.org/wiki/CoarrayLib#Coarrays_via_GNU_Fortran.27s_Coarray_Communication_Library

--
steve

Steve Lionel

unread,
Oct 2, 2012, 4:14:43 PM10/2/12
to
On 10/2/2012 12:50 PM, john.chl...@gmail.com wrote:

>But this begs the question, doesn't basing your implementation
> on MPI limit what you can do with co-arrays? Why not use MPI
directly - in your Fortran code in lieu of co-arrays?

No, it doesn't limit you. MPI has all the capability needed to express
full coarray semantics. Using MPI calls directly means you lose the
language integration of coarrays and have to deal with worrying about
optimization issues and asynchronous data.

There are other choices, of course, but we had an MPI implementation and
a team of MPI developers who could help us use it. We don't claim that
this is the only way to implement coarrays, but it worked for us, obviously.

\"Vladimír Fuka <"name.surnameat

unread,
Oct 3, 2012, 8:10:31 AM10/3/12
to
I would not say they are done. Last time I tried the 2013 version the
allocatable and pointer components didn't work. It is very important,
because it is the only way I know to have different array bounds on
different images.

Vladimir

Dne Sun, 30 Sep 2012 22:26:43 +0200 Hossein <talebi....@gmail.com>
napsal(a):
--
Tato zpráva byla vytvořena převratným poštovním klientem Opery:
http://www.opera.com/mail/
0 new messages