[cfarm-users] cfarm26 FP inaccuracies
Jacob Bachmeyer
jcb62281 at gmail.com
Sun Aug 30 02:29:40 CEST 2026
On 8/26/26 08:22, Martin Guy via cfarm-users wrote:
> [...]
>
> and the paranoia.c stringent IEEE floating point test reports one flaw:
>
> Checking rounding on multiply, divide and add/subtract.
> * is neither chopped nor correctly rounded.
> / is neither chopped nor correctly rounded.
> Addition/Subtraction neither rounds nor chops.
> Sticky bit used incorrectly or not at all.
> FLAW: lack(s) of guard digits or failure(s) to correctly round or chop
>
> On a machine where the test succeeds, paranoia.c reports no flaws.
To make this even weirder, cfarm26 and cfarm27 are different VMs on the
same physical box, yet they give different results from paranoia.c.
Paranoia's page 4 (when run on cfarm26) mentions:
Some subexpressions appear to be calculated extra
precisely with about 11 extra B-digits, i.e.
roughly 3.31133 extra significant decimals.
That feature is not tested further by this program.
Another bit of weirdness is that `gcc -Wall -lm paranoia.c -o paranoia`
works on cfarm27 (and my local machines), but not on cfarm26, where I
ended up using `gcc -Wall -lm -L/usr/lib/i386-linux-gnu paranoia.c -lm
-o paranoia` to get it to link.
Perhaps there is something weird about Debian's libm on cfarm26? Or the
compiler defaults are different?
Are long doubles being used internally somewhere doubles are expected to
be used throughout? Paranoia's indication of about 11 extra bits would
be consistent with the x87 80-bit format vs. standard 64-bit double...
-- Jacob
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.tetaneutral.net/pipermail/cfarm-users/attachments/20260829/dc0c00c6/attachment.htm>
More information about the cfarm-users
mailing list