funsec mailing list archives

Re: Please no science on an Intel Mac


From: Valdis.Kletnieks () vt edu
Date: Thu, 20 Sep 2007 17:35:36 -0400

On Thu, 20 Sep 2007 16:49:47 EDT, rms () computerbytesman com said:
The same problem should exist on a regular PC running on a Core 2
processor with XP.  XP running natively on an Intel Mac really shouldn't
be any different than XP running on regular PC hardware.

This would, of course, require that the Intel Mac BIOS (or what passes for
one) initialize the system the same way a regular PC BIOS does, and/or that
XP guarantees the floating-point hardware is set to a specific known state
when a process is started, and/or that SPSS is careful to reset the state
itself because it doesn't trust the BIOS or operating system.

Phrased differently - there's lots of ways to screw up setting things like
rounding modes and the like.

Favorite bug I've seen - when I was still at my previous university, one of the
professors had a huge numerical simulation that he would test-run on our IBM
4341, and then run on the big 3090-600J's down at the Cornell Theory Center.
(Particularly ugly math - it was basically solving a multiple integral of a
multiply-discontinuous function, between endpoints which were *themselves* the
values of integrals of discontinuous functions).

He ran into one test case that would crash if run during the day, but would run
just fine if run overnight.  After a *LOT* of time on his part, and the
Theory Center's part, and IBM engineers part, they found it:

When run at night, his code would get onto the vector processors in the 3090
and get *lots* of iterations done between the relatively infrequent I/O
interrupts that would happen at night, so he was *effectively* getting about
132 bits of precision (128 for the official plus 4 for a guard digit in the
hardware).  However, during the day, interrupts happened a lot more because
people were logged on and editing and compiling and the like, and when the
operating system did save/restore of the vector registers, they only saved 128
bits.  And the function was numerically unstable enough that it needed 130 or
so bits....



Attachment: _bin
Description:

_______________________________________________
Fun and Misc security discussion for OT posts.
https://linuxbox.org/cgi-bin/mailman/listinfo/funsec
Note: funsec is a public and open mailing list.

Current thread: