Microsoft Azure has just introduced Ampere ARM processors, following similar introductions by Amazon Web Services, Alibaba, and the Oracle clouds. Why are cloud providers flocking to the ARM architecture and what does it mean for us as IT decision makers?
Until recently, the cloud was powered chiefly by AMD and Intel processors. When you came to deploy an application, you had to be sure it was compatible with the processors running in the cloud - which wasn’t really an issue - considering that your development and build pipeline was probably running on an x86 or AMD64 architecture already.
It’s not as if ARM processors are particularly new kids on the block – Apple have been using them since the 1st Generation iPhone, and many other manufacturers long before that (in fact, my first computer was an Acorn Archimedes which had an ARM processor and a lilliputian 512KB of RAM, far smaller than the size of this entire web page!).
But for Intel and AMD, it was if ARM-based systems appeared overnight and ate their lunch. NVIDIA, spotting an opportunity to move even further into the incumbent’s lucrative data centre market, are in the process of purchasing ARM for US$40 billion. Not chump change.
But what does all of this mean for us as IT decision makers? ARM systems have a superpower… They’re extremely power efficient.
The hunt for all day battery life
In the mobile computing market, battery life is a key consideration. It’s often one of the key things you think about when deciding on a new mobile phone or laptop. As we’ve seen with Apple’s recent ARM-based MacBook and Mac Studio releases however, low power requirements don’t always mean poor performance. In fact, social media has been awash with customers in disbelief, compiling applications while on battery power - gasp!
Another place power is at a premium, albeit at a slightly different scale, is in your friendly neighbourhood hyperscale data centre, the sort that cloud providers like AWS have a few of. If you can deliver useful cloud computing with less power consumption, you can improve the sustainability of your operation and drive the cost down for your services.
In 2018, Amazon Web Services launched their Graviton line of ARM-based servers, opening up their “a1” line of EC2 instances. For most applications written in scripting languages like Python and Node.js, and some .NET Core applications, no changes are required. For compiled applications, such as those written in C++ or Rust, a bit more is required to configure toolchains and get binaries for the ARM architecture.
The Sixth Pillar
The IPCC (Intergovernmental Panel on Climate Change) has released some sobering research on the scale of the challenge we all face to keep global heating below the 1.5C threshold for catastrophic climate breakdown. We must rapidly decarbonise all aspects of our lives, including the software and hardware that runs our enterprise applications, as quickly as possible.
As architects, we are quite rightly being challenged to understand the impact of our applications and infrastructure on the environment and choosing the most efficient infrastructure to run our apps is a quick way to score points in this regard. Indeed, the AWS Well-Architected Framework has introduced a sixth pillar, Sustainability. The pillar challenges architects to consider the underlying infrastructure that powers your application, and the carbon emissions that your systems are responsible for.
ARM-based processors give architects, engineers, and decision makers a quick and easy way to reduce their impact as well as reduce costs. Sounds like a win-win to me!