ARM refers to a processor architecture that has become ubiquitous in mobile devices, including cell phones and tablets. Interestingly ARM is actually a British company that itself doesn’t actually manufacture any chips, but instead licenses its technology and architecture to chip manufacturers. One of the earliest uses of ARM chips was in the Apple Newton tablet, and now ARM architectures power both the iPhone and iPad in addition to approximately 95% of cell phones in the market. Because ARM processors were designed for mobile devices, the architecture primarily focused on optimizing for power consumption and size.
ARM chips in particular offer dramatically lower power consumption than x86 chip architectures used in most PCs and servers today. Given the fact that power can represent upwards of 50% of the cost of a typical data center, it’s not surprising that someone eventually got around to asking a simple question. Instead of using servers based on high-powered, energy intensive x86 processors, why not connect and network a larger array of cheaper ARM processors that overall consume far less power?
And so the ARM-based server was born. A new generation of servers is emerging that essentially replace a handful of x86 chips with tens or hundreds of what are essentially ARM cell phone chips combined with a dense networking fabric. Chipmakers that offer ARM-based processors include startups like Calxeda and incumbents like AMD (which acquired SeaMicro), Texas Instruments, Applied Micro and others. These chipmakers are aggressively pursuing large enterprise hardware incumbents such as Dell, HP and others who are launching their own ARM-based server lines. For its part, Intel is sticking to its x86 architecture and competing with ARM through its Atom line of processors.
As it turns out not only do ARM-based server architectures offer the potential for dramatic improvements in efficiency for the traditional datacenter, ARM architectures are actually also a good fit for cloud computing. Why?
- Scale-out workloads – ARM architectures are particularly well-suited for parallel processing jobs that require a large number of compute nodes that aren’t necessarily powerful by themselves. In other words, ARM is a good match for elastic ‘scale-out’ workloads like large scale data analytics, webscale apps, web search and social networking
- Power consumption and cost – scale-out workloads that require analysis of large volumes of data can also use up a lot of energy. Using a large number of smaller cores is expected to be far more energy-efficient that using fewer large cores.
Net net ARM-based servers offer tremendous potential to reshape the data center and to more efficiently deliver compute intensive cloud services. The improvement in cost efficiency will have profound implications for enterprises and cloud service providers alike. As we often are in cloud, we’re again brought back to Jevon’s paradox, which would suggest that dramatically reducing the cost of large scale cloud-based analytics will increase their usage. Where and how will large scale data analytics can be applied if the cost is dramatically reduced? Who knows, but the possibilities will be close to endless.
So What’s the Catch?
While the ARM architecture offers incredible potential, it’s still early days and several big challenges exist. First off, the current generation of ARM chips aren’t quite yet ready for prime time in the enterprise data center. So far ARM architectures have only supported 32-bit instruction sets, which creates a problem in the enterprise. Most server operating software and enterprise-class applications are based on 64-bit architectures, which won’t work on current ARM chips and platforms. Recognizing this big issue, Calxeda, Applied Micro and AMD have all announced plans to release 64-bit versions in late 2013 or early 2014.
Even when a 64-bit ARM chips are available, many enterprise applications will need to be rewritten or recompiled for the ARM architecture. Microsoft is already working on a 64-bit version of Windows for ARM, and Facebook, HP, AMD, Samsung and others recently launched the the Linaro Enteprise Group to accelerate software development on the ARM architecture. No one has also yet built a commercial cloud using ARM processors. While last July Rackspace, HP, Canonical and other OpenStack members announced their intent to develop an ARM-based cloud, the only thing available today is an OpenStack Essex on ARM sandbox available today via TryStack.
It also remains to be seen if ARM servers will support niche workloads in the data center, or if they will become a true replacement for x86 architectures. Will ARM will be a no-brainer for webscale applications and data analysis, the value proposition for more common enterprise workloads and generic cloud services remains to be seen.
The final challenge will be the nature of data center buyers themselves, who tend to be very conservative, fickle and risk averse by nature. They will need to get comfortable not only with the ARM technologies and vendors, but also with the potential need to have multiple architectures to support in their data centers.
2014 will likely be the year that things get interesting with ARM, the enterprise and cloud. Despite the issues and challenges, it will likely be worth the wait.