In June, Apple announced its intent to transition the Mac from Intel to its own custom silicon, known as Apple Silicon, based on the ARM architecture. This transition will establish a common architecture across all Apple products (e.g. iPhone, iPad, Apple Watch, Mac), which should streamline hardware and software development, enabling new customer experiences.
This is not the first time Apple has completed a transition of this type, most recently, the 2005 switch from PowerPC to Intel. I remember this transition well, as I was mid-way through university and reliant on my trusty Apple PowerBook G4 (part of the PowerPC 74xx family). At the time, PowerBook users had been eagerly awaiting the release of the PowerBook G5, only to discover that the range would be replaced by the MacBook, running an Intel Core Duo processor.
Although the PowerPC to Intel transition can be used as a reference point, the market dynamics were very different.
Intel was the dominant player in microprocessors and x86 had established itself as the default instruction set architecture. As a result, the switch to Intel and x86 was a safe bet, aligning with the industry direction and retaining the existing value chain, with a third-party (Intel) being leveraged to design and build silicon for the Mac.
Apple handled the transition reasonably well, primarily thanks to the higher-performance Intel processors and an emulation layer called Rosseta, which allowed legacy PowerPC applications to run on Intel hardware. As with any emulation-layer, the use of Rosseta resulted in a performance penalty, which was a little painful, especially with applications such as Microsoft Office 2004, which long outstayed its welcome. In 2011, Apple removed Rosetta from the operating system, marking the end of the PowerPC to Intel transition.
The transition to custom Apple Silicon is a little different. For example, Apple Silicon is not a known quality on the Mac and although ARM-based architecture is well established for low powered devices (mobiles, tablets, watches), it has not been tested at scale for general-purpose computing (laptops, desktops). Therefore, it will be interesting to see how it competes against x86 across different workloads.
This is also the first time that the Mac will be vertically integrated, positioning Apple as a direct competitor to industry giants such as Intel and AMD.
The words “game changer” are overused in technology, however, I believe the shift to Apple Silicon and an ARM-based architecture has the potential to disrupt the entire personal computing industry.
If Apple succeeds and achieves better performance and power efficiency, delivered in a smaller form-factor at a lower cost, the Mac would have a tremendous advantage over the competition (e.g. Windows PC).
Similar to the launch of the original iPhone, competing products (e.g. HP, Lenovo, Dell) would immediately feel obsolete. Worse still, the markets ability to respond would be slow, recognising the heavy reliance on third-parties (Microsoft, Intel, AMD) to unlock innovation. This has been a major challenge over recent years (one of the reasons Apple has decided to transition), recognising that Intel has consistently failed to meet its performance expectations.
With that said, if Apple fails to deliver better performance and power efficiency or inadvertently alienates developers, they have potentially isolated the Mac, reaffirming its market position as a niche product.
As a reference point, Sony attempted a similar transition with the PlayStation 3, with the decision to design and build a custom processor, known as Cell, based on the PowerPC architecture. Unfortunately, developers did not embrace the change, which put the entire brand (and Sony as a company) at risk. Sony had to live with this decision for seven years, before switching back to the x86 architecture for the PlayStation 4 (and PlayStation 5).
In short, I believe the transition to Apple Silicon is the most ambitious change in the history of the Mac and a decisive moment in personal computing.
Therefore, I am excited to share my first observations of a Mac powered by Apple Silicon, specifically the Apple M1 System on a Chip (SoC).
In 2008, Apple announced the acquisition of Palo Alto Semiconductor (P.A. Semi), a fabless semiconductor company, as well as a stake in Imagination Technologies, designer of the PowerVR graphics processors.
This was the first public indication that Apple was becoming serious about custom silicon. Over the next decade, Apple demonstrated its growing competency, introducing custom silicon across its product portfolio (iPod, iPhone, iPad, AppleTV, Apple Watch). They also started to build unique processors and co-processors for the Mac (Apple T2 Chip) and AirPods (Apple W1 Chip), etc.
Most interestingly, Apple was not just competing, but regularly outperforming its competitors (e.g. Qualcomm), with phenomenal jumps in compute, graphics and machine learning performance. However, recognising these achievements were predominantly restricted to mobile and/or specialist devices, there was no consistent way to benchmark against Intel and AMD.
In recent years, this story has started to change, as smartphones, tablets and laptops have converged. The image below, put together by Anandtech, compares Apple vs. Intel regarding performance over time.
Ignoring the actual numbers, the rate of innovation (performance increase over time) is the real story, which is what has made Apple Silicon a viable alternative to x86 for personal computing. Assuming Apple can maintain this rate of innovation, PC manufactures should be very nervous.
This leads us to the first SoC designed specifically for the Mac, known as the Apple M1. A summary of the specification can be found below.
- Apple M1 System on a Chip (SoC)
- 5nm Process
- 16B Transistors
- 8-Core Central Processing Unit (4x High-Power, 4x Low-Power)
- 3.2GHz Max Clock Rate
- 12MB (High Power), 4MB (Low-Power) L2 Cache
- 8-Core Graphics Processing Unit
- 8GB or 16GB 4266 MT/s LPDDR4X SDRAM
- 16-Core Neural Engine
I do not plan to detail the specifics of the Apple M1 architecture, if you are interested, I would recommend reading the excellent analysis from Anandtech. However, I have included an annotated image of the SoC, which highlights the core components.
The key takeaway is that Apple has chosen to deliver a System on a Chip (SoC), which means all core components are embedded. This approach has many advantages (performance, power-efficiency and space), but removes any ability to upgrade individual components (e.g. Memory, etc.)
It is curious how much space Apple reserved for the 16-Core Neural Engine, a capability that is not commonly found on x86-based systems. I feel this highlights another area of innovation (secret sauce) that might only become evident over time.
Although the “paper specification” is interesting, it cannot be directly compared to traditional x86-based systems from Intel or AMD. For example, core count, clock speeds, memory capacity, memory speed are less relevant when comparing two different architectures, as they are fundamentally different, with unique strengths and weaknesses.
As demonstrated by the iPhone, we have also seen the advantage that comes from vertical integration (hardware and software). For example, the Apple iPhone 12 Pro has 6GB of Memory, compared to the Samsung Galaxy S20 Ultra, which has 16GB. However, the iPhone consistently outperforms its rivals, partly driven by the level of hardware/software optimisation.
In summary, although the architecture and specification of the Apple M1 are certainly intriguing, I am mostly interested in how they translate to real-world performance, power-efficiency and compatibility.
Apple MacBook Air
I purchased an Apple MacBook Air (Fourth Generation) for testing.
The full specification can be found below.
- Apple MacBook Air
- Apple M1 8‑Core CPU, 7‑Core GPU, 16‑Core Neural Engine
- 16GB Memory
- 256GB SSD
- 2x USB 4 (Thunderbolt Compatible)
- 13.3-inch P3 IPS Display (2560x1600, 400nits)
A few areas to note, the new MacBook Air, MacBook Pro 13 and Mac Mini all include the same Apple M1 SoC, however, the MacBook Pro 13 ad Mac Mini have a fan (likely producing better-sustained performance).
The MacBook Air I used for testing includes 16GB Memory, but a lower-binned SoC, with a 7-Core GPU (can be configured with 8-Core).
The total price for this specification was £1,199.00, which is comparable to the previous generation Intel MacBook Air.
Like the price, the design of the MacBook Air is essentially identical to the previous generation, with a slightly better display (P3 colour gamut) and support for USB 4, which is compatible with Thunderbolt.
Overall, The MacBook Air is a great passively cooled (no fans) notebook, that targets mainstream consumers.
Unsurprisingly, following the launch of the Apple M1, thousands of reviews have hit the Internet, many of which focus on the traditional suite of synthetic benchmarks.
If you are interested in the benchmark results, I would advise referencing the following publications:
I did validate some of the benchmark results, compared against my 16-inch MacBook Pro, which includes an 8-Core Intel i9-9980HK processor and (where appropriate) my old 12-inch MacBook (2017), which includes a passively cooled Intel Core i7-7Y75 processor. The first image highlights the Geekbench CPU score of my 16-inch MacBook Pro.
The image below highlights the same benchmark running natively on the MacBook Air.
As you can see, the M1 crushes the Intel i9-9980HK, which is already impressive, but especially considering it is passively cooled (no fan). Unsurprisingly, my old 12-inch MacBook was the worst performing by a wide margin, with a single-core score of 818 and a multi-core score of 1683. Although this is a great result for the M1, it should be noted that synthetic benchmarks only tell part of the story and Geekbench consistently favours Apple hardware.
As a result, I prefer to focus my testing on real-world performance across my common workloads, covering productivity, collaboration, development, photo editing, video editing, etc. The video below provides a narrated overview of my experience.
Overall, I am very impressed by the results, which is great news, considering the Apple launch event made big claims but failed to provide any specifics. The lack of specifics would usually be a cause for concern, but thankfully the real-world performance speaks for itself.
When compared against my 16-inch MacBook Pro (8-Core Intel i9-9980HK, 32GB Memory, AMD Radeon Pro 5500M), I am amazed by how well the passively cooled MacBook Air performs, especially under sustained load, which would usually result in thermal throttling and therefore a loss of performance. The M1 within the MacBook Air does appear to throttle, but far less aggressively than Intel processors and usually only after nine minutes of sustained load, which is more than acceptable for mainstream consumers.
I am also pleased to report that executing common tasks such as productivity and collaboration are very responsive, equivalent to my 16-inch MacBook Pro and certainly outperforming my old 12-inch MacBook which is also passively cooled. In certain scenarios, for example, wake from sleep, the MacBook Air is essentially instant, tangibly quicker than my 16-inch MacBook Pro, demonstrating the advantage of being vertically integrated.
My only frustration is not being able to run my developer workloads, which would have given me a much better indication of the performance. However, due to software limitations (covered under compatibility), applications such as Docker and Client-Side Virtualisation are not currently usable.
Unsurprisingly, the ARM architecture excels when it comes to power efficiency.
Recognising the current lock-down restrictions due to COVID-19, I have not needed to travel, therefore I am rarely away from a power source. However, in my testing at home, I would compare the MacBook Air with my iPad Pro, consistently achieving 10+ hours of use and up to 16 hours depending on the workload.
The MacBook Air achieves an average of up to 9 hours additional battery life than my old 12-inch MacBook and Razer Blade 15 Advanced, whilst up to 6 hours better than my 16-inch MacBook Pro. This is a phenomenal achievement, which makes me excited about the prospect of an Apple Silicon powered 16-inch MacBook Pro.
In summary, my usage of the MacBook Air has been similar to an iPad, only charging every few days vs. every night. This is even true when using applications that would usually drain battery life at an accelerated rate, such as Zoom video conferencing, etc.
As part of the transition to Apple Silicon, Apple introduced Rosetta 2, which like the PowerPC to Intel transition, aims to allow software designed for Intel processors to run on the Apple M1. The image below shows Activity Monitor, which includes a new “Architecture” column highlighting the status of each application.
With memories of Rosetta, this is where I was most sceptical. I was fairly confident Apple would nail the performance and power efficiency, but compatibility can be a real challenge. For example, Microsoft has attempted (multiple times) to deliver x86 compatibility on Windows for ARM but continues to fail miserably.
The table below highlights which of my commonly used applications are currently running native Apple Silicon on or via Rosetta 2. Where available, I have also added the timeline in which a native version is expected.
It is important to note that this story is evolving daily, as developers update their applications. To stay up to date with the latest information, I would recommend reviewing the website “Is Apple Silicon Ready”. One of the strengths of the Apple ecosystem is the speed in which developers accept and adapt to changes, which appears to be the case with the Apple M1.
The big test for me was Microsoft Office, which I use regularly, with large, complex files. I also remember how badly Microsoft Office 2004 ran on Rosetta during the transition to Intel, therefore I was nervous to go back to this position.
Thankfully, as highlighted in the video below from Created Labs, Microsoft Office works remarkably well via Rosetta 2.
The same can be said for all of my common applications running via Rosetta 2. I occasionally see some slow-down during start-up, but once running, everything appears to work as designed, delivering acceptable performance and battery life. As an example, I re-ran Geekbench on the MacBook Air under Rosetta 2, which achieved the following result.
The single-core score reduced by 26% and the multi-core score reduced by 21%. This is a very impressive result, considering the M1 is still competitive against the Intel i9-9980HK in my 16-inch MacBook Pro.
Although I cannot prove this to be true, I am guessing Apple has worked some “hardware” magic to achieve this outcome. I find it difficult to believe that software alone could deliver this level of performance through emulation. Assuming accurate, this would highlight one of the benefits of transitioning to custom silicon, something that would not have been possible when transitioning from PowerPC to Intel.
It is worth noting that Rosetta 2 cannot translate kernel extensions or applications that rely on client virtualisation. Developers must also be aware that Rosetta 2 cannot translate AVX, AVX2, and AVX512 vector instructions, therefore some applications will simply fail to start.
A good example is Docker, which relies on Go for Docker Desktop and client virtualisation to run Linux containers. I use Docker frequently as part of my developer workflow, therefore was unable to use the Apple MacBook Air for development at this time. Thankfully, Docker is actively working on a new version, as highlighted in their recent blog post.
I was pleasantly surprised that Terminal tools can be used under Rosetta 2, such as the popular Homebrew Package Manager. To achieve this outcome, the “arch” command must be used, which allows the user to specify the architecture of a universal binary.
For example, the following command installs Homebrew under x86_64 emulation.
arch -x86_64 /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/in...)"
Although functional, package compatibility can be inconsistent, therefore I hope to see native support soon. I would recommend keeping an eye on the Homebrew GitHub Issues Page for the latest updates.
Finally, client virtualisation, such as VMWare Fusion Player and Parallels Desktop are also unusable at this time. In macOS 11 Big Sur, Apple has provided access to a new virtualisation framework, which provides high-level APIs for creating and managing virtual machines. Therefore, I expect to see the availability of community projects soon, followed by the release of commercial applications from companies such as Parallels, etc.
Although some of these current restrictions impact my workflow, I do not expect them to affect mainstream consumers (those buying a MacBook Air). I assume by the time Apple release a true “Pro” Mac running Apple Silicon, these limitations will be resolved.
In short, with some known exceptions, Apple has nailed compatibility!
Apple tend to use the word “magic” to describe their products, ironically, Rosetta 2 feels like magic, but will likely be relegated to a footnote in the history of macOS. Therefore I commend the Rosetta 2 development team for their impressive implementation.
In my framing, I highlighted two possible outcomes regarding the transition to Apple Silicon.
The first described the impact if Apple were to succeed, by achieving better performance and power efficiency, delivered in a smaller form-factor at a lower cost.
Although it is still early days, my initial reaction is that Apple is on the right path!
In my experience, Apple Silicon is something special, delivering performance and power-efficiency that punches well above its weight, especially when you acknowledge that the MacBook Air I have been testing is passively cooled (no fans).
Thanks to Rosetta 2, Apple has also delivered a viable transition runway that makes selecting a Mac running Apple Silicon seamless for mainstream consumers. This achievement should not be underestimated, considering the past failures of Windows on ARM.
Assuming Apple can sustain the previously stated rate of innovation, as well as scale their silicon to “pro” devices, I am very excited by the future. The idea of an Apple M1x with more cores, more memory and higher clock rates is a tantalising proposition, something that I hope to see in early 2021 as part of the anticipated 16-inch MacBook Pro refresh.
As to where this leaves Intel/AMD and the x86 architecture, as a PC manufacture (e.g. HP, Dell, Lenovo), I would be very nervous. Although I do not anticipate any immediate impact, the mid/long-term success of these companies could rely upon their ability to partner, as well as remove existing barriers that have prevented innovation.
As a wild card, I will also be watching Nvidia very closely, who have demonstrated strong, sustained innovation across their graphics and AI technologies. With their recent announcement to acquire ARM, they potentially have all of the ingredients to rival Apple, especially if they form a close partnership with Microsoft and/or (finally) embrace Linux from a software perspective.
My only concern as a byproduct of Apple Silicon is that Apple becomes even more confident, further locking-down their ecosystem, making open hardware and software increasingly difficult to embrace. As a long-time PC enthusiast and open evangelist, this trend would be disappointing.
With that said, I cannot help but be inspired by Apple’s continued ambition and ability to execute! Many felt that the company would falter without Steve Jobs, however, I feel Apple may be on the verge of delivering another market-disrupting innovation!