mpi-forum / mpi-issues

Tickets for the MPI Forum
http://www.mpi-forum.org/
67 stars 8 forks source link

MPI_REAL2 not always included in appropriate lists #831

Open jeffhammond opened 9 months ago

jeffhammond commented 9 months ago

Problem

Chapter 19:

We assume that for each typeclass (integer, real, complex) and each word size n there is a unique machine representation. For every pair (typeclass, n) supported by a compiler, MPI must provide a named size-specific datatype. The name of this datatype is of the form MPI_ in C and Fortran where is one of REAL, INTEGER, or COMPLEX, and is the length in bytes of the machine representation. This datatype locally matches all variables of type (typeclass, n) in Fortran. The list of names for such types includes: MPI_REAL4 MPI_REAL8 MPI_REAL16 MPI_COMPLEX8 MPI_COMPLEX16 MPI_COMPLEX32 MPI_INTEGER1 MPI_INTEGER2 MPI_INTEGER4 MPI_INTEGER8 MPI_INTEGER16

MPI_REAL2 and MPI_COMPLEX4 should be listed here, or we should remove the list altogether and just give an example, since a full list exists elsewhere.

Proposal

Add it to the list or remove the list.

Changes to the Text

Trivial

Impact on Implementations

None

Impact on Users

Clarity

References and Pull Requests

wrwilliams commented 9 months ago

+1 for remove list and add reference to the full list.

jprotze commented 9 months ago

Doesn't the includes: before the list already clarify that this is no complete list? I think, having 2 or three examples might be sufficient, or make the composition of the name more clear: MPI_XXXYYY, where XXX is in {INTEGER,REAL,COMPLEX} and YYY is the length in bytes without any 0 prefix.

jeffhammond commented 9 months ago

Sure, "includes" isn't technically wrong for listing 11 of 13 cases, but since it doesn't say "includes, for example", it is reasonable for a reader to conclude it is a complete list.

It is better to ambiguous, and that's what I'll accomplish in the change. Details TBD.