Note that I'm only referring to IEEE storage format. We should not require compliance with IEEE floating-point arithmetic in reduction operators, although it's obviously nice if implementations provide it. Jeff On Wed, Jun 21, 2017 at 10:40 PM Jeff Hammond <[email protected]> wrote:
I would like to move beyond languages here and have MPI define IEEE754 types. So we'd have e.g. MPI_IEEE32BIT for single, etc.
MPI would do the math according to IEEE in whatever language the implementation uses. Languages would need to have a compatible type to allow the user to manipulate the resulting buffers.
Jeff
Sent from my iPhone
On Jun 21, 2017, at 10:24 PM, Atsushi HORI <[email protected]> wrote:
Hello, Bill,
2017/06/22 14:03、William Gropp <[email protected]> wrote;
On timing, note that MPI already defined optional types. One of these is MPI_REAL2, which is a 2-byte floating point type - that is, FP16. (See p25, line 36, 177, line 2, 540 line 10, and 674 line 38). Was MPI_REAL2 discussed?
I did not notice of that and there was no discussion about MPI_REAL2 (unless I missed).
I checked 3.1 standard as you pointed out, but MPI_REAL2 is defined as a Fortran type. I believe that there is no C predefined type for FP16 (or 'MPI_HALF') in MPI 3.1. This is just because ISO C does not define FP16 yet.
— from p25, MPI 3.1, MPI requires support of these datatypes, which match the basic datatypes of Fortran and ISO C. Additional MPI datatypes should be provided if the host language has additional data types: MPI_DOUBLE_COMPLEX for double precision complex in Fortran declared to be of type DOUBLE COMPLEX; MPI_REAL2, MPI_REAL4, and MPI_REAL8 for Fortran reals, declared to be of type REAL*2, REAL*4 and REAL*8, respectively; MPI_INTEGER1, MPI_INTEGER2, and MPI_INTEGER4 for Fortran integers, declared to be of type INTEGER*1, INTEGER*2, and INTEGER*4, respectively; etc.
----- Atsushi HORI [email protected] http://aics-sys.riken.jp
_______________________________________________ mpiwg-p2p mailing list [email protected] https://lists.mpi-forum.org/mailman/listinfo/mpiwg-p2p
-- Jeff Hammond [email protected] http://jeffhammond.github.io/