ExactDotProduct
During recent mails the question came up whether
a) an exact dot product (Motion 9) or
b) a tightly rounded dot product (Vienna proposal)
is to be required by IEEE P1788.
A few pros and cons are listed here which might help to vote for Motion 9.
* A pro for a): b) is a consequence of a). The opposite is not true.
* A seemingly pro for b): Relatively fast software solutions are
available for b). They suffice for many applications. Software
implementation of a) is possibly slower.
* A pro for a): It is the key operation for variable precision
interval arithmetic (see the IFIP Working Group letters). Roughly:
With long interval arithmetic real arithmetic expressions usually
can be evaluated with sufficiently accurate bounds in a very
simple manner just by operator overloading (what sometimes is
called naïve interval arithmetic). This may make interval
arithmetic much more attractive.
* A major pro for a): Hardware implementation of a) is not
complicated at all. We have done it several times with students.
In speed a hardware realization of the exact dot product exceeds
any guaranteed software realization of the dot product by
magnitudes. By pipelining the arithmetic (computing the products,
the shift, and the accumulation of the summands) can be done in
the time the processor needs to read the data. Since any
computation of the dot product has to read the data no other
method can be faster. Long interval arithmetic and all its
applications fully benefit from this high speed.
I am absolutely convinced that as soon as the details are fully
understood hardware manufacturers shall provide the exact dot product in
hardware. This will not just be a great step ahead for interval
arithmetic but also for scientific computing on the whole.
I very strongly recommend voting Yes for Motion 9.
Ulrich Kulisch