[mpiwg-p2p] FP16 Support

Jeff Hammond jeff.science at gmail.com
Thu Jun 22 00:40:10 CDT 2017


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 <ahori at riken.jp> wrote:
> 
> Hello, Bill,
> 
>> 2017/06/22 14:03、William Gropp <wgropp at illinois.edu> 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
> ahori at riken.jp
> http://aics-sys.riken.jp
> 
> 
> 
> 
> _______________________________________________
> mpiwg-p2p mailing list
> mpiwg-p2p at lists.mpi-forum.org
> https://lists.mpi-forum.org/mailman/listinfo/mpiwg-p2p


More information about the mpiwg-p2p mailing list