For a second example, we used the IPP solver to find
the self-intersection points of the offset curve of a planar degree
six Bézier curve originally investigated by Maekawa and Patrikalakis
[254].
For a tight tolerance of
both methods correctly find
two pairs of roots for each of the two self-intersection points (see
Fig. 11.11 (a)). However, as shown in Table
4.7 the hardware rounding method was 25.8% faster than
the software
method.
We have compared two methods for performing robust rounded interval
arithmetic. The intervals produced by the software
method are
slightly larger, as this method performs the rounding conservatively,
extending the upper and lower bounds by
during every arithmetic
operation.
The hardware rounding method only extends the bounds when
the result of the operation cannot be exactly represented.
Root | Software rounding |
1.0 |
![]() |
0.95 |
![]() |
0.9 |
![]() |
0.85 |
![]() |
0.8 |
![]() |
0.75 |
![]() |
0.7 |
![]() |
0.65 |
![]() |
0.6 |
![]() |
0.55 |
![]() |
0.5 |
![]() |
0.45 |
![]() |
0.4 |
![]() |
0.35 |
![]() |
0.3 |
![]() |
0.25 |
![]() |
0.2 |
![]() |
0.15 |
![]() |
0.1 |
![]() |
0.05 |
![]() |
CPU | 25.3 |
Root | Hardware rounding |
1.0 |
![]() |
0.95 |
![]() |
0.9 |
![]() |
0.85 |
![]() |
0.8 |
![]() |
0.75 |
![]() |
0.7 |
![]() |
0.65 |
![]() |
0.6 |
![]() |
0.55 |
![]() |
0.5 |
![]() |
0.45 |
![]() |
0.4 |
![]() |
0.35 |
![]() |
0.3 |
![]() |
0.25 |
![]() |
0.2 |
![]() |
0.15 |
![]() |
0.1 |
![]() |
0.05 |
![]() |
CPU | 24.7 |
The differences in the running times of the two methods reflect the
relative times required to compute the
versus setting the
hardware rounding mode flag.
In our experiments performed on an SGI
Indy workstation the hardware rounding method is consistently faster
than the
method, with problem-specific performance increases
between 2 and 25%. Other researchers have found that hardware
rounding is approximately 15% slower than the
method on a Power
Macintosh [311]. Thus, it appears that the computational
efficiency of the two methods is dependent on the host system
architecture.
Method | CPU | Roots |
Software | 168.0 | 12 |
Hardware | 124.6 | 12 |