[J3] (SC22WG5.6130) Follow up on dot product request

Van Snyder Van.Snyder at jpl.nasa.gov
Tue Jul 30 16:10:53 EDT 2019


>From Ulrich Kulisch, concerning a correctly-rounded dot product:


        Primarily, we should react as mathematicians and not as IEEE 754
        enthusiasts. The 4,266 bits solely are a consequence of the IEEE
        754 standard. Do we really need an exponent range of 308? The
        old /370 architecture provided an exponent range of about 75 and
        most problems (I would say 98 %) could conveniently be solved
        within this exponent range. For this exponent range the long
        accumulator shrinks to about 1,100 bits.
        
        So if we provide an accumulator of this size about 98% of the
        cases would run on fast hardware. If overflow occurs, the
        calculation could be repeated with a software algorithm.
        
        "The importance of the EDP [Exact Dot Product] for high speed
        verified computing has not been well understood by the
        scientific computing community for quite some time. So I mention
        it here briefly. A guaranteed solution of a system of linear
        equations can be obtained in two steps. The first step computes
        an approximate solution by some kind of Gaussian elimination in
        conventional floating-point arithmetic. The second step, the
        verification step, then computes a highly accurate guaranteed
        enclosure of the solution. By an early estimate of Rump [6], the
        verification step can be done with less than 6 times the number
        of elementary floating-point operations needed for computing an
        approximation in the first step. The verification step just
        consists of dot products. Hardware implementations of the EDP at
        Karlsruhe in 1993 [3, 4] and at Berkeley in 2013 [5] show that
        it can be computed in about one-sixth of the time needed for
        computing a possibly wrong result in conventional floating-point
        arithmetic. So, the EDP reduces the time needed for the
        verification step to about the time needed for computing an
        approximate solution by Gaussian elimination. This is a
        tremendous gain in computing speed. In other words, a verified
        solution of a system of linear equations can be computed in
        about twice the time needed for computing an approximate
        solution by some kind of Gaussian elimination." 


Of course, refinement of the solution of a linear system is not the only
application of a dot product.  There are numerous other problems wherein
a poorly-conditioned dot product leads to incurrect results.

A poorly-conditioned dot product is just a special case of a
poorly-conditioned sum.  So 19-184 should be amended to request a
correctly rounded SUM as well.


-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://mailman.j3-fortran.org/pipermail/j3/attachments/20190730/b87bcdf2/attachment.html>


More information about the J3 mailing list