Apple has finally announced the shipping of Arm-based Macs, including the MacBook Air and Mac Mini. In 5 years time, we can expect that Apple will offer no Intel-based products and have limited (if any) support for x86 applications. What does that say for the data centre?
It goes without saying that x86 dominates the data centre. The “modern mainframes” based on SPARC and Power architectures are a fraction of what they were in the 1990s and 2000s. The success of x86 is, in no small part, due to VMware and the rise of virtualisation, specifically ESXi and the vSphere ecosystem.
ESXi on Arm
In questioning the move to ESXi on Arm (this post from 2 years ago), I wondered if the move to an Arm architecture was intended to support IoT and edge applications. While that still may be the case, it’s clear that Arm is gaining increased popularity in the data centre. So, it could be that VMware was putting in place contingency plans, should the adoption of Arm take off rapidly. We’ll return to this topic in a moment.
Of course, over the past 12-18 months, the alternative direction taken by VMware and the cloud platforms has been to implement functional offload of networking, storage and security. Project Monterey starts a process that moves away from total dependency on x86 previously used to manage everything from encryption to erasure coding. With security big on everyone’s mind, the risk of processor execution pipeline vulnerabilities must also be a consideration.
If offload technologies are successful, then the dependency on x86 is seriously reduced (that might be a big “if” by the way).
Are we really approaching a time when Arm could be considered ready for mass-adoption in the data centre? If the numbers quoted by Apple are accurate, then a data-centre scaled M1 solution (or similar) could be entirely practical. What would we need to make it work?
- Code compatibility – equivalent and aligned version releases of both operating systems and major applications. This also needs to include development environments. Platform applications like databases need to be equally supported and efficient on both architectures.
- Hardware – having a processor is one thing, but we need server platforms like those being developed by Bamboo Systems. This also means having architectures and ecosystems to fully support the processor (think Optane for Arm).
- Management Tools – this requirement covers many areas, however tools like Spot can work to optimise the placement of applications on either x86 or Arm, based on performance and cost. With application portability via containers and Kubernetes, there’s less lock-in to consider.
The last point here is pretty important. Application (code) mobility is already here. We can build and automate application deployment on virtual instances/machines, containers and serverless functionality. As applications age and are re-written, this trend is only set to increase.
What about VMware and virtualisation? Desktop virtualisation appears to be “on the timeline” but VMware are clearly not ready to make any firm commitments. This could be due to the complexity of the task at hand and in judging the demand for x86 emulation on Arm.
Looking wider at VMware’s strategy, the pieces are coming together. Fusion provides the test-bed for emulation of x86 on Arm (and vice versa). ESXi on Arm provides the framework to support native Arm applications on data-centre capable hardware. Tanzu provides the capability to run containerised workloads on either x86 or Arm architectures. VMware also has the management frameworks to orchestrate applications across both platforms, so the company is well-positioned to benefit from the adoption of Arm in the data centre.
The Architect’s View
The last decade has seen an adoption of cloud technologies where the underlying architectures aren’t exposed to the customer. Not knowing what’s under covers isn’t a problem (although arguably, public cloud is still hardware focused. With service-based consumption, why should end users care about the mechanics of the physical architecture? As we become more comfortable with the idea of “just run my code”, then how this is done will be less relevant. The opportunities for Arm in the data centre have arguably never been greater.
One last thought. When Apple introduced NAND flash to the iPod in the 2000s, the demand for chips drove the price of solid-state storage down to a level where it became cost effective for the enterprise and we saw the all-flash market flourish. Could Apple’s move to all Arm be a boost for Arm in the data-centre that drives adoption in the same way as NAND?
Copyright (c) 2007-2020 – Post #074f – Brookend Ltd, first published on https://www.architecting.it/blog, do not reproduce without permission.