On Sun, 2009-12-13 at 13:53 -0500, Tom Lane wrote:
Paul Jakma <paul(a)dishone.st> writes:
> On Wed, 18 Nov 2009, Roland McGrath wrote:
>> x86 is unlike other architectures because 64-bit also has twice as
>> many registers as 32-bit. So you get to trade off the benefits of
>> register allocation across more registers against the memory/cache
>> footprint of 64-bit pointers.
> For what percentage of code is that an appreciable advantage?
Pretty much everything, actually. The x86 ISA completely sucks.
Indeed. Paul, take a look at the Intel 64 ISA and you'll see it's a very
different beast. Intel fixed a lot of the issues with the (more than 20
year old really x86 ISA) and it's not simply a doubling of memory
footprint because variable width instructions are used in the first
place, and continue to be used in the newer ISA upgrade.
Personally, I think anyone running i386 on x86_64 who isn't doing some
kind of testing under KVM or similar is completely wasting their
computing resources and should receive a free copy of the Intel
documentation for the holidays ;)
Jon.