Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.lang.java.programmer > #7776

Re: higher precision doubles

Date 2011-09-10 21:38 -0400
From Arne Vajhøj <arne@vajhoej.dk>
Newsgroups comp.lang.java.programmer
Subject Re: higher precision doubles
References (1 earlier) <cOqdnfXfM99lhaDTnZ2dnUVZ_vednZ2d@earthlink.com> <j1qdrt$30a$1@speranza.aioe.org> <j1rio5$ucd$1@dont-email.me> <4e41ef89$0$306$14726298@news.sunsite.dk> <j1ssit$nc0$1@dont-email.me>
Message-ID <4e6c1123$0$310$14726298@news.sunsite.dk> (permalink)
Organization SunSITE.dk - Supporting Open source

Show all headers | View raw


On 8/9/2011 11:06 PM, Joshua Cranmer wrote:
> On 8/9/2011 9:40 PM, Arne Vajhøj wrote:
>> On 8/9/2011 11:11 AM, Joshua Cranmer wrote:
>>> On 8/8/2011 11:42 PM,
>>> supercalifragilisticexpialadiamaticonormalizeringelimatisticantations
>>> wrote:
>>>> How does that interact with JIT, though? On x86, the simplest way for
>>>> JIT to make non-strictfp code use the FPU would be to just load the
>>>> initial values into the (80-bit-wide!) registers and perform FADDs,
>>>> FMULs, etc. on them. As long as the computation stayed in registers the
>>>> higher precision then ought to remain in effect -- for JITted code.
>>>> Adding extra code to mask off 16 of the register bits (or the mantissa
>>>> subset of the extra bits) after every FP op would slow things down. Is
>>>> the JLS interpreted to require the JIT do this (for non-strictfp code)?
>>>> And, if not, what does the HotSpot JIT do in actuality?
>>>
>>> All modern x86 processors sport the SSE-style instructions, which can do
>>> 32-bit and 64-bit instructions (also in a SIMD format) without touching
>>> the FPU, and I suspect that these are slightly faster than using the x87
>>> FPU instructions. I wouldn't be surprised if the JIT emitted SSE in the
>>> vast majority of cases, so that JIT'd non-strictfp code would end up
>>> returning the same results as JIT'd strictfp code.
>>
>> Is that possible in 32 bit mode?
>>
>> Practically all CPU's today are 64 bit capable, but many still run
>> 32 bit desktop OS'es.
>
> I don't recall x86's mode-switching semantics off the top of my head,
> but I do believe that it is possible to run 64-bit instructions in
> 32-bit mode.

I find that hard to believe. 64 bit instructions should be expecting
64 bit virtual addresses.

Arne

Back to comp.lang.java.programmer | Previous | Next | Find similar


Thread

Re: higher precision doubles Arne Vajhøj <arne@vajhoej.dk> - 2011-09-10 21:38 -0400

csiph-web