[MPIWG Fortran] What is BIND(C)?

Bill Long longb at cray.com
Wed Feb 5 13:20:51 CST 2014


On Feb 5, 2014, at 12: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.
> 

Using IGNORE_TKR misses a big part of the mpi_f08 module.  

> 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.
> 

Right.  I’ve been using gfortran 4.9 for some time to compile mpi_f08 and associated modules. But not execute.  The Cray compiler does support the C descriptors, but gfortran is not quite there yet.  I think the gfortran plan is to switch all of their dope vectors to the C descriptor format, which is a much bigger change.

Cheers,
Bill


> 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

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





More information about the mpiwg-fortran mailing list