64 Bit: It's When, Not If

Harold raised the question, Clive riffed on it, and now I'm going back to the original question with this:

At the moment, is it even possible to buy a performance chip that isn't 64-bit capable?

Any AMD Athlon64 or Opteron is AMD64-capable; Intel Xeons have been for a while, and EM64T is moving into their desktop offerings too, with notebook variants on the horizon.

So the question isn't about whether or not to buy a 64 bit chip - chances are you will be buying an x64-capable chip anyway when you next purchase one* - the question is really about when to actually throw the switch and move to a 64 bit OS.

For most consumers, that's probably not just yet. I think it's important to acknowledge that, because bluntly, it's not like we're going to be selling a copy of X64 to my parents, and right now, we shouldn't be trying - while it's not a whole new architecture (unlike, say, Itanium), there are still 32 new and previously unseen bits, Drivers Will Need To Be Recompiled, Recompilation Takes Time And Is Not Always Feasible, and as a result, Not Every Driver Is Available In An X64 Version At The Moment.

The ability of users to exceed the capacity of the 32 bit architecture isn't yet widespread outside of niche environments, but we're not too far off that time: games regularly run best with at least a gig of memory (and let's face it, games are the real driver of the leading edge of consumer adoption, right?), and more is usually better. We're not yet at the tipping point of the old 640K mark - where all the band-aids had been applied, but the patient was still very much at death's door - and that lessens the impetus for the consumer space.

So IMHO, right now, the cost/benefit doesn't typically work for consumers. Yes, I run Windows X64 Edition at home, but I don't have any super-concrete reasons for doing so that require bits 33-64 to be present (at least that I'm aware of at the moment). There are a few games taking advantage of the AMD64 extensions, but that's about it for now, for me.

Servers, on the other hand, can already eat all the memory we throw at them, and don't typically have the handicap of having to run, say, my Dad's aging scanner, so for high-performance large-memory workloads, moving to 64-bit is a no-brainer, especially if you can do so on hardware you've already purchased.

On x64, being able to run a 32-bit Large Address Aware process with a full 4GB of user address space is often a compelling enough benefit on its own, but using a 64-bit native image lets you use... um, well, it's a really, really big number, something like eight thousand gigabytes, if you can jam that much in your machine.

And multiuser scaling on Terminal Server - yes, for 32 bit applications - is from all indications Where It's At on X64 at the moment. In the Terminal Server space, we've been constrained for a number of years by the 32-bit architecture (and whether to enable PAE, and whether we end up constrained by System PTEs or Paged Pool or NonPaged Pool, and so on), and the increased kernel headroom buys increased scalability. Nice.

So there's my $0.02 x 2.

--

* - Intel's processor chart seems to show gaps in the EM64T capable lineup, but it's hard to read on a single screen, and I've given up. Anyway, the point is, likelihood of a given chip being 64-bit capable increases as time goes on.

** (don't bother looking for a **, there wasn't one in the body) And I plan on going X2 as soon as the prices drop to something a little more palatable. Like, 300-400 bucks palatable, for something that "doubles" my 3500+.