[MPIWG Fortran] What is BIND(C)?

Jeff Squyres (jsquyres) jsquyres at cisco.com
Wed Feb 5 13:19:16 CST 2014


Not AFAIK.  But we use the pragmas for ignore TKR.

I guess I could have been more clear: OMPI will build the mpi_f08 module if it finds "enough" F08 characteristics supported in the Fortran compiler, but it may strip away some features if the compiler doesn't support them.  For example, with current ifort, you'll basically get everything except the "new" meaning of asynchronous and descriptors (we'll use ignore TKR pragmas instead) -- so the SUBARRAYS value will be .false.

The new gfortran functionality will be in the upcoming gcc/gfortran v4.9 (which isn't released yet).


On Feb 5, 2014, at 1:26 PM, Craig Rasmussen <rasmus at cas.uoregon.edu> wrote:

> I don't think Intel does yet (but actually I will check).  Intel supports the IGNORE_TKR and so Jeff is using the Intel compiler with compiler directives to support MPI-3.
> 
> Surprisingly, the latest gfortran supports type(*) and dimension(..) partially, as in it will act like IGNORE_TKR (I think) but actually doesn't pass the new C descriptors yet.
> 
> Craig Rasmussen
> CAS Scientific Programmer
> rasmus at cas.uoregon.edu
> 
> 
> 
> 
> On Feb 5, 2014, at 10:11 AM, Bill Long wrote:
> 
>> 
>> On Feb 5, 2014, at 12:02 PM, Jeff Squyres (jsquyres) <jsquyres at cisco.com> wrote:
>> 
>>> ...but be careful.  We didn't get rid of *all* the BIND(C)'s.
>>> 
>>> If you care, the most recent OMPI 1.7 and SVN trunk nightly tarballs have the most correct/most-bug-fixed implementation of the mpi_f08 module available (soon to be released as OMPI 1.7.4).  You'll need to build with a non-gfortran compiler to get the mpi_f08 module built (e.g., the Intel fortran compiler).
>> 
>> Really?  Intel supports type(*) and dimension(..) now?  
>> 
>> Cheers,
>> Bill
>> 
>>> 
>>> 
>>> 
>>> On Feb 5, 2014, at 12:46 PM, Rolf Rabenseifner <rabenseifner at hlrs.de> wrote:
>>> 
>>>> Hello,
>>>> 
>>>> The BIND(C) was removed in the latest errata,
>>>> see
>>>> http://www.mpi-forum.org/docs/docs.html
>>>> and
>>>> http://www.mpi-forum.org/docs/mpi-3.0/errata-30.pdf
>>>> page 1 lines 21-27
>>>> 
>>>> Best regards
>>>> Rolf Rabenseifner
>>>> 
>>>> ----- Original Message -----
>>>>> From: "Junchao Zhang" <jczhang at mcs.anl.gov>
>>>>> To: mpiwg-fortran at lists.mpi-forum.org
>>>>> Sent: Wednesday, February 5, 2014 6:42:28 PM
>>>>> Subject: [MPIWG Fortran] What is BIND(C)?
>>>>> 
>>>>> 
>>>>> 
>>>>> Hello,
>>>>> I have a naive question. MPI3 has Fortran binding in forms like
>>>>> this:
>>>>> 
>>>>> 
>>>>>     MPI_Send(buf, count, datatype, dest, tag, comm, ierror) BIND(C)
>>>>>        TYPE(*), DIMENSION(..), INTENT(IN) :: buf
>>>>>         INTEGER, INTENT(IN) :: count, dest, tag
>>>>>         ...
>>>>> 
>>>>> 
>>>>>  So how to interpret BIND(C) here?  Is it to say this interface is
>>>>> interoperable with C? But I find the interface arguments are not
>>>>> interoperable, e.g., INTEGER, instead of C_INT.
>>>>>  Thank you.
>>>>> 
>>>>> --Junchao Zhang
>>>>> _______________________________________________
>>>>> mpiwg-fortran mailing list
>>>>> mpiwg-fortran at lists.mpi-forum.org
>>>>> http://lists.mpi-forum.org/mailman/listinfo.cgi/mpiwg-fortran
>>>> 
>>>> -- 
>>>> Dr. Rolf Rabenseifner . . . . . . . . . .. email rabenseifner at hlrs.de
>>>> High Performance Computing Center (HLRS) . phone ++49(0)711/685-65530
>>>> University of Stuttgart . . . . . . . . .. fax ++49(0)711 / 685-65832
>>>> Head of Dpmt Parallel Computing . . . www.hlrs.de/people/rabenseifner
>>>> Nobelstr. 19, D-70550 Stuttgart, Germany . . . . (Office: Room 1.307)
>>>> _______________________________________________
>>>> mpiwg-fortran mailing list
>>>> mpiwg-fortran at lists.mpi-forum.org
>>>> http://lists.mpi-forum.org/mailman/listinfo.cgi/mpiwg-fortran
>>> 
>>> 
>>> -- 
>>> 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
>> 
>> Bill Long                                                                       longb at cray.com
>> Fortran Technical Suport  &                                  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
> 
> _______________________________________________
> mpiwg-fortran mailing list
> mpiwg-fortran at lists.mpi-forum.org
> http://lists.mpi-forum.org/mailman/listinfo.cgi/mpiwg-fortran


-- 
Jeff Squyres
jsquyres at cisco.com
For corporate legal information go to: http://www.cisco.com/web/about/doing_business/legal/cri/




More information about the mpiwg-fortran mailing list