next up previous
Next: Considerations Due to Poor Up: LAPACK Working Note 112: Previous: Global Arguments and Floating

Communicating Floating Point Values on IEEE Machines

 

The IEEE standard for binary floating point arithmetic ([&make_named_href('', "node12.html#IEEE:BFPA","[13]")]) specifies how machines conforming to the standard should represent floating point values. We refer to machines conforming to this standard as IEEE machinesgif. Thus, when we communicate floating point numbers between IEEE machines we might hope that each processor has the same value. This is a reasonable hope and will often be realized.

For example, XDR (External Data Representation, [&make_named_href('', "node12.html#SunSoft:XDR","[19]")]) uses the IEEE representation for floating point numbers and so a message passing system that uses XDR will communicate floating point numbers without changegif. PVM is an example of a system that uses XDR. MPI suggests the use of XDR, but does not mandate its use ([&make_named_href('', "node12.html#SOHWD:96","[18]"), Section 2.3.3,]). Unless we have additional information about the implementation we cannot assume that floating point numbers will be communicated without change on IEEE machines when using MPI.

Note that there is also an IEEE standard concerned with standardizing data formats to aid data conversion between processors ([&make_named_href('', "node12.html#IEEE:SDFOfSCIP","[15]")]).



Jack Dongarra
Fri Aug 30 15:13:52 EDT 1996