I have a machine at home running windows64. In comparison to the 32-bit OS, the 64-bit was noticeably faster.
Illusion. Placebo effect works with computers, too. You think it’s faster, so it is.
So I'm going on the same assumption for our linux servers. Or am I missing something?
The same assumption applies to both Windows and Linux…you’re just assuming the wrong direction. 64 bit Windows is slower than 32 bit Windows, just like 64 bit Linux is slower than 32 bit Linux. It’s not a big difference, of course. But it is measurably slower. About 4%-20%, depending on the operation, according to the only benchmark numbers I could find in two minutes of Googling. RSA encryption was 12% slower, while gzipping was 20% slower–both computationally intense…simple web service would show less difference, but complex web applications might not, since PHP and Perl and Ruby and such have very high function/object overheard, relatively speaking, with lots of memory work being done.
Basically, it comes from the fact that 64 bit executables are bigger, and have to move more data around (where "data" may be just pointers to other parts of the program–they are now dealing with a 64 bit address space, and so have to be larger).
Depending on how addressing is handled in the system the memory size at which performance begins to favor the 64 bit system may differe. Windows seemingly does it differently than Linux, for example, and the cutoff seems to be 3GB rather than 4GB, though I’m by no means an expert on Windows and memory management, and it could just be specific to some types of work on Windows (I found an MSDN article that talked about this very topic and it mentioned a 3GB allocation limit for 32 bit apps).
You mentioned 4gig+ ram, is that the only thing?
As far as I know. I can’t think of any other reason a 64 bit system could be more useful or faster than a 32 bit system. 32 bit systems already have fast math processing units that can deal with larger numbers, so big math isn’t a benefit of 64 bit (unless the math is being done on data sets bigger than fits in memory on a 32 bit system). Certainly for web service and such, there is no benefit…unless you have more than 4GB of RAM, and have a system that will usefully fill that space.
Note also that a 64 bit processor, by virtue of being a much newer design than a 32 bit processor at the same clock speed, will still be much faster. But, you don’t have to run a 64 bit OS on it to get that performance boost…and running the 32 bit OS on it will go even faster, generally speaking.
And coming back to your Windows example…perhaps you’ve noticed that Windows gets slower over time, as random crud finds its way into the notification bar, and the startup process, etc. A fresh installation of 64 bit Windows is probably going to “feel” a lot faster than the old installation of 32 bit Windows on the same hardware. I don’t know a whole lot about Windows, but I’ve certainly noticed this “aging” property of Windows installations. But, when it comes to raw numbers, and doing actual think work, if all other things are equal and RAM is less than 4GB (or 3GB), 32 bit builds will be faster than 64 bit builds.