floating point precision
Kahan's "paranoia" is an interesting program that determines
epsilon,
as well as a host of other parameters, and makes a judgement on the
quality of the machine's fp design and implementation. [It thoroughly
pans Crays!]
It's available from netlib. Send mail to
netlib -8 at 8- ornl.gov
Subject: send index from paranoia
to get an overview of paranoia and directions on how to get various
language versions of the program.
You have to be careful in determining epsilon with a simple program.
The Intel coprocessors, for example, work in 80 bit extended format,
so depending on your compiler, you may get an epsilon of 2 ** (-52)
if values get stored to memory, or 2 ** (-63) if they do not! The
latter value isn't going to be achieved in most real programs.
I think for all IEEE fp, appropriate values are 2 ** (-23) for single
2 ** (-52) for double
--
David J. Heisterberg djh -8 at 8- ccl.net We are NOT all
The Ohio Supercomputer Center djh -8 at 8- ohstpy.bitnet Keynesians now.
Columbus, Ohio 43212 ohstpy::djh