Hi Ödön, On Fri, 30 Jan 2004, Odon Farkas wrote:
- Use for the moment a 32-bit OS unless you really need 64 bits for
I wouldn't give such advice at all. Run benchmarks and then decide. If you recompile the stuff the 64bit version should win in most cases.
development or your application. In some integer performance sensitive applications the 64-bit version might run much faster but my experience with floating point extensive applications (like Gaussian - quantum chemistry) shows the opposite for now, however, in theory the floating point part should be able to reach the same speed than on 32-bit when the compilers learn how to do it ;-)
Hmm, I would be interested in some example code showing such behaviour. Because on AMD64 (in 64bit mode) we have twice as many registers and use SSE2 by default. This means that in theory (and mostly in practice too) floating point on AMD64 should outperform anything on 32bit quite a bit. This has nothing to do with 64bit or not, but rather with the much better instruction set available in 64bit mode. One usual problem with loops (in C(++)) is the use of 'int' loop indices if they are used also as array indices because of the necessary sign extension. This can be helped by either using 'unsigned int' or 'long' indices. Ciao, Michael.