In this space, I have several times opined that the x86 processor is seriously threatened by the rise of the increasingly popular low-power alternative, the ARM architecture. As most developers know, ARM is the reference design for most of the CPUs in tablets, phones, and other handheld devices. It works fast, sips energy, and it enjoy a large, mature ecosystem.
- Stop Malware, Stop Breaches? How to Add Values Through Malware Analysis
- Challenging Some of the Myths About Static Code Analysis
- High Performance Computing in Finance: Best Practices Revealed
- Architecting Private and Hybrid Cloud Solutions: Best Practices Revealed
Where ARM rules, x86 has made few inroads. The big push into this area was supposed to be Intel's Atom processor, which is a reduced-power x86 chip. Atoms appear in netbooks, small embeddable PCs, and other niches. But it's notably absent from the mainstream handheld market, despite numerous attempts to break into the phone space. There, ARM rules supreme. And now, ARM is beginning to make important pushes into new areas.
If we are indeed entering a "post-PC" era a point that is arguable principally in the short term the x86 processor might well find itself squeezed out of the client device space entirely and pushed into the server segment where its high I/O capacity and computational brawn are worth the cost of its energy consumption. The first sign that the post-PC client side might not be all x86 came late last year when Microsoft announced that Windows 8 would ship on both ARM and x86 platforms. The company delivered in part on that promise with the recently released Surface tablet, which runs Windows RT, the stripped-down, ARM-based version of Windows 8.
Currently, Windows RT runs only apps from the Microsoft store. It does not run Microsoft Office or other large client software. But I suspect, it's only a matter of time before that happens. Surely, open-source tools will step into the breach, if the demand is there and Microsoft drags its feet.
I think it's unlikely that ARM will replace x86 on laptops and desktops. Laptops are already energy-efficient enough that the additional savings delivered by ARM will not offset the cost of replacing the full complement of software. However, this dynamic changes rather substantially when we look at servers.
On the server, power consumption is often the largest single expense incurred by the data center. So moving servers to ARM is worth the associated software costs. This is where AMD, the long-time #2 vendor of x86 processors, is looking to make new inroads. It recently announced it would begin selling 64-bit ARM processors intended for use in servers. These processors will marry the ARM core to server technology that AMD had previously developed and acquired. The latter includes a fabric that it picked up when it bought SeaMicro earlier this year. The fabric, called Freedom Fabric, can carry both Ethernet and storage traffic and links different CPU architectures easily. The problem it addresses is that ARM processors are not nearly as good at I/O as their x86 counterparts. The fabric links the CPUs into a cluster and then links the cluster as a single entity to the network. It marshals traffic in and out, and by this means, servers can fill the network pipe with data.
ARM processors are ideal for situations in which the computation is not terribly intensive. Web servers, for example, are ideal candidates. So are many highly parallel tasks, which often consist of simple arithmetic performed over large numbers of data items. In these situations, the fabric helps move the data in and out quickly. Data centers, I expect, will soon start to segregate server farms by workload type and in such a design, 64-bit ARM-based clusters will have considerable appeal. As AMD argues effectively, until now, the x86 processor in the server was a "one size fits all" proposition. There was very little tiering based on processing need or power consumption. These new processors, if AMD can deliver what it promises, are sure to start the stratification of the server market.
For other kinds of server workloads, AMD seems well-placed. The company, of course, has its line of x86 processors, which is well regarded. And it also sells an APU, which adds the power of GPU processing to the x86 core. The GPU technology comes from its acquisition of ATI in 2006.
Ten years ago, AMD stole Intel's fire by bringing out the first 64-bit extensions to the x86 architecture. The company's lead in processor innovation was brief but spectacular. In this new, bold break from the x86 architecture, the company hopes to remake itself by intelligently leveraging the changes in the market. With the shift to ARM on the server, I think they're on to something. Now, all they have to do is deliver.