Re: Another relevant consideration Re: Motion P1788/M0009.01_ExactDotProduct
> Date: Sat, 31 Oct 2009 17:56:04 -0500
> From: Ralph Baker Kearfott <rbk@xxxxxxxxxxxx>
> To: Arnold Neumaier <Arnold.Neumaier@xxxxxxxxxxxx>
> CC: James Demmel <demmel@xxxxxxxxxxxxxxx>,
> Michael Schulte <schulte@xxxxxxxxxxxxx>,
> "'stds-1788@xxxxxxxx'" <stds-1788@xxxxxxxx>
> Subject: Another relevant consideration Re: Motion P1788/M0009.01_ExactDotProduct
>
> P-1788,
>
> I've been trying to decide how to vote on this issue, and
> am wrestling with the following consideration: If we demand
> the exact dot product as stated in the motion, we will obtain
> reproducibility. However, this will be at the expense of having
> an efficient software implementation. We have efficient software
> implementations (e.g. Rump et al) of faithfully rounded dot products, which
> would be standard-conforming, and would to my knowledge satisfy
> the needs of applications requiring an accurate dot product, if we
> loosened the requirement, but I don't know if we can word the
> standard to both allow these and for the results to be bit-wise
> reproducible.
>
> This is just some food for thought, or for refutation.
>
> Baker
>
Baker,
I cannot refute this.
But perhaps I can offer some small mitigation for exact
reproducibility (down to the last bit) in the form of
an interpretation of the decorations motion currently
under consideration.
One of the attributes mentioned is 'tight' meaning that
the interval computed was computed to the correct last
bit under the proper rounding.
(I believe the name of this attribute might need to be
changed to 'loose' for reasons I outlined in my previous
note. But this argument will hold either way.)
So we could admit a dot product computed under any of
the recent, fast, & very clever methods IF they returned
the attribute 'possibly not tight' when their form of
faithful rounding is unable to prove that correct
rounding holds.
If such an algorithm CAN prove that it will correctly
round even under faithful rounding (the typical case)
then it can return 'is tight'. As can any dot product
that is exact all the time.
The difference for reproducibility will be 1 ULP at
most & the fact that it was due to a faithful rather
than an exact dot product will be signaled by the
'possibly not tight' attribute.
Not perfect reproducibility but not bad.
And, perhaps good enough that provable algorithms can
still be written.
Is that a reasonable compromise?
Yours,
Dan