On 2008-Aug-08 14:36:42 +0200, Oliver Fromme <[EMAIL PROTECTED]> wrote: >For example, in amd64 mode there are twice as many CPU >registers available, enabling better optimizations for >the C compiler. Furthermore those registers are twice >as long, which means that 64bit quantities can be handled >with single processor instructions.
OTOH, this means roughly 4 times as much processor state to save and restore on a context switch. It also means that longs and pointers are 64-bits instead of 32-bits, which makes executables larger (if you compare executables and libraries on disk between FreeBSD/i386 and FreeBSD/amd64, the latter are 10-15% larger). The VSZ of amd64 executables _appears_ significantly larger due to a bug in binutils and our rtld but this space is never referenced. >That doesn't necessarily mean that code will always run >faster in amd64 mode. There have been reports of certain >edge cases. But in general, amd64 code is faster. As always, the best benchmark is your own application mix. >Bottom line: Install FreeBSD/amd64, unless you have >_specific_ reasons to stay with i386. Keep in mind that, for most things, FreeBSD/amd64 can happily run 32-bit Linux and FreeBSD/i386 executables (though there's no easy way to build FreeBSD/i386 executables on FreeBSD/amd64). This does not extend to KLDs so 3rd-party 32-bit KLDs (eg the nVIDIA graphics driver). -- Peter Jeremy Please excuse any delays as the result of my ISP's inability to implement an MTA that is either RFC2821-compliant or matches their claimed behaviour.
pgpCU0aTvVdWo.pgp
Description: PGP signature