MathGroup Archive 2010

[Date Index] [Thread Index] [Author Index]

Search the Archive

Re: Mathematica 8: first impressions

  • To: mathgroup at smc.vnet.net
  • Subject: [mg114080] Re: Mathematica 8: first impressions
  • From: Daniel Lichtblau <danl at wolfram.com>
  • Date: Tue, 23 Nov 2010 05:57:50 -0500 (EST)

blamm64 wrote:
> On Nov 20, 6:25 pm, Joseph Gwinn <joegw... at comcast.net> wrote:
>> In article <ic8ag0$83... at smc.vnet.net>, blamm64 <blam... at charter.net>
>> wrote:
>>
>>> First Impressions:
>> ....
>>
>>> 2) 64-bit has been around long enough to be pretty well received:  In
>>> Mathematica 8.0 $MachinePrecision is still 15.9.... on my Intel,
>>> Windows XP x64 machine (2x 4-core Intel Xeon X5570, nVidia Quadro FX
>>> 4800, 24 GB RAM) .  Yeah, sure, Wolfram a good while back implemented
>>> Mathematica to use 64 bit addressable memory (which really helps since
>>> it's such a RAM hog), but still not to have implemented using 64-bit
>>> available 'precision' is very disappointing ... .  Yeah, Mathematica
>>> uses double precision 32 bit to get 15.9... machine "precision", but
>>> by now I think Mathematica, if installed on a 64-bit system, should
>>> have $MachinePrecision of 31.8.... , or something close to that on a
>>> 64-bit system.
>> Umm, 15.9 decimal digits *is* double precision floating point, which is
>> what is meant by a machine real.
>>
>> An IEEE single (32-bit) float has a 24-bit mantissa (including the
>> hidden bit), so its machine precision is Log[10,2^24]= 7.22 decimal
>> digits.
>>
>> An IEEE double (64-bit) float (called a double in C/C++) has a 53-bit
>> mantissa (including the hidden bit), so its Log[10,2^53]= 15.95 decimal
>> digits.
>>  [...]
>> Joe Gwinn
>>
>> Ref:  <http://en.wikipedia.org/wiki/IEEE_754-2008>
> 
> Umm, 15.9 digits is double precision (64 bit) in *32* bit.  Umm,
> double precision in *64* (128 bit) bit is quad precision in 32 bit.

That's not really the case. You might be thinking that integer and real 
sizes are equated, but they are not. The IEEE standard makes clear that 
binary32 is single precision, binary64 double, binary128 quad. Caverat: 
standards change, and I do not claim to have seen the most recent one.

Daniel Lichtblau
Wolfram Research




  • Prev by Date: Re: Finding shared element in two lists
  • Next by Date: Re: Sizing opening window in Mathematica 8
  • Previous by thread: Re: Mathematica 8: first impressions
  • Next by thread: Re: Mathematica 8: first impressions