next up previous contents index
Next: 4.8.4 Hardware rounding for Up: 4.8 Rounded interval arithmetic Previous: 4.8.2 Extracting the exponent   Contents   Index

4.8.3 Comparison of two different unit-in-the-last-place implementations

The following table gives a comparison of the running times between Algorithms 4.1 and 4.2 for computing $ ulp$ . The timings (in CPU seconds) were taken on a 100 MHz RISC processor (SGI Indy with MIPS R4000 processor). The reported values are the accumulated CPU times to perform 100,000 calculations of the $ ulp$ of various representative values of $ X$ .


Table 4.3: CPU time (in seconds) for the two implementations (adapted from [4])

$ X$ $ ulp$ (approx.) Algorithm 4.1 Algorithm 4.2

$ -1.25 \;$
$ +2.22 \times 10^{-16}$ 0.10 0.03

$ -1.25 \times 10^{-100}$
$ +2.54 \times 10^{-116}$ 1.59 0.03

$ -1.25 \times 10^{-200}$
$ +1.45 \times 10^{-216}$ 3.11 0.03

$ -1.25 \times 10^{-285}$
$ +1.87 \times 10^{-301}$ 4.40 0.03

$ -1.25 \times 10^{-295}$
$ +2.17 \times 10^{-311}\; ^\dagger$ 6.68 0.05


$ ^\dagger \hspace*{-1em}$ This $ ulp$ is a denormalized number.

The time required by Algorithm 4.1 increases as the $ ulp$ becomes smaller, while the time required by Algorithm 4.2 is constant for normalized $ ulp$ 's and the time for denormalized $ ulp$ 's is also constant, but slower by a factor of $ 1\frac{2}{3}$ . In most of the applications in the context of shape interrogation, RIA implementations are an order of magnitude more expensive than non-robust floating point algorithms [4].


next up previous contents index
Next: 4.8.4 Hardware rounding for Up: 4.8 Rounded interval arithmetic Previous: 4.8.2 Extracting the exponent   Contents   Index
December 2009