F 15. 64 bit versus 32 bit.

Bill Davidsen davidsen at tmr.com
Wed May 25 11:58:54 UTC 2011


Chris Adams wrote:
> Once upon a time, Fernando Cassia<fcassia at gmail.com>  said:
>> Well guess what? 64 bit code is bigger (bigger pointers) and thus
>> slower, because CPU cache is less effective, with bigger code.
>
> All other things being equal, that might be true.  However, all other
> things are NOT equal; pointer size is not the only different between
> i686 and x86_64.  The biggest gain is that x86_64 has a much larger
> register set, so a lot of things don't have to hit RAM at all (and are
> much faster).
>
Unfortunately that biggest gain only occurs if the program logic is such that 
registers run out often. So the gain only happens in a small number of possible 
cases, where the compiler would otherwise get a value from L1 cache.

At the moment the slight (for most people) performance gain vs. the increased 
hassle finding applications seems to favor case by case decisions. Neither is 
such a major benefit to indicate everyone should make the same choice.

-- 
Bill Davidsen <davidsen at tmr.com>
   "We have more to fear from the bungling of the incompetent than from
the machinations of the wicked."  - from Slashdot



More information about the users mailing list