When is a PC not a PC?
That’s a trick question. To most of us, a PC means an Intel-based machine running some version of Microsoft’s Windows operating system. PCs run PC software, meaning the shrink-wrapped versions of Office, Photoshop, and so on. PCs are not Macs and they’re not Linux boxes, right?
But let’s say someone magically transformed the inside of your PC and replaced all the chips with a hamster in a wheel. And let’s say it’s a really well-trained hamster that can make your PC look and act exactly like before—just without the Intel processor. Would it still be a PC?
The classic Turing Test says that users aren’t supposed to be able to tell what’s inside a computer, or even that it is a computer. Like the Wizard of Oz, we’re to pay no attention to that man behind the curtain, or the hamster in the wheel. If it behaves like a PC then it must be a PC. For most of us, the acid test would be the ability to install and run other PC software, such as old games, CD-ROM drivers, new downloaded apps, and so on. If those programs run (or crash) the same way they do on a “real” PC, then it’s all good.
The purpose of this fun little thought experiment is to explore the possibility of another processor family (probably ARM) supplanting the venerable Intel x86 as the processor in next-generation PCs, servers, and laptops. ARM and its many massed minions would certainly like that to happen; Intel certainly would not. Which way would it go?
Theoretically, you could emulate an x86 processor on an ARM chip, or on any other processor. Somewhere in Computer Science 101 there’s a proof that says any computer can perform any function whatsoever as long as it has three instructions: logic-AND, logic-OR, and conditional branch. After that, it’s all gravy. Such an ultra-RISC design might not be fast, but it will work (in theory, at least).
So you could replace your x86 with an ARM chip and a whole lot of emulation software, but would you really want to? Apple did a similar thing when it replaced the original 68K processors with PowerPC, even though 68K and PowerPC have no technical features in common. Then Apple did it again, replacing PowerPC with x86. Both times, the software migration was pretty smooth. Most Mac programs ran on the new machines even though they were written for the old processor. So we have an existence proof or two that this can work.
The supposed benefit of an ARM-based PC is that it would be cheaper, more power-efficient, and available from multiple chip suppliers. I’m not certain any of that is true. It’s certainly true that most ARM-based processors are cheaper than Intel’s Core 2 Duo or AMD’s Athlon. Even the low-end Atom and Sempron chips are more expensive than your typical ARM silicon. But the x86 chips are faster, too. And an ARM-based PC would need a lot of memory for the emulation software, which costs money.
There’s no inherent cost overhead to Intel’s chips (or AMD’s) that forces them to be more expensive than everyone else’s. Intel charges more because it can. It’s got nothing to do with transistor counts or circuit complexity. That means that Intel can (and does) raise prices when it suits the company to do so. But it also means Intel could arbitrarily drop its prices if the company felt that was the strategic thing to do. The only trouble with that tactic is that it’s hard to raise prices again once you’ve lowered them, and it’s hard to justify charging $800 for one x86 chip when you’re asking only $35 for another. That’s why Atom processors aren’t called Core or Xeon, even though they’re technically similar. The point is, the price difference between Intel’s chips and ARM’s is entirely artificial, and Intel can close the gap with the wave of a pen.
But ARM’s power consumption is a lot better, right? Wouldn’t an ARM-based PC consume a lot less energy? Well… not really. The processor is just one energy-hogging component of a PC, and not always the biggest one, either. Disk drives, LCD backlights, video cards—these all consume a lot of power, and they’d all stay the same regardless of processor architecture. ARM chips are also built in less-aggressive silicon technology than Intel’s processors, so they’re slightly handicapped in the physics department. (If Intel does one thing really well, it’s to deploy leading-edge semiconductor technology.) All things being equal, an ARM processor will be more power-efficient than an x86 processor built with the same silicon technology… but all things are not equal. Intel is currently one or two generations ahead of anything ARM’s partners are making. That gap almost makes up for x86’s congenital complexity penalty. And Intel’s upcoming “Tri-Gate” silicon technology, of which you’ve no doubt heard, will close the gap further. So a magical power-sipping ARM-based PC is not a slam dunk. I’m not sure it would even make an appreciable difference. Just sayin’.
So that leaves supply. There are more than 100 different companies making ARM chips, versus two for PC-class x86 processors. So what? Do you really need 12 sources of supply for your PC components? There are only three or four companies making DRAMs for PCs and really only two making disk drives. Your graphics probably comes from either nVidia or AMD (formerly ATI). Has that supply chain restricted your choices, made PCs any less useful, or hurt performance? Not in any way that I can see.
Which brings us back to our original premise of a PC that’s still a PC, but with a different instruction set. Since it’s very doubtful that anyone ever bought a PC for its instruction set, it seems equally unlikely that changing the instruction set would make a difference. Would switching spark plug suppliers make Chevrolets more attractive? Except for the guys working at Champion, NGK, or Bosch, I doubt it very much matters. Likewise, an ARM-based PC would be exactly as useful as an x86-based PC, or a squirrel-based PC. No more, no less.
But what about servers? Ah, that’s a different matter, which we’ll tackle another week.