Re: [OMPI users] OPENMPI-1.8.3: missing fortran bindings for MPI_SIZEOF

2014-11-11 Thread Jeff Squyres (jsquyres)
On Nov 11, 2014, at 9:43 AM, Dave Love  wrote:

> I haven't checked the source, but the commit message above says
> 
>  If the Fortran compiler supports both INTERFACE and ISO_FORTRAN_ENV,
>  then we'll build the MPI_SIZEOF interfaces.  If not, we'll skip
>  MPI_SIZEOF in mpif.h and the mpi module.
> 
> which implies it it's been removed for gcc < 4.9, whereas it worked before.

I'll update the README to be more clear.

>> Any chance I could convince you to submit a patch?  :-)
> 
> Maybe, but I don't really know what it should involve or whether it can
> be done mechanically; I definitely don't have time to dissect the spec.
> Actually, I'd have expected the API man pages to be reference versions,
> shared across implementations, but MPICH's are different.

Yeah, we don't actually share man pages.

I think the main issue would be just to edit the *.3in pages here:

https://github.com/open-mpi/ompi/tree/master/ompi/mpi/man/man3

They're all native nroff format (they're .3in instead of .3 because we 
pre-process them during "make" to substitute things like the release date and 
version in).

I'm guessing it would be a pretty mechanical kind of patch -- just adding 
Fortran interfaces at the top of each page.

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



Re: [OMPI users] OPENMPI-1.8.3: missing fortran bindings for MPI_SIZEOF

2014-11-11 Thread Jeff Squyres (jsquyres)
On Nov 11, 2014, at 9:38 AM, Dave Love  wrote:

>> 1. All modern compilers have ignore-TKR syntax,
> 
> Hang on!  (An equivalent of) ignore_tkr only appeared in gfortran 4.9
> (the latest release) as far as I know.  The system compiler of the bulk
> of GNU/Linux HPC systems currently is distinctly older (and the RHEL
> devtoolset packaging of gcc-4.9 is still beta).  RHEL 6 has gcc 4.4 as
> te system compiler and Debian stable has 4.7 and older.
> 
> I'm just pointing that out in case decisions are being made assuming
> everyone has this.  No worries if not.

Sorry, that statement was loaded with my assumption that "gfortran 4.9 is a 
modern fortran compiler; prior versions are not."

So don't worry: we're well aware that only gfortran >=4.9 has these features, 
and most everyone is not using it yet.

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



Re: [OMPI users] OPENMPI-1.8.3: missing fortran bindings for MPI_SIZEOF

2014-11-11 Thread Dave Love
"Jeff Squyres (jsquyres)"  writes:

> On Nov 10, 2014, at 8:27 AM, Dave Love  wrote:
>
>>> https://github.com/open-mpi/ompi/commit/d7eaca83fac0d9783d40cac17e71c2b090437a8c
>> 
>> I don't have time to follow this properly, but am I reading right that
>> that says mpi_sizeof will now _not_ work with gcc < 4.9, i.e. the system
>> compiler of the vast majority of HPC GNU/Linux systems, whereas it did
>> before (at least in simple cases)?
>
> You raise a very good point, which raises another unfortunately good related 
> point.
>
> 1. No, the goal is to enable MPI_SIZEOF in *more* cases, and still preserve 
> all the old cases.  Your mail made me go back and test all the old cases this 
> morning, and I discovered a bug which I need to fix before 1.8.4 is released 
> (details unimportant, unless someone wants to gory details).

I haven't checked the source, but the commit message above says

  If the Fortran compiler supports both INTERFACE and ISO_FORTRAN_ENV,
  then we'll build the MPI_SIZEOF interfaces.  If not, we'll skip
  MPI_SIZEOF in mpif.h and the mpi module.

which implies it it's been removed for gcc < 4.9, whereas it worked before.

> The answer actually turned out to be "yes".  :-\
>
> Specifically: the spec just says it's available in the Fortran interfaces.  
> It doesn't say "the Fortran interfaces, except MPI_SIZEOF."
>
> Indeed, the spec doesn't prohibit explicit interfaces in mpif.h (it never 
> has).  It's just that most (all?) MPI implementations have not provided 
> explicit interfaces in mpif.h.
>
> But for MPI_SIZEOF to work, explicit interfaces are *required*.

[Yes, I understand -- sorry if that wasn't clear and you wasted time
explaining.]

>> but I'd expect that to be deprecated anyhow.
>> (The man pages generally don't mention USE, only INCLUDE, which seems
>> wrong.)
>
> Mmm.  Yes, true.
>
> Any chance I could convince you to submit a patch?  :-)

Maybe, but I don't really know what it should involve or whether it can
be done mechanically; I definitely don't have time to dissect the spec.
Actually, I'd have expected the API man pages to be reference versions,
shared across implementations, but MPICH's are different.

> Fortran 77 compilers haven't existed for *many, many years*.

[I think f2c still gets some use, and g77 was only obsoleted with gcc 4
-- I'm not _that old_!  I'm not actually advocating f77, of course.]

> And I'll say it again: MPI has *never* supported Fortran 77 (it's a
> common misconception that it ever did).

Well, having "Fortran77 interface" in the standard could confuse a
stupid person!  (As a former language lawyer for it, I'd allow laxity in
"Fortran77", like the latest MPI isn't completely compatible with the
latest Fortran either.)

>> Fortran has interfaces, not prototypes!
>
> Yes, sorry -- I'm a C programmer and I dabble in Fortran

That was mainly as in it's better ☺.

> (read: I'm the guy who keeps the Fortran stuff maintained in OMPI), so
> I sometimes use the wrong terminology.  Mea culpa!

Sure, and thanks.  I dare say you can get some community help if you
need it, especially if people think Fortran isn't being properly
supported, though I'm not complaining.



Re: [OMPI users] OPENMPI-1.8.3: missing fortran bindings for MPI_SIZEOF

2014-11-11 Thread Dave Love
"Jeff Squyres (jsquyres)"  writes:

> There are several reasons why MPI implementations have not added explicit 
> interfaces to their mpif.h files, mostly boiling down to: they may/will break 
> real world MPI programs.
>
> 1. All modern compilers have ignore-TKR syntax,

Hang on!  (An equivalent of) ignore_tkr only appeared in gfortran 4.9
(the latest release) as far as I know.  The system compiler of the bulk
of GNU/Linux HPC systems currently is distinctly older (and the RHEL
devtoolset packaging of gcc-4.9 is still beta).  RHEL 6 has gcc 4.4 as
te system compiler and Debian stable has 4.7 and older.

I'm just pointing that out in case decisions are being made assuming
everyone has this.  No worries if not.

> so it's at least not a problem for subroutines like MPI_SEND (with a choice 
> buffer).  However: a) this was not true at the time when MPI-3 was written, 
> and b) it's not standard fortran.



Re: [OMPI users] OPENMPI-1.8.3: missing fortran bindings for MPI_SIZEOF

2014-11-10 Thread Dave Love
"Jeff Squyres (jsquyres)"  writes:

> There were several commits; this was the first one:
>
> https://github.com/open-mpi/ompi/commit/d7eaca83fac0d9783d40cac17e71c2b090437a8c

I don't have time to follow this properly, but am I reading right that
that says mpi_sizeof will now _not_ work with gcc < 4.9, i.e. the system
compiler of the vast majority of HPC GNU/Linux systems, whereas it did
before (at least in simple cases)?

> IIRC, it only affected certain configure situations (e.g., only
> certain fortran compilers).  I'm failing to remember the exact
> scenario offhand that was problematic right now, but it led to the
> larger question of: "hey, wait, don't we have to support MPI_SIZEOF in
> mpif.h, too?"

I'd have said the answer was a clear "no", without knowing what the
standard says about mpif.h, but I'd expect that to be deprecated anyhow.
(The man pages generally don't mention USE, only INCLUDE, which seems
wrong.)

>
>> I don't understand how it can work generally with mpif.h (f77?), as
>> implied by the man page, rather than the module.
>
> According to discussion in the Forum Fortran working group, it is
> required that MPI_SIZEOF must be supported in *all* MPI Fortran
> interfaces, including mpif.h.

Well that's generally impossible if it's meant to include Fortran77
compilers (which I must say doesn't seem worth it at this stage).

> Hence, if certain conditions are met by your Fortran compiler (i.e.,
> it's modern enough), OMPI 1.8.4 will have MPI_SIZEOF prototypes in
> mpif.h.  If not, then you get the same old mpif.h you've always had
> (i.e., no MPI_SIZEOF prototypes, and MPI_SIZEOF won't work properly if
> you use the mpif.h interfaces).

If it's any consolation, it doesn't work in the other MPIs here
(mp(va)pich and intel), as I'd expect.

> Keep in mind that MPI does not prohibit having prototypes in mpif.h --
> it's just that most (all?) MPI implementations don't tend to provide
> them.  However, in the case of MPI_SIZEOF, it is *required* that
> prototypes are available because the implementation needs the type
> information to return the size properly (in mpif.h., mpi module, and
> mpi_f08 module).
>
> Make sense?

Fortran has interfaces, not prototypes!

I understand the technicalities -- I hacked on g77 intrinsics -- but I'm
not sure how much sense it's making if things have effectively gone
backwards with gfortran.



Re: [OMPI users] OPENMPI-1.8.3: missing fortran bindings for MPI_SIZEOF

2014-11-06 Thread Michael.Rachner
Dear Mr. Squyres,

Thank you for your clear answer on the state of the interfaces in the mpi 
modules of OPENMPI.  A good state!
And I have coded sufficiently bugs myself, so I do not become too angry about 
the bugs of others.
If I should stumble upon missing Ftn-bindings in the future, I will send you a 
hint.

Greetings to you all!
 Michael Rachner


-Ursprüngliche Nachricht-
Von: users [mailto:users-boun...@open-mpi.org] Im Auftrag von Jeff Squyres 
(jsquyres)
Gesendet: Donnerstag, 6. November 2014 15:10
An: Open MPI User's List
Betreff: Re: [OMPI users] OPENMPI-1.8.3: missing fortran bindings for MPI_SIZEOF

On Nov 6, 2014, at 8:55 AM, <michael.rach...@dlr.de> <michael.rach...@dlr.de> 
wrote:

> I agree fully with omitting the explicit interfaces from  mpif.h   . It is an 
> important  resort for legacy codes.
> But, in the mpi and mpi_f08 module  explicit interfaces are required for  
> all(!)  MPI-routines.
> So far, this is not fulfilled in MPI-versions I know. 

Bugs happen.

I think you're saying that we don't intend to have all the routines in the mpi 
and mpi_f08 modules.  That's not correct.  We *do* have all explicit MPI 
interface in the mpi and mpi_f08 modules.  If some are missing -- like 
WIN_ALLOCATE was just discovered to be missing in the 1.8.3 release -- those 
are bugs.  We try really hard to avoid bugs, but sometimes they happen.  :-(

Are you aware of other routines that are missing from the OMPI mpi / mpi_f08 
modules?

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

___
users mailing list
us...@open-mpi.org
Subscription: http://www.open-mpi.org/mailman/listinfo.cgi/users
Link to this post: 
http://www.open-mpi.org/community/lists/users/2014/11/25700.php


Re: [OMPI users] OPENMPI-1.8.3: missing fortran bindings for MPI_SIZEOF

2014-11-06 Thread Jeff Squyres (jsquyres)
On Nov 6, 2014, at 8:55 AM,   
wrote:

> I agree fully with omitting the explicit interfaces from  mpif.h   . It is an 
> important  resort for legacy codes.
> But, in the mpi and mpi_f08 module  explicit interfaces are required for  
> all(!)  MPI-routines.
> So far, this is not fulfilled in MPI-versions I know. 

Bugs happen.

I think you're saying that we don't intend to have all the routines in the mpi 
and mpi_f08 modules.  That's not correct.  We *do* have all explicit MPI 
interface in the mpi and mpi_f08 modules.  If some are missing -- like 
WIN_ALLOCATE was just discovered to be missing in the 1.8.3 release -- those 
are bugs.  We try really hard to avoid bugs, but sometimes they happen.  :-(

Are you aware of other routines that are missing from the OMPI mpi / mpi_f08 
modules?

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



Re: [OMPI users] OPENMPI-1.8.3: missing fortran bindings for MPI_SIZEOF

2014-11-06 Thread Michael.Rachner
Dear Mr. Squyres,

I agree fully with omitting the explicit interfaces from  mpif.h   . It is an 
important  resort for legacy codes.
But, in the mpi and mpi_f08 module  explicit interfaces are required for  
all(!)  MPI-routines.
So far, this is not fulfilled in MPI-versions I know. 
I want to point out here, that this has a negative consequence for the 
Ftn-coding:
  'If someone uses the mpi (or mpi_f08) module, then he cannot put the name of 
an MPI-routine in the "only"-list of the mpi module'.

I explain that now: 
   The following stmt is an example of a desirable stmt, because the programmer 
sees at a glance, which quantities are used from this module in his subroutine,
   and this stmt limits the quantities in the mpi module only to those actually 
needed in the subroutine:

  use MPI, only:   MPI_COMM_WORLD, MPI_IN_PLACE, MPI_REDUCE
   However this stmt will work only, if the explicit interface for MPI_REDUCE 
is actually present in the mpi module.
   Unfortunately the explicit interfaces are not complete in the MPI 
distributions I know,
   so the programmer must use instead:   a) use MPI, only:  MPI_COMM_WORLD, 
MPI_IN_PLACE
   
This has the drawback, that always the implicit interface for MPI_REDUCE will 
be used, 
   
i.e. there is no control of the parameter list by the explicit interface, 
   
even if there exists an explicit interface in the mpi module
or :   b)   
use MPI
   
Here the explicit interface will be used if present in the module, otherwise 
the implicit interface will be used,
  
this is o.k., but the drawback is now, that the whole MPI world is (silently) 
present in the subroutine, 
  
and the programmer cannot see at a glance, what quantities are really used from 
the module in the sbr.
  
Greetings 
  Michael Rachner


-Ursprüngliche Nachricht-
Von: users [mailto:users-boun...@open-mpi.org] Im Auftrag von Jeff Squyres 
(jsquyres)
Gesendet: Donnerstag, 6. November 2014 12:42
An: Open MPI User's List
Betreff: Re: [OMPI users] OPENMPI-1.8.3: missing fortran bindings for MPI_SIZEOF

On Nov 6, 2014, at 5:37 AM, <michael.rach...@dlr.de> <michael.rach...@dlr.de> 
wrote:

> a) When looking in your  mpi_sizeof_mpifh.f90  test program I found a little 
> thing:  You may (but need not) change the name of the integer variable  size
>to e.g.   isize  , because   size   is just an intrinsic function in 
> Fortran (you may see it already, if you have an editor with 
> Fortran-highlighting).
>   Although your type declaration overrides the intrinsic function, a renaming 
> would make the coding unambiguous. 

Good catch.  I'll do that.

> b)  My idea was, that OPENMPI should provide always an declaration 
> (interface) for each MPI-routine
>(and that's what the MPI-3.0 Standard document (Sept.21, 2012) prescribes 
> (p. 599+601+603)),

Note that MPI-3 p603 says (about mpif.h):

"For each MPI routine, an implementation can choose to use an implicit or 
explicit interface..."

I.e., it is *not* mandated that MPI implementations have explicit interfaces 
for mpif.h (although, obviously, it *is* mandated for the mpi and mpi_f08 
modules).

There are several reasons why MPI implementations have not added explicit 
interfaces to their mpif.h files, mostly boiling down to: they may/will break 
real world MPI programs.

1. All modern compilers have ignore-TKR syntax, so it's at least not a problem 
for subroutines like MPI_SEND (with a choice buffer).  However: a) this was not 
true at the time when MPI-3 was written, and b) it's not standard fortran.

2. There are (very) likely real-world programs out there that aren't quite 
right (i.e., would fail to compile with explicit interfaces), but still work 
fine.  On the one hand, it's terrible that we implementers continue to allow 
people to run "incorrect" programs.  But on the other hand, users *have* very 
simple option to run their codes through explicit interfaces (the mpi module), 
and can do so if they choose to.  Hence, the MPI Forum has decided that 
backwards compatibility is important enough for legacy codes -- some of which 
are tens of thousands of lines long (and more!), and there are no maintainers 
for them any more (!) -- to allow the "good enough" to keep going.

3. But #1 and #2 are mostly trumped by: the g

Re: [OMPI users] OPENMPI-1.8.3: missing fortran bindings for MPI_SIZEOF

2014-11-06 Thread Jeff Squyres (jsquyres)
On Nov 6, 2014, at 5:37 AM,   
wrote:

> a) When looking in your  mpi_sizeof_mpifh.f90  test program I found a little 
> thing:  You may (but need not) change the name of the integer variable  size
>to e.g.   isize  , because   size   is just an intrinsic function in 
> Fortran (you may see it already, if you have an editor with 
> Fortran-highlighting).
>   Although your type declaration overrides the intrinsic function, a renaming 
> would make the coding unambiguous. 

Good catch.  I'll do that.

> b)  My idea was, that OPENMPI should provide always an declaration 
> (interface) for each MPI-routine
>(and that's what the MPI-3.0 Standard document (Sept.21, 2012) prescribes 
> (p. 599+601+603)),

Note that MPI-3 p603 says (about mpif.h):

"For each MPI routine, an implementation can choose to use an implicit or 
explicit interface..."

I.e., it is *not* mandated that MPI implementations have explicit interfaces 
for mpif.h (although, obviously, it *is* mandated for the mpi and mpi_f08 
modules).

There are several reasons why MPI implementations have not added explicit 
interfaces to their mpif.h files, mostly boiling down to: they may/will break 
real world MPI programs.

1. All modern compilers have ignore-TKR syntax, so it's at least not a problem 
for subroutines like MPI_SEND (with a choice buffer).  However: a) this was not 
true at the time when MPI-3 was written, and b) it's not standard fortran.

2. There are (very) likely real-world programs out there that aren't quite 
right (i.e., would fail to compile with explicit interfaces), but still work 
fine.  On the one hand, it's terrible that we implementers continue to allow 
people to run "incorrect" programs.  But on the other hand, users *have* very 
simple option to run their codes through explicit interfaces (the mpi module), 
and can do so if they choose to.  Hence, the MPI Forum has decided that 
backwards compatibility is important enough for legacy codes -- some of which 
are tens of thousands of lines long (and more!), and there are no maintainers 
for them any more (!) -- to allow the "good enough" to keep going.

3. But #1 and #2 are mostly trumped by: the goal is to deprecate mpif.h, anyway 
(perhaps in MPI-4?) -- so why bother spending any more time on it than we have 
to?  Ultimately, we'd like to get rid of the mpi module too (maybe in MPI-5?) 
-- the mpi_f08 module is the True Way Forward.

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



Re: [OMPI users] OPENMPI-1.8.3: missing fortran bindings for MPI_SIZEOF

2014-11-06 Thread Michael.Rachner
Dear Mr. Squyres,

a) When looking in your  mpi_sizeof_mpifh.f90  test program I found a little 
thing:  You may (but need not) change the name of the integer variable  size
to e.g.   isize  , because   size   is just an intrinsic function in 
Fortran (you may see it already, if you have an editor with 
Fortran-highlighting).
   Although your type declaration overrides the intrinsic function, a renaming 
would make the coding unambiguous. 

b)  My idea was, that OPENMPI should provide always an declaration (interface) 
for each MPI-routine
(and that's what the MPI-3.0 Standard document (Sept.21, 2012) prescribes 
(p. 599+601+603)),
 independent whether you have already a test program in your suite for an 
MPI-routine or not.
 Because:  If all the interfaces are present, you a priory will avoid 
"2-step" User messages: 
   first the User complains about a missing MPI-routine, 
and when the MPI-routine is made available, possibly later about a bug in that 
MPI-routine.
   So bugs in MPI-routines will be detected and removed 
faster in the course of the OPENMPI development. Good for all.

Greetings 
 Michael Rachner 





-Ursprüngliche Nachricht-
Von: users [mailto:users-boun...@open-mpi.org] Im Auftrag von Jeff Squyres 
(jsquyres)
Gesendet: Mittwoch, 5. November 2014 16:48
An: Open MPI User's List
Betreff: Re: [OMPI users] OPENMPI-1.8.3: missing fortran bindings for MPI_SIZEOF

Meh.  I forgot to attach the test.  :-)

Here it is.

On Nov 5, 2014, at 10:46 AM, Jeff Squyres (jsquyres) <jsquy...@cisco.com> wrote:

> On Nov 5, 2014, at 9:59 AM, <michael.rach...@dlr.de> <michael.rach...@dlr.de> 
> wrote:
> 
>> In my   sharedmemtest.f90  coding   just sent to you,
>> I have added a call of MPI_SIZEOF (at present it is deactivated, because of 
>> the missing Ftn-binding in OPENMPI-1.8.3).
> 
> FWIW, I attached one of the tests I put in our test suite for SIZEOF issues 
> after the last bug was found.  I have that same test replicated essentially 
> three times:
> 
> - once for mpif.h
> - once for "use mpi"
> - ones for "use mpi_f08"
> 
>> I suggest, that you may activate the 2 respective statements in the 
>> coding , and use yourself the program for testing whether MPI_SIZEOF works 
>> now in the upcoming 1.8.4-version.
>> For me, the installation of a tarball version is not so easy to do as 
>> for you, and the problem with the missing Ftn-bindings is not limited to a 
>> special machine.
> 
> Right; it was a larger problem.
> 
>> Can you tell me, from which OPENMPI-version on  the bug will be removed?
> 
> 1.8.4 will contain the fix.
> 
>> To generalize the problem with the Ftn-bindings:
>>  I think OPENMPI-development should go the whole hog,  and check, 
>> whether for all MPI-routines the Ftn-bindings exist.
>> This not so much a complicated task, but a somewhat time-consuming task.
>> But otherwise, over a long time more or less angry Users will write emails 
>> on missing FTN-bindings and grumble on "that buggy OPENMPI".
>> And you will have to write the answers on and on... .
>> This will finally take more time for developers and users then doing that 
>> work now once-for-all.
> 
> We do have a bunch of fortran tests, but I admit that our coverage is 
> not complete.  SIZEOF was not tested at all, for example, until 
> recently.  :-(
> 
> SIZEOF is also a bit of a special case in the MPI API because it *must* be 
> polymorphic (I don't think any other MPI API is) -- even for mpif.h.
> 
> --
> Jeff Squyres
> jsquy...@cisco.com
> For corporate legal information go to: 
> http://www.cisco.com/web/about/doing_business/legal/cri/
> 
> ___
> users mailing list
> us...@open-mpi.org
> Subscription: http://www.open-mpi.org/mailman/listinfo.cgi/users
> Link to this post: 
> http://www.open-mpi.org/community/lists/users/2014/11/25689.php


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


Re: [OMPI users] OPENMPI-1.8.3: missing fortran bindings for MPI_SIZEOF

2014-11-05 Thread Jeff Squyres (jsquyres)
On Nov 5, 2014, at 12:23 PM, Dave Love  wrote:

> Is the issue documented publicly?  I'm puzzled, because it certainly
> works in a simple case:

There were several commits; this was the first one:

https://github.com/open-mpi/ompi/commit/d7eaca83fac0d9783d40cac17e71c2b090437a8c

A few more were required after that one to clean up some bugs and corner cases 
that grew from that commit.

>  $ cat x.f90
>  use mpi

...trying to remember the details...

IIRC, it only affected certain configure situations (e.g., only certain fortran 
compilers).  I'm failing to remember the exact scenario offhand that was 
problematic right now, but it led to the larger question of: "hey, wait, don't 
we have to support MPI_SIZEOF in mpif.h, too?"

> I don't understand how it can work generally with mpif.h (f77?), as
> implied by the man page, rather than the module.

According to discussion in the Forum Fortran working group, it is required that 
MPI_SIZEOF must be supported in *all* MPI Fortran interfaces, including mpif.h.

Hence, if certain conditions are met by your Fortran compiler (i.e., it's 
modern enough), OMPI 1.8.4 will have MPI_SIZEOF prototypes in mpif.h.  If not, 
then you get the same old mpif.h you've always had (i.e., no MPI_SIZEOF 
prototypes, and MPI_SIZEOF won't work properly if you use the mpif.h 
interfaces).

Keep in mind that MPI does not prohibit having prototypes in mpif.h -- it's 
just that most (all?) MPI implementations don't tend to provide them.  However, 
in the case of MPI_SIZEOF, it is *required* that prototypes are available 
because the implementation needs the type information to return the size 
properly (in mpif.h., mpi module, and mpi_f08 module).

Make sense?

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



Re: [OMPI users] OPENMPI-1.8.3: missing fortran bindings for MPI_SIZEOF

2014-11-05 Thread Dave Love
"Jeff Squyres (jsquyres)"  writes:

> Yes, this is a correct report.
>
> In short, the MPI_SIZEOF situation before the upcoming 1.8.4 was a bit
> of a mess; it actually triggered a bunch of discussion up in the MPI
> Forum Fortran working group (because the design of MPI_SIZEOF actually
> has some unintended consequences that came to light when another OMPI
> user noted the same thing you did a few months ago).
>
> Can you download a 1.8.4 nightly tarball (or the rc) and see if
> MPI_SIZEOF is working for you there?

Is the issue documented publicly?  I'm puzzled, because it certainly
works in a simple case:

  $ cat x.f90
  use mpi
  integer size, ierror
  double precision d
  call mpi_sizeof (size, size, ierror)
  print *, size
  call mpi_sizeof (d, size, ierror)
  print *, size
  end
  $ mpif90 --showme:version
  mpif90: Open MPI 1.8.3 (Language: Fortran)
  $ mpif90 --showme:command
  gfortran
  $ mpif90 x.f90 && ./a.out
 4
 8

The missing routine is in the library for me:

  $ nm -D $MPI_LIB/libmpi_usempi.so | grep mpi_sizeof0di4_
  1cf0 T mpi_sizeof0di4_

I don't understand how it can work generally with mpif.h (f77?), as
implied by the man page, rather than the module.


Re: [OMPI users] OPENMPI-1.8.3: missing fortran bindings for MPI_SIZEOF

2014-11-05 Thread Jeff Squyres (jsquyres)
Meh.  I forgot to attach the test.  :-)

Here it is.

On Nov 5, 2014, at 10:46 AM, Jeff Squyres (jsquyres)  wrote:

> On Nov 5, 2014, at 9:59 AM,   
> wrote:
> 
>> In my   sharedmemtest.f90  coding   just sent to you,
>> I have added a call of MPI_SIZEOF (at present it is deactivated, because of 
>> the missing Ftn-binding in OPENMPI-1.8.3).
> 
> FWIW, I attached one of the tests I put in our test suite for SIZEOF issues 
> after the last bug was found.  I have that same test replicated essentially 
> three times:
> 
> - once for mpif.h
> - once for "use mpi"
> - ones for "use mpi_f08"
> 
>> I suggest, that you may activate the 2 respective statements in the coding ,
>> and use yourself the program for testing whether MPI_SIZEOF works now in the 
>> upcoming 1.8.4-version.
>> For me, the installation of a tarball version is not so easy to do as for 
>> you, 
>> and the problem with the missing Ftn-bindings is not limited to a special 
>> machine.
> 
> Right; it was a larger problem.
> 
>> Can you tell me, from which OPENMPI-version on  the bug will be removed?
> 
> 1.8.4 will contain the fix.
> 
>> To generalize the problem with the Ftn-bindings:
>>  I think OPENMPI-development should go the whole hog,  
>>  and check, whether for all MPI-routines the Ftn-bindings exist.
>> This not so much a complicated task, but a somewhat time-consuming task.
>> But otherwise, over a long time more or less angry Users will write emails 
>> on missing FTN-bindings and grumble on "that buggy OPENMPI".
>> And you will have to write the answers on and on... .
>> This will finally take more time for developers and users then doing that 
>> work now once-for-all.
> 
> We do have a bunch of fortran tests, but I admit that our coverage is not 
> complete.  SIZEOF was not tested at all, for example, until recently.  :-(
> 
> SIZEOF is also a bit of a special case in the MPI API because it *must* be 
> polymorphic (I don't think any other MPI API is) -- even for mpif.h.
> 
> -- 
> Jeff Squyres
> jsquy...@cisco.com
> For corporate legal information go to: 
> http://www.cisco.com/web/about/doing_business/legal/cri/
> 
> ___
> users mailing list
> us...@open-mpi.org
> Subscription: http://www.open-mpi.org/mailman/listinfo.cgi/users
> Link to this post: 
> http://www.open-mpi.org/community/lists/users/2014/11/25689.php


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


mpi_sizeof_mpifh.f90
Description: mpi_sizeof_mpifh.f90


Re: [OMPI users] OPENMPI-1.8.3: missing fortran bindings for MPI_SIZEOF

2014-11-05 Thread Jeff Squyres (jsquyres)
On Nov 5, 2014, at 9:59 AM,   
wrote:

> In my   sharedmemtest.f90  coding   just sent to you,
> I have added a call of MPI_SIZEOF (at present it is deactivated, because of 
> the missing Ftn-binding in OPENMPI-1.8.3).

FWIW, I attached one of the tests I put in our test suite for SIZEOF issues 
after the last bug was found.  I have that same test replicated essentially 
three times:

- once for mpif.h
- once for "use mpi"
- ones for "use mpi_f08"

> I suggest, that you may activate the 2 respective statements in the coding ,
> and use yourself the program for testing whether MPI_SIZEOF works now in the 
> upcoming 1.8.4-version.
> For me, the installation of a tarball version is not so easy to do as for 
> you, 
> and the problem with the missing Ftn-bindings is not limited to a special 
> machine.

Right; it was a larger problem.

> Can you tell me, from which OPENMPI-version on  the bug will be removed?

1.8.4 will contain the fix.

> To generalize the problem with the Ftn-bindings:
>   I think OPENMPI-development should go the whole hog,  
>   and check, whether for all MPI-routines the Ftn-bindings exist.
>  This not so much a complicated task, but a somewhat time-consuming task.
>  But otherwise, over a long time more or less angry Users will write emails 
> on missing FTN-bindings and grumble on "that buggy OPENMPI".
>  And you will have to write the answers on and on... .
>  This will finally take more time for developers and users then doing that 
> work now once-for-all.

We do have a bunch of fortran tests, but I admit that our coverage is not 
complete.  SIZEOF was not tested at all, for example, until recently.  :-(

SIZEOF is also a bit of a special case in the MPI API because it *must* be 
polymorphic (I don't think any other MPI API is) -- even for mpif.h.

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



Re: [OMPI users] OPENMPI-1.8.3: missing fortran bindings for MPI_SIZEOF

2014-11-05 Thread Michael.Rachner
Dear Mr. Squyres,

In my   sharedmemtest.f90  coding   just sent to you,
I have added a call of MPI_SIZEOF (at present it is deactivated, because of the 
missing Ftn-binding in OPENMPI-1.8.3).
I suggest, that you may activate the 2 respective statements in the coding ,
and use yourself the program for testing whether MPI_SIZEOF works now in the 
upcoming 1.8.4-version.
For me, the installation of a tarball version is not so easy to do as for you, 
and the problem with the missing Ftn-bindings is not limited to a special 
machine.

Can you tell me, from which OPENMPI-version on  the bug will be removed?

To generalize the problem with the Ftn-bindings:
   I think OPENMPI-development should go the whole hog,  
   and check, whether for all MPI-routines the Ftn-bindings exist.
  This not so much a complicated task, but a somewhat time-consuming task.
  But otherwise, over a long time more or less angry Users will write emails on 
missing FTN-bindings and grumble on "that buggy OPENMPI".
  And you will have to write the answers on and on... .
  This will finally take more time for developers and users then doing that 
work now once-for-all.

Thank You
   Michael Rachner



-Ursprüngliche Nachricht-
Von: users [mailto:users-boun...@open-mpi.org] Im Auftrag von Jeff Squyres 
(jsquyres)
Gesendet: Mittwoch, 5. November 2014 13:40
An: Open MPI User's List
Betreff: Re: [OMPI users] OPENMPI-1.8.3: missing fortran bindings for MPI_SIZEOF

Yes, this is a correct report.

In short, the MPI_SIZEOF situation before the upcoming 1.8.4 was a bit of a 
mess; it actually triggered a bunch of discussion up in the MPI Forum Fortran 
working group (because the design of MPI_SIZEOF actually has some unintended 
consequences that came to light when another OMPI user noted the same thing you 
did a few months ago).

Can you download a 1.8.4 nightly tarball (or the rc) and see if MPI_SIZEOF is 
working for you there?



On Nov 5, 2014, at 6:24 AM, <michael.rach...@dlr.de> <michael.rach...@dlr.de> 
wrote:

> Sorry, Gilles, you might be wrong:
> 
> The error occurs also with gfortran-4.9.1, when running my small shared 
> memory testprogram:
> 
> This is the answer of the linker with gfortran-4.9.1 :  
> sharedmemtest.f90:(.text+0x1145): undefined reference to `mpi_sizeof0di4_'
> 
> and this is the answer with intel-14.0.4:
>sharedmemtest.f90:(.text+0x11c3): undefined reference to `mpi_sizeof0di4_'
> 
> 
> If openmpi  actually provides a module file   mpi.mod,  that was  precompiled 
> by openmpi for a certain Fortran compiler,
> then the whole installation of openmpi on a User machine from the 
> openmpi-sourcecode for a User chosen Ftn-compiler would be a farce.
> The module file  mpi.mod  must be either generated during the 
> installation process of openmpi on the User-machine for the User chosen 
> Ftn-compiler, or alternatively Openmpi must provide the module not by a  
> mpi.mod file,  but a mpi.f90 file.  MS-MPI does it that way.
> In my opinion, providing a  mpi.f90  file is indeed  better than 
> providing an  mpi.mod file, because the User can look inside the module and 
> can directly see, if something is missing or possibly wrongly coded.
> 
> Greetings
>  Michael Rachner
> 
> 
> -Ursprüngliche Nachricht-
> Von: users [mailto:users-boun...@open-mpi.org] Im Auftrag von Gilles 
> Gouaillardet
> Gesendet: Mittwoch, 5. November 2014 11:33
> An: Open MPI Users
> Betreff: Re: [OMPI users] OPENMPI-1.8.3: missing fortran bindings for 
> MPI_SIZEOF
> 
> Michael,
> 
> the root cause is openmpi was not compiled with the intel compilers but the 
> gnu compiler.
> fortran modules are not binary compatible so openmpi and your application 
> must be compiled with the same compiler.
> 
> Cheers,
> 
> Gilles
> 
> On 2014/11/05 18:25, michael.rach...@dlr.de wrote:
>> Dear OPENMPI developers,
>> 
>> In OPENMPI-1.8.3 the Ftn-bindings for  MPI_SIZEOF  are missing, when using 
>> the mpi-module and when using mpif.h .
>> (I have not controlled, whether they are present in the mpi_08
>> module.)
>> 
>> I get this message from the linker (Intel-14.0.2):
>> /home/vat/src/KERNEL/mpi_ini.f90:534: undefined reference to 
>> `mpi_sizeof0di4_'
>> 
>> So can you add  the Ftn-bindings for MPI_SIZEOF?
>> 
>> Once again I feel, that Fortran-bindings are unloved step-children for 
>> C-programmers. 
>> 
>> Greetings to you all
>> Michael Rachner
>> ___
>> users mailing list
>> us...@open-mpi.org
>> Subscription: http://www.open-mpi.org/mailman/listinfo.cgi/users
>> Link to this post: 
>> http://www.open-mpi.org/community/lists/users/2014/11/25676.php
> 
> 

Re: [OMPI users] OPENMPI-1.8.3: missing fortran bindings for MPI_SIZEOF

2014-11-05 Thread Jeff Squyres (jsquyres)
Yes, this is a correct report.

In short, the MPI_SIZEOF situation before the upcoming 1.8.4 was a bit of a 
mess; it actually triggered a bunch of discussion up in the MPI Forum Fortran 
working group (because the design of MPI_SIZEOF actually has some unintended 
consequences that came to light when another OMPI user noted the same thing you 
did a few months ago).

Can you download a 1.8.4 nightly tarball (or the rc) and see if MPI_SIZEOF is 
working for you there?



On Nov 5, 2014, at 6:24 AM, <michael.rach...@dlr.de> <michael.rach...@dlr.de> 
wrote:

> Sorry, Gilles, you might be wrong:
> 
> The error occurs also with gfortran-4.9.1, when running my small shared 
> memory testprogram:
> 
> This is the answer of the linker with gfortran-4.9.1 :  
> sharedmemtest.f90:(.text+0x1145): undefined reference to `mpi_sizeof0di4_'
> 
> and this is the answer with intel-14.0.4:
>sharedmemtest.f90:(.text+0x11c3): undefined reference to `mpi_sizeof0di4_'
> 
> 
> If openmpi  actually provides a module file   mpi.mod,  that was  precompiled 
> by openmpi for a certain Fortran compiler,
> then the whole installation of openmpi on a User machine from the 
> openmpi-sourcecode for a User chosen Ftn-compiler would be a farce.
> The module file  mpi.mod  must be either generated during the installation 
> process of openmpi on the User-machine for the User chosen Ftn-compiler,
> or alternatively Openmpi must provide the module not by a  mpi.mod file,  but 
> a mpi.f90 file.  MS-MPI does it that way.
> In my opinion, providing a  mpi.f90  file is indeed  better than providing an 
>  mpi.mod file, because the User can look inside the module
> and can directly see, if something is missing or possibly wrongly coded. 
> 
> Greetings 
>  Michael Rachner
> 
> 
> -Ursprüngliche Nachricht-
> Von: users [mailto:users-boun...@open-mpi.org] Im Auftrag von Gilles 
> Gouaillardet
> Gesendet: Mittwoch, 5. November 2014 11:33
> An: Open MPI Users
> Betreff: Re: [OMPI users] OPENMPI-1.8.3: missing fortran bindings for 
> MPI_SIZEOF
> 
> Michael,
> 
> the root cause is openmpi was not compiled with the intel compilers but the 
> gnu compiler.
> fortran modules are not binary compatible so openmpi and your application 
> must be compiled with the same compiler.
> 
> Cheers,
> 
> Gilles
> 
> On 2014/11/05 18:25, michael.rach...@dlr.de wrote:
>> Dear OPENMPI developers,
>> 
>> In OPENMPI-1.8.3 the Ftn-bindings for  MPI_SIZEOF  are missing, when using 
>> the mpi-module and when using mpif.h .
>> (I have not controlled, whether they are present in the mpi_08 
>> module.)
>> 
>> I get this message from the linker (Intel-14.0.2):
>> /home/vat/src/KERNEL/mpi_ini.f90:534: undefined reference to 
>> `mpi_sizeof0di4_'
>> 
>> So can you add  the Ftn-bindings for MPI_SIZEOF?
>> 
>> Once again I feel, that Fortran-bindings are unloved step-children for 
>> C-programmers. 
>> 
>> Greetings to you all
>> Michael Rachner
>> ___
>> users mailing list
>> us...@open-mpi.org
>> Subscription: http://www.open-mpi.org/mailman/listinfo.cgi/users
>> Link to this post: 
>> http://www.open-mpi.org/community/lists/users/2014/11/25676.php
> 
> ___
> users mailing list
> us...@open-mpi.org
> Subscription: http://www.open-mpi.org/mailman/listinfo.cgi/users
> Link to this post: 
> http://www.open-mpi.org/community/lists/users/2014/11/25682.php
> ___
> users mailing list
> us...@open-mpi.org
> Subscription: http://www.open-mpi.org/mailman/listinfo.cgi/users
> Link to this post: 
> http://www.open-mpi.org/community/lists/users/2014/11/25683.php


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



Re: [OMPI users] OMPI users] OPENMPI-1.8.3: missing fortran bindings for MPI_SIZEOF

2014-11-05 Thread Gilles Gouaillardet
Michael,

Did you recompile with gfortran compiler or relink only ?
You need to recompile and relink
Can you attach your program so i can have a look ?

You really need one mpi install per compiler, and more if compilers versions 
from the same vendor are not compatible.
modules are useful to make this easy for end users, and this is out of the 
scope of openmpi.

Cheers,

Gilles

michael.rach...@dlr.de wrote:
>Sorry, Gilles, you might be wrong:
>
>The error occurs also with gfortran-4.9.1, when running my small shared memory 
>testprogram:
>
>This is the answer of the linker with gfortran-4.9.1 :  
> sharedmemtest.f90:(.text+0x1145): undefined reference to `mpi_sizeof0di4_'
>
>and this is the answer with intel-14.0.4:
>sharedmemtest.f90:(.text+0x11c3): undefined reference to `mpi_sizeof0di4_'
>
>
>If openmpi  actually provides a module file   mpi.mod,  that was  precompiled 
>by openmpi for a certain Fortran compiler,
>then the whole installation of openmpi on a User machine from the 
>openmpi-sourcecode for a User chosen Ftn-compiler would be a farce.
>The module file  mpi.mod  must be either generated during the installation 
>process of openmpi on the User-machine for the User chosen Ftn-compiler,
>or alternatively Openmpi must provide the module not by a  mpi.mod file,  but 
>a mpi.f90 file.  MS-MPI does it that way.
>In my opinion, providing a  mpi.f90  file is indeed  better than providing an  
>mpi.mod file, because the User can look inside the module
>and can directly see, if something is missing or possibly wrongly coded. 
>
>Greetings 
>  Michael Rachner
>
>
>-Ursprüngliche Nachricht-
>Von: users [mailto:users-boun...@open-mpi.org] Im Auftrag von Gilles 
>Gouaillardet
>Gesendet: Mittwoch, 5. November 2014 11:33
>An: Open MPI Users
>Betreff: Re: [OMPI users] OPENMPI-1.8.3: missing fortran bindings for 
>MPI_SIZEOF
>
>Michael,
>
>the root cause is openmpi was not compiled with the intel compilers but the 
>gnu compiler.
>fortran modules are not binary compatible so openmpi and your application must 
>be compiled with the same compiler.
>
>Cheers,
>
>Gilles
>
>On 2014/11/05 18:25, michael.rach...@dlr.de wrote:
>> Dear OPENMPI developers,
>>
>> In OPENMPI-1.8.3 the Ftn-bindings for  MPI_SIZEOF  are missing, when using 
>> the mpi-module and when using mpif.h .
>> (I have not controlled, whether they are present in the mpi_08 
>> module.)
>>
>> I get this message from the linker (Intel-14.0.2):
>>  /home/vat/src/KERNEL/mpi_ini.f90:534: undefined reference to 
>> `mpi_sizeof0di4_'
>>
>> So can you add  the Ftn-bindings for MPI_SIZEOF?
>>
>> Once again I feel, that Fortran-bindings are unloved step-children for 
>> C-programmers. 
>>
>> Greetings to you all
>>  Michael Rachner
>> ___
>> users mailing list
>> us...@open-mpi.org
>> Subscription: http://www.open-mpi.org/mailman/listinfo.cgi/users
>> Link to this post: 
>> http://www.open-mpi.org/community/lists/users/2014/11/25676.php
>
>___
>users mailing list
>us...@open-mpi.org
>Subscription: http://www.open-mpi.org/mailman/listinfo.cgi/users
>Link to this post: 
>http://www.open-mpi.org/community/lists/users/2014/11/25682.php
>___
>users mailing list
>us...@open-mpi.org
>Subscription: http://www.open-mpi.org/mailman/listinfo.cgi/users
>Link to this post: 
>http://www.open-mpi.org/community/lists/users/2014/11/25683.php


Re: [OMPI users] OPENMPI-1.8.3: missing fortran bindings for MPI_SIZEOF

2014-11-05 Thread Michael.Rachner
Sorry, Gilles, you might be wrong:

The error occurs also with gfortran-4.9.1, when running my small shared memory 
testprogram:

This is the answer of the linker with gfortran-4.9.1 :  
 sharedmemtest.f90:(.text+0x1145): undefined reference to `mpi_sizeof0di4_'

and this is the answer with intel-14.0.4:
sharedmemtest.f90:(.text+0x11c3): undefined reference to `mpi_sizeof0di4_'


If openmpi  actually provides a module file   mpi.mod,  that was  precompiled 
by openmpi for a certain Fortran compiler,
then the whole installation of openmpi on a User machine from the 
openmpi-sourcecode for a User chosen Ftn-compiler would be a farce.
The module file  mpi.mod  must be either generated during the installation 
process of openmpi on the User-machine for the User chosen Ftn-compiler,
or alternatively Openmpi must provide the module not by a  mpi.mod file,  but a 
mpi.f90 file.  MS-MPI does it that way.
In my opinion, providing a  mpi.f90  file is indeed  better than providing an  
mpi.mod file, because the User can look inside the module
and can directly see, if something is missing or possibly wrongly coded. 

Greetings 
  Michael Rachner


-Ursprüngliche Nachricht-
Von: users [mailto:users-boun...@open-mpi.org] Im Auftrag von Gilles 
Gouaillardet
Gesendet: Mittwoch, 5. November 2014 11:33
An: Open MPI Users
Betreff: Re: [OMPI users] OPENMPI-1.8.3: missing fortran bindings for MPI_SIZEOF

Michael,

the root cause is openmpi was not compiled with the intel compilers but the gnu 
compiler.
fortran modules are not binary compatible so openmpi and your application must 
be compiled with the same compiler.

Cheers,

Gilles

On 2014/11/05 18:25, michael.rach...@dlr.de wrote:
> Dear OPENMPI developers,
>
> In OPENMPI-1.8.3 the Ftn-bindings for  MPI_SIZEOF  are missing, when using 
> the mpi-module and when using mpif.h .
> (I have not controlled, whether they are present in the mpi_08 
> module.)
>
> I get this message from the linker (Intel-14.0.2):
>  /home/vat/src/KERNEL/mpi_ini.f90:534: undefined reference to 
> `mpi_sizeof0di4_'
>
> So can you add  the Ftn-bindings for MPI_SIZEOF?
>
> Once again I feel, that Fortran-bindings are unloved step-children for 
> C-programmers. 
>
> Greetings to you all
>  Michael Rachner
> ___
> users mailing list
> us...@open-mpi.org
> Subscription: http://www.open-mpi.org/mailman/listinfo.cgi/users
> Link to this post: 
> http://www.open-mpi.org/community/lists/users/2014/11/25676.php

___
users mailing list
us...@open-mpi.org
Subscription: http://www.open-mpi.org/mailman/listinfo.cgi/users
Link to this post: 
http://www.open-mpi.org/community/lists/users/2014/11/25682.php


Re: [OMPI users] OPENMPI-1.8.3: missing fortran bindings for MPI_SIZEOF

2014-11-05 Thread Gilles Gouaillardet
Michael,

the root cause is openmpi was not compiled with the intel compilers but
the gnu compiler.
fortran modules are not binary compatible so openmpi and your
application must be compiled
with the same compiler.

Cheers,

Gilles

On 2014/11/05 18:25, michael.rach...@dlr.de wrote:
> Dear OPENMPI developers,
>
> In OPENMPI-1.8.3 the Ftn-bindings for  MPI_SIZEOF  are missing, when using 
> the mpi-module and when using mpif.h .
> (I have not controlled, whether they are present in the mpi_08 module.)
>
> I get this message from the linker (Intel-14.0.2):
>  /home/vat/src/KERNEL/mpi_ini.f90:534: undefined reference to 
> `mpi_sizeof0di4_'
>
> So can you add  the Ftn-bindings for MPI_SIZEOF?
>
> Once again I feel, that Fortran-bindings are unloved step-children for 
> C-programmers. 
>
> Greetings to you all
>  Michael Rachner
> ___
> users mailing list
> us...@open-mpi.org
> Subscription: http://www.open-mpi.org/mailman/listinfo.cgi/users
> Link to this post: 
> http://www.open-mpi.org/community/lists/users/2014/11/25676.php



[OMPI users] OPENMPI-1.8.3: missing fortran bindings for MPI_SIZEOF

2014-11-05 Thread Michael.Rachner
Dear OPENMPI developers,

In OPENMPI-1.8.3 the Ftn-bindings for  MPI_SIZEOF  are missing, when using the 
mpi-module and when using mpif.h .
(I have not controlled, whether they are present in the mpi_08 module.)

I get this message from the linker (Intel-14.0.2):
 /home/vat/src/KERNEL/mpi_ini.f90:534: undefined reference to 
`mpi_sizeof0di4_'

So can you add  the Ftn-bindings for MPI_SIZEOF?

Once again I feel, that Fortran-bindings are unloved step-children for 
C-programmers. 

Greetings to you all
 Michael Rachner