"Paul" wrote: > I'm not saying that 32 bit is right for everyone, I am saying that for what > I do, it would give me a noticeable and measurable boost in speed. <snip> > Again, if I'm wrong, please explain to me how and/or why. I'm learning every > day, and I'll learn from anybody that can/will teach me.
I can try. :) In a 64-bit processor most of the pipelines, memory registers, connections to the bus and other circuitry would also be 64-bit. So it effectively takes as many clock cycles to do an operation using a 64-bit application as it does using a 32 bit application (if we could still measure things in clock cycles). If you have functionality that can use the full 64-bit, which would include floating point operations and file access, then you will get the speed improvement. Anyway, on a 64 bit processor it is quite likely that it runs a 32 bit application internally by padding the upper 32 bits with zeros - so you have a kind of 64 bit emulation. Even if you took two identical processors, but one with 32 bit pathways and one with 64 bit pathways, then it is most likely that they would both execute 32 bit code at the same speed. If you executed a 32 bit application and a 64 bit app on the same processor, then it is possible that the 64 bits would be slower because data must be fetched from memory 8 bytes at a time instead of 4 bytes at a time - but this is only a problem if the connection to memory is 32 bit. Since many cache controllers seem to prefetch more than this at a time, it becomes irrellevant. I think the issue is muddied because most of us remember the upgrade from 16 to 32 bit Intel processors. This gave a dramatic speed improvement because 64kb is not much space for any application. But 4Gb is more than most applications need, so the performance improvement of 64 bit from 32 bit is not anywhere near as good. To bring this on topic: I do find Debian on UltraSparc to be a little slow - although fast enough for my needs. This is because most applications are compiled for the lowest common denominator. The result is that some of the newer opcodes that could bring performance improvements are not being used. Which just goes to show that the 64 vs 32 bit issue is mostly a red herring. I can run a 64 bit kernel, but if SSH does not make use of the processors' advanced maths functionality, then it will still be slow. Look at it this way, a 700MHz Pentium III will whip a 1GHz UltraSparc III - if you are playing Quake, and the Pentium III has a fast new NVidia GeForce compared to the Sparc's 9600 baud serial console. Which is a very long winded way of saying: forget about 32 vs 64 bit. If you know you need 64 bit, good. If you already have 64-bit, then you will not lose anything by using it. And if you really want GLXGears to spin fast, consider a good graphics card instead. HTH, - Matthew

