Hi,
dan wrote:
> 
> Actually, Java is supposed to have bitwise compatibility accross platforms (unlike
> C).  I know they (Sun) had severe performance problems in the early days
> implementing Sun's floating point model under the Intel architecture, and that
> changes were made to the VM as a result.  Is this one of the consequences of these
> changes?  Are there ways to ensure bitwise compatibility?

No, the problem with the JVM spec was that the float values should
always
conform to the IEEE float(32bit)/double(64bit) spec. x86 internally
always
calculates with extended precision (80bit), so for a correct
implementation on x86 the VM had to store the 80bit value after _each_
calculation from the FPU to memory (and round it to 64bit), then load it
back. This is very slow.

The changes made to the spec more or less say that now the VM can
calculate with higher precision, and only convert down to double when
needed (fpstrict).

This has nothing to do with your problem. Your problem simply shows,
that
some numbers can't be correctly stored in float/double/whatever format.
This is a conceptual problem with floating point numbers, and for some
calculations it's a big problem.

-- 
        Bye
         Georg Acher, [EMAIL PROTECTED]         
         http://www.in.tum.de/~acher/
          "Oh no, not again !" The bowl of petunias


----------------------------------------------------------------------
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]

Reply via email to