On 2009-Sep-13 07:19:24 -0700, Barney Cordoba <barney_cord...@yahoo.com> wrote: >64bits must be faster than 32bits is patently misguided. My rule of >thumb is that if I don't need 64bits for something, I avoid it.
It's not quite that cut-and-dry. The 64-bit ISA is significantly different to the 32-bit ISA and has different subroutine calling conventions. Yes, you do need to lug 64-bit pointers around but the overall codesize is comparable (looking at /usr/bin and /lib suggests about a 5% increase in size going from i386 to amd64) - a lot of this is probably because amd64 has a 16-bit offset mode so there's much less need for 32-bit offsets. Having twice as many registers is a win in some areas (less spilling to memory) and a loss in others (more state to save/restore on a context switch). If performance is critical, it's probably worthwhile benchmarking both i386 and amd64 variants and seeing which works best for you. -- Peter Jeremy
pgpMmwiAepFmo.pgp
Description: PGP signature