Open MPI logo

Open MPI User's Mailing List Archives

  |   Home   |   Support   |   FAQ   |   all Open MPI User's mailing list

From: George Bosilca (bosilca_at_[hidden])
Date: 2006-04-24 17:42:13


I miss that part of the MPI 2 errata. I made the corrections, now
MPI_LONG_LONG and MPI_LONG_LONG_INT are identical. Therefore one will
have MPI_LONG_LONG == MPI_LONG_LONG_INT.

You can use it from the trunk starting from revision 9701. It will be
back-ported on the 1.1 and 1.0.3 on the next days.

   Thanks,
     george.

On Apr 24, 2006, at 3:20 PM, Audet, Martin wrote:

>
> Hi,
>
> The current and the previous versions of OpenMPI define
> MPI_LONG_LONG_INT and MPI_LONG_LONG constants as the address of two
> distinct global variables (&ompi_mpi_long_long_int and
> &ompi_mpi_long_long respectively) which makes the following
> expression true: MPI_LONG_LONG_INT != MPI_LONG_LONG.
>
> After consulting the MPI standards, I noticed the following:
>
> - The optional datatype corresponding to the optional C/C++ "long
> long" type is MPI_LONG_LONG_INT according to article 3.2.2.
> "Message data" of the MPI 1.1 standard (www.mpi-forum.org/docs/
> mpi-11-html/node32.html) and article 10.2. "Defined Constants for C
> and Fortran" (www.mpi-forum.org/docs/mpi-11-html/node169.html) of
> the MPI 1.1 standard.
>
> - The MPI_LONG_LONG optional datatype appeared for the first time
> in section 9.5.2. "External Data Representation: ``external32''" of
> the MPI 2.0 standard (www.mpi-forum.org/docs/mpi-20-html/
> node200.htm). This paragraph state that with the external32 data
> representation, this datatype is eight (8) bytes long.
>
> - However the previous statement was recognized as an error in the
> MPI 2.0 errata document (www.mpi-forum.org/docs/errata-20-2.html).
> The MPI 2.0 document should have used MPI_LONG_LONG_INT instead of
> MPI_LONG_LONG. It also state the following:
>
> In addition, the type MPI_LONG_LONG should be added as an
> optional type; it is a synonym for MPI_LONG_LONG_INT.
>
> This means that the real optional datatype corresponding to the C/C+
> + "long long" datatype is MPI_LONG_LONG_INT and that since
> MPI_LONG_LONG was mentioned by mistake in the MPI 2.0 standard
> document, the MPI_LONG_LONG predefined datatype constant is also
> accepted as a synonym to MPI_LONG_LONG_INT.
>
> We should therefore have MPI_LONG_LONG_INT == MPI_LONG_LONG which
> is not the case in OpenMPI.
>
> So please have a look at this issue.
>
> Note that MPICH and MPICH2 implementations satisfy:
> MPI_LONG_LONG_INT == MPI_LONG_LONG.
>
> Regrards,
>
>
> Martin Audet E: martin DOT audet AT imi cnrc-nrc gc ca
> Research Officer T: 450-641-5034
> Industrial Material Institute / National Research Council
> 75 de Mortagne, Boucherville, QC, J4B 6Y4, Canada
>
> _______________________________________________
> users mailing list
> users_at_[hidden]
> http://www.open-mpi.org/mailman/listinfo.cgi/users

"Half of what I say is meaningless; but I say it so that the other
half may reach you"
                                   Kahlil Gibran