Boost logo

Boost :

From: k.hagan_at_[hidden]
Date: 2001-04-25 04:57:24


Peter Schmitteckert said he still hadn't found the interval
library files, so here's a URL.

http://groups.yahoo.com/group/boost/files/interval/

To address some of the concerns about performance...

 1 Peter gave a URL to some information about the XSC hardware.
   Looking more mainstream, Intel's P4 & IA-64 chips can dispatch
   two FP ops at once. With such support, the basic "FLOP rate"
   need only be 2-4 times less than with plain "double". The major
   performance hit is probably lost optimisation opportunities.
   If compilers understood intervals, they could probably interleave
   the extra computations amongst the rest of the program and
   eliminate the overhead from all but the most FP-intense code.

 2 The use of better algorithms can, as usual, make much more
   difference. The interval version of Newton's algorithm has
   the interesting property of being infallible! It always finds
   all the roots, has linear convergence when far from a root
   and quadratic convergence close to a root. Please compare this
   to a conventional algorithm which misses roots, or bounces into
   never-never land and takes years to crawl back.

 3 Jens' library peforms three "rounding mode switches" per op,
   but if we store [lower,-upper] instead of [lower,upper] then
   we can reduce this to two. That should pretty much double
   the performance of the library on x86 at least. Better, the
   P4 has extra transistors which make it cost-free to alternate
   between just two rounding modes. That should be even better
   news for anyone with this chip. (I don't know if AMD intend
   to follow suit with their next offering.)

Sorry about being processor specific, but I want to show what
*can* be done once a class interface has been established, and
I don't know about other processors in anything like the same
detail.

Sun already has substantial support for intervals, as may be seen
at http://www.sun.com/forte/cplusplus/interval/index.html.
(I wonder if they are interested in donating their interface
design to boost?)

A more general home page for the interval community is
at http://www.lsi.upc.es/~robert/mirror/interval-comp/main.html


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk