On Nov 12, 2013, at 00:38 , Jeff Squyres (jsquyres) <jsquy...@cisco.com> wrote:

> 2. In the 64 bit case, you'll have a difficult time extracting the MPI status 
> values from the 8-byte INTEGERs in the status array in Fortran (because the 
> first 2 of 3 each really be 2 4-byte integers).

My understanding is that in Fortran explicitly types variables will retain 
their expected size. Thus, instead of declaring

INTEGER :: status[MPI_STATUS_SIZE]

one should go for

INTEGER*4 :: status[MPI_STATUS_SIZE]

This should make it work right now. However, it is a non-standard solution, and 
we should fix the status handling internally in Open MPI.

Looking at the code I think that correctly detecting the type of our 
ompi_fortran_integer_t during configure (which should be a breeze if the 
correct flags are passed) should solve all issues here as we are protecting the 
status conversion between C and Fortran.

Jim, can you go in the include directory on your Open MPI installation and grep 
for the definition of ompi_fortran_integer_t please.

  George.


Reply via email to