<div dir="ltr">I just created <a href="https://github.com/mpi-forum/mpi-issues/issues/66">https://github.com/mpi-forum/mpi-issues/issues/66</a> regarding my proposal to support IEEE types directly.</div><div class="gmail_extra"><br><div class="gmail_quote">On Thu, Jun 22, 2017 at 11:28 AM, Jeff Hammond <span dir="ltr"><<a href="mailto:jeff.science@gmail.com" target="_blank">jeff.science@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div>Unless the expiration of an IEEE standard forces everyone to cease using it, I am not worried about this issue.  All the compilers I use still explicitly support obsolete language standards, and vendor compilers support the features that their customers demand, including non-standard ones.</div><div><br></div><div>As for hardware support, major processor vendors are not known for breaking backwards-compatibility unless there are very good reasons to do so.  At least one vendor maintains backwards compatibility to an ISA from 1977 ;-)</div><span class="HOEnZb"><font color="#888888"><div><br></div><div>Jeff</div></font></span><div><div><div class="h5"><br>On Wed, Jun 21, 2017 at 10:49 PM, Gropp, William D <<a href="mailto:wgropp@illinois.edu" target="_blank">wgropp@illinois.edu</a>> wrote:<br>><br>> Note that IEEE754 is about to expire - all IEEE standards, as I understand it, must be renewed on a regular schedule. Someone, say a major processor vendor, might want to speak up for it :)<br>> Bill<br>><br>> Sent from my iPad<br>><br>> > On Jun 22, 2017, at 7:40 AM, Jeff Hammond <<a href="mailto:jeff.science@gmail.com" target="_blank">jeff.science@gmail.com</a>> wrote:<br>> ><br>> > 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.<br>> ><br>> > 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.<br>> ><br>> > Jeff<br>> ><br>> > Sent from my iPhone<br>> ><br>> >> On Jun 21, 2017, at 10:24 PM, Atsushi HORI <<a href="mailto:ahori@riken.jp" target="_blank">ahori@riken.jp</a>> wrote:<br>> >><br>> >> Hello, Bill,<br>> >><br>> >>> 2017/06/22 14:03、William Gropp <<a href="mailto:wgropp@illinois.edu" target="_blank">wgropp@illinois.edu</a>> wrote;<br>> >>><br>> >>> 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?<br>> >><br>> >> I did not notice of that and there was no discussion about MPI_REAL2 (unless I missed).<br>> >><br>> >> 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.<br>> >><br>> >><br>> >> — from p25, MPI 3.1,<br>> >> 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.<br>> >><br>> >> -----<br>> >> Atsushi HORI<br>> >> <a href="mailto:ahori@riken.jp" target="_blank">ahori@riken.jp</a><br>> >> <a href="http://aics-sys.riken.jp" target="_blank">http://aics-sys.riken.jp</a><br>> >><br>> >><br>> >><br>> >><br>> >> ______________________________<wbr>_________________<br>> >> mpiwg-p2p mailing list<br>> >> <a href="mailto:mpiwg-p2p@lists.mpi-forum.org" target="_blank">mpiwg-p2p@lists.mpi-forum.org</a><br>> >> <a href="https://lists.mpi-forum.org/mailman/listinfo/mpiwg-p2p" target="_blank">https://lists.mpi-forum.org/<wbr>mailman/listinfo/mpiwg-p2p</a><br>> > ______________________________<wbr>_________________<br>> > mpiwg-p2p mailing list<br>> > <a href="mailto:mpiwg-p2p@lists.mpi-forum.org" target="_blank">mpiwg-p2p@lists.mpi-forum.org</a><br>> > <a href="https://lists.mpi-forum.org/mailman/listinfo/mpiwg-p2p" target="_blank">https://lists.mpi-forum.org/<wbr>mailman/listinfo/mpiwg-p2p</a><br>> ______________________________<wbr>_________________<br>> mpiwg-p2p mailing list<br>> <a href="mailto:mpiwg-p2p@lists.mpi-forum.org" target="_blank">mpiwg-p2p@lists.mpi-forum.org</a><br>> <a href="https://lists.mpi-forum.org/mailman/listinfo/mpiwg-p2p" target="_blank">https://lists.mpi-forum.org/<wbr>mailman/listinfo/mpiwg-p2p</a><br><br><br><br><br></div></div><span class="">--<br>Jeff Hammond<br><a href="mailto:jeff.science@gmail.com" target="_blank">jeff.science@gmail.com</a><br><a href="http://jeffhammond.github.io/" target="_blank">http://jeffhammond.github.io/</a><br><div class="gmail_extra">
</div></span></div></div>
</blockquote></div><br><br clear="all"><div><br></div>-- <br><div class="gmail_signature" data-smartmail="gmail_signature">Jeff Hammond<br><a href="mailto:jeff.science@gmail.com" target="_blank">jeff.science@gmail.com</a><br><a href="http://jeffhammond.github.io/" target="_blank">http://jeffhammond.github.io/</a></div>
</div>