64-bit Desktop vs. 64-bit Server

When people find out I'm a big fan of AMD's Athlon 64 -- specifically the dual core X2 chips -- they often ask how I'm enjoying 64-bit Windows. They're always surprised to hear that I have no interest in a 64-bit OS on the desktop. I'm glad someone is laying the foundation for the next 10 years of computing. But as Tom's hardware points out, there's little to gain from running a 64-bit version of Windows XP on the desktop today:


This is a companion discussion topic for the original blog entry at: http://www.codinghorror.com/blog/2005/11/64-bit-desktop-vs-64-bit-server.html

I think this also highlights the differences between the single-threaded desktop world, compared to the multi-user, multi-threaded land of servers.

Not really; the biggest benefits on the server really have to do with the massive increase in memory space. If all you need is better threading for a few apps, dual or quad core works fine. You have no need for x64 to realize that benefit.

Actually it depends on what you do with your desktop.

Perhaps for users who spend a lot of time in a single app that benefits unusually from being 64-bit… like AutoCad or something.

However, someone has to be the early adopter

Having an official OS release from Microsoft is enough to get the ball rolling. It’s a good thing; I just think it’s a very narrow niche of users right now (on the desktop).

From the “fourth largest …” link:

“Anything that ends in *.Mirosoft.com we run”.

So they run a domain squatter website. So what? :slight_smile:

I think this also highlights the differences between the single-threaded desktop world, compared to the multi-user, multi-threaded land of servers.

Actually it depends on what you do with your desktop. If you spend all day:

  • compiling .Net apps
  • stitching photos together
  • using any app that requires more ram than x86-32 supports
    …then you may want to give x64 a whirl. The driver issues are pretty sucky though, I’ll definitely agree with you there.

Having run into a problem with a XP-64 DVD-RW driver that repeatedly disappeared and reappeared, I can attest to the fact that 64-bit Windows is not ready for prime time. However, someone has to be the early adopter, otherwise it may never be ready. However, they need to be aware that they are taking that risk, and from what I’ve seen, most of those who have picked up XP-64 aren’t.

The real problem is that a system that is still essentially beta quality has gone to production long before either the software or the market are ready for it. But then, that’s the industry best practice, isn’t it? roll eyes

As for the server version being more stable and efficient, that isn’t so surprising; servers are the main customer for the 64-bit software to date, and thus the server related software issues get addressed much sooner. Also, servers tend to be better maintained than desktop systems (especially in regards to security), generally do not run the sort of software that leads to stability problems, and usually has more stable and robust hardware (particularly when compared to the other sort of high-performance system, the ‘game box’, where stability is often sacrificed for raw performance); you don’t often have the problems with oddball hardware which is haphazardly implemented. A well-designed and well-managed server will be and must be more stable than the equivalent desktop system.

Surely though Tom’s didn’t really have a lot of native x64 desktop apps to try out (there is, for example, no x64 Photoshop, no x64 Word, etc.) that would benefit from the extra CPU registers (eight more GPR, SSE registers: means more scratch space for code generators) on x64 processors.

In fact, yes, reading over the article benchmarks now, it seems all of their tests worked with mostly 32-bit apps running under XP64. Personally I’d give more weight to SiSoft Sandra 2004’s Multimedia benchmark: once the encoders and apps are compiled for x64 I think you’ll see a speedup along the lines of those experienced there.

X64 Windows in the desktop is great…I do not see where the negative reviews have come from … All I do is play games on x64 and I love it. In particular I play BF2. I will leave other criticism to the experts…I doubt they are much experienced than me in using x64 windows…many people do not even give this OS a chance…just because of the bad reviews. That has to stop…use the OS…just dual boot…that is the best solution…The only problem I have is my printer only works with 32bit Windows. If you have the money for X2 you might as well have a 32 bit PC for 32 bit apps still in use right next to your current X2 one like I do. In my case it is a 32 bit processor… An Athlon XP-M I could double as an HTPC and still get regular use out of it.

x64 on a desktop is great…

It can run all 32bit applications 99% as fast but it also can do stuff like compile programs in Visual Studios 2005 faster and with many programs that have great boosts in 64 (ie 7-Zip a compression program) there is a lot of benifit.


http://blogs.adobe.com/scottbyer/2006/12/64_bitswhen.html

These days, many 32-bit processors already have math instructions for doing 64-bit fixed point math to the degree most applications need it, and many things are done in floating point. Combine the performance penalty for the data structure size increase with the lack of any sort of other performance win, and the number of situations in which an application being 64-bit are a performance win is very small.

… on the desktop, that is. Still a huge win on the server, but the desktop is a harder nut to crack.

Well, there are a couple of issues I think. If you are running 64 bit aren’t you effectively halfing your memory since 64 bit takes twice as much memory for every pointer and integer? So 4 megs is really more like 2 megs in 32 bit, isn’t it? So what are you doing starting with a 16 gig memory compliment?

I agree with the server assessment though. Obviously Microsoft is pushing that pretty hard with some of the new versions of the server applications making their appearance only in 64 bit versions. My concern though is compatibility for 32 bit applications. For example, I have some older 32 bit ISAPI extensions and while some of our customers are running them in 32 bit compatibility mode, there are some odds and ends that don’t work quite right…

Luckily with .NET this is not a problem though and I’m working on moving to IIS 7 pipeline integration to replace the ISAPI stuff but it’ll take some time.

But all the integers are still 32 bits wide. Just the pointers get 64 bit.

Jeff, I see your point. The funny thing is that I run a 64-bit OS but, due of lack of drivers, I need to activate the 32-bit emulation. It is disappointing! I hope that the number of 64-bit drivers and 64-bit programs will grow soon.

I have been running a 64 bit on the desktop for quite a while. At first it was daunting, firefox didn’t work, video card didn’t work. But since ~ June of 06, all of my problems have disappeared. The only reason I use windows is for games and I get much better game performance in Win xp-64. Plus it boots about 4x as fast. I would highly recommned going 64 bit on the desktop.

“That’s just a small part of the performance story”?

That is the only story on the page that was linked. There is more memory to leak so IIS app recycling just eased out. So the benefit IMHO is restricted to IIS alone?

I ran performance tests on the same hardware with vista x86 and vista x64… I used PerformanceTest V6.1… not greatly scientific, but the results showed the disk and over all performance on x64 were about 15-19% better than x86… so where i can, i stick with x64, so far no issues with drivers either.

I suspect your view point on this has changed drammatically in the last couple of years. Altrhough performance may not change much the necessity for more RAM than 2GB has become a very real problem. Any PC bought today with Vista should get 4GB of RAM, which on a 32 bit OS would all go to waste. Developers especially need lots of RAM and should normally have double what a normal high end PC comes with.

64bit was never about performance, it was always about having more RAM. Sure they added some instructions and registers, but they did this purely to give relatively minor performance boosts to 64bit programs while they were making the changes.

64bit was never about performance, it was always about having more RAM. Sure they added some instructions and registers, but they did this purely to give relatively minor performance boosts to 64bit programs while they were making the changes.

Quite the contrary, Yet Another X86 Architecture Extension gave them an opportunity to do several things at once: talk to more RAM via a larger address space, AND add a few instructions, as well as some registers (because original x86 has very few, and both Intel AMD have known that this is a huge performance issue for years)

Hi. I would like to know what happens if I use a desktop and I decide to buy a processor designed for servers, like an INTEL Quad-Core XEON E5440. Can that be possible?

Jeff, I’m curious if your view of 64bit OS for the desktop has changed any recently? jess