[MPIWG Fortran] What compilers support TS 29113?

Bill Long longb at cray.com
Wed Jun 24 08:16:01 CDT 2015


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





More information about the mpiwg-fortran mailing list