[MPIWG Fortran] What compilers support TS 29113?

Hubert Ritzdorf Hubert.Ritzdorf at EMEA.NEC.COM
Thu Jun 25 08:38:10 CDT 2015


My intention was to implement, test and work with the new Fortran features within my NEC version of the MPI library.
Therefore I was looking for compiler support. My versions of intel compilers didn't support any features
of TS 29113. I don't have access to Cray compilers. NEC compilers didn't support it.
At this time, gfortran 4.9.1 supports  parts of TS 29113 features and was my only possibility to use
Fortran subarrays without copy in/copy out at MPI 3.0 interfaces.

Therefore, I used gfortran 4.9.1 and implemented a work around for the standard include file.
I implemented the TS 29113 support as special C functions for Fortran, not as "simple" Fortran wrappers.

I simply wanted to share my experiences with TS29113 and gfortran and highlight the problems I found. 
I didn't want demoralizing programmers since gfortran doesn't claim full support of TS 29113 such as Bill Gropp already explained in his mail.

I didn't test it together with MPICH. 

Hubert
________________________________________
From: mpiwg-fortran [mpiwg-fortran-bounces at lists.mpi-forum.org] on behalf of Bill Long [longb at cray.com]
Sent: Wednesday, June 24, 2015 3:16 PM
To: MPI-WG Fortran working group
Subject: Re: [MPIWG Fortran] What compilers support TS 29113?

I think the “except for” is a pretty significant hole here.   It is certainly possible for a C programmer to take the TS 29113 descriptions and write a header file and the utility functions specified there.  However, there are some missing parts to having a working implementation for Fortran users. To implement the allocate / deallocate functions you need to know how the Fortran compiler allocates and deallocates memory.  Not a big issue for MPI, but this one is: The Fortran compiler has to do the descriptor conversions on the caller side if the C descriptor is different from the internal Fortran one.  Compiler support for the new descriptor was the big missing piece in gfortran 4.9.1.  I thought the intention was to change the gfortran descriptor to match the C one, to simplify calls.  If that’s not in 5.1.0, there is still a big hole.

Cheers,
Bill

On Jun 24, 2015, at 8:02 AM, Jeff Hammond <jeff.science at gmail.com> wrote:

> The "except for"="does not work" standard is a fantastic way to
> demoralize every programmer this side of Don Knuth.  Has MPICH ever
> worked?
>
> Jeff
>
> On Wed, Jun 24, 2015 at 5:11 AM, William Gropp <wgropp at illinois.edu> wrote:
>> Sounds interesting and useful.  However, “except for” is the same as “does not work” when talking about standards.
>>
>> Bill
>>
>> William Gropp
>> Director, Parallel Computing Institute
>> Thomas M. Siebel Chair in Computer Science
>> Chief Scientist, NCSA
>> University of Illinois Urbana-Champaign
>>
>>
>>
>>
>>
>> On Jun 24, 2015, at 3:29 AM, Hubert Ritzdorf <Hubert.Ritzdorf at EMEA.NEC.COM> wrote:
>>
>>> Hi,
>>>
>>> I used gfortran 4.9.1 and I have build an include file which adopted the definitions of the missing
>>> ISO_Fortran_binding.h to the implementation of gfortran (include file libgfortran.h) .
>>> Using this I could implement the Fortran binding for TS29113. It works except for arrays of derived Fortran Types
>>> which are always transferred via copy in/copy out.
>>>
>>> Hubert
>>> ________________________________________
>>> From: mpiwg-fortran [mpiwg-fortran-bounces at lists.mpi-forum.org] on behalf of William Gropp [wgropp at illinois.edu]
>>> Sent: Tuesday, June 23, 2015 9:34 PM
>>> To: MPI-WG Fortran working group
>>> Subject: Re: [MPIWG Fortran] What compilers support TS 29113?
>>>
>>> gfortran no, not even with 5.1.0 .  It does have a lot of F 2008, but not even all of it, according to https://gcc.gnu.org/wiki/Fortran2008Status and https://gcc.gnu.org/wiki/TS29113Status .
>>> Gfortran 5.1 fails the MPICH test because ISO_Fortran_binding.h isn’t available for GCC 5.1 (I don’t know if that’s the right test, but that’s what it does).  See also https://gcc.gnu.org/onlinedocs/gfortran/Further-Interoperability-of-Fortran-with-C.html#Further-Interoperability-of-Fortran-with-C .
>>>
>>> Bill
>>>
>>> William Gropp
>>> Director, Parallel Computing Institute
>>> Thomas M. Siebel Chair in Computer Science
>>> Chief Scientist, NCSA
>>> University of Illinois Urbana-Champaign
>>>
>>>
>>>
>>>
>>>
>>> On Jun 23, 2015, at 2:01 PM, Jeff Squyres (jsquyres) <jsquyres at cisco.com> wrote:
>>>
>>>> On Jun 23, 2015, at 11:51 AM, Bill Long <longb at cray.com> wrote:
>>>>>
>>>>> gfortran - yes   (4.9 works on my Mac)
>>>>
>>>> I thought fortran 4.9 did not have the standardized TS 29113 dope vector...?
>>>>
>>>>> Cray - yes  (8.3 for sure, or later).
>>>>
>>>> I knew about Cray, but I thought it was the only one.  That may be incorrect and/or outdated information.
>>>>
>>>>> Not sure about others.  People who build libraries (mpich, OpenMPI, ...) would know based on which ones can compiler their mpi_f08 module.
>>>>
>>>> Open MPI currently only has the non-TS-29113 interfaces for mpi_f08.  We're looking into whether it's time to implement the TS 29113 interfaces; that's the origin of my question.  :-)
>>>>
>>>> --
>>>> Jeff Squyres
>>>> jsquyres at cisco.com
>>>> For corporate legal information go to: http://www.cisco.com/web/about/doing_business/legal/cri/
>>>>
>>>> _______________________________________________
>>>> mpiwg-fortran mailing list
>>>> mpiwg-fortran at lists.mpi-forum.org
>>>> http://lists.mpi-forum.org/mailman/listinfo.cgi/mpiwg-fortran
>>>
>>> _______________________________________________
>>> mpiwg-fortran mailing list
>>> mpiwg-fortran at lists.mpi-forum.org
>>> http://lists.mpi-forum.org/mailman/listinfo.cgi/mpiwg-fortran
>>>
>>>
>>> Click https://www.mailcontrol.com/sr/op!XYE2yjUjGX2PQPOmvUiQSa3+T5MHvx+zSoc3i1rppEak!NwTIXyF11LzbbWVPirviig6hG5EbMAc+oOGgZg==  to report this email as spam.
>>> _______________________________________________
>>> mpiwg-fortran mailing list
>>> mpiwg-fortran at lists.mpi-forum.org
>>> http://lists.mpi-forum.org/mailman/listinfo.cgi/mpiwg-fortran
>>
>> _______________________________________________
>> mpiwg-fortran mailing list
>> mpiwg-fortran at lists.mpi-forum.org
>> http://lists.mpi-forum.org/mailman/listinfo.cgi/mpiwg-fortran
>
>
>
> --
> Jeff Hammond
> jeff.science at gmail.com
> http://jeffhammond.github.io/
> _______________________________________________
> mpiwg-fortran mailing list
> mpiwg-fortran at lists.mpi-forum.org
> http://lists.mpi-forum.org/mailman/listinfo.cgi/mpiwg-fortran

Bill Long                                                                       longb at cray.com
Fortran Technical Support  &                                  voice:  651-605-9024
Bioinformatics Software Development                     fax:  651-605-9142
Cray Inc./ Cray Plaza, Suite 210/ 380 Jackson St./ St. Paul, MN 55101


_______________________________________________
mpiwg-fortran mailing list
mpiwg-fortran at lists.mpi-forum.org
http://lists.mpi-forum.org/mailman/listinfo.cgi/mpiwg-fortran



More information about the mpiwg-fortran mailing list