top of page

Explained: The New Era of Macs

Updated: Aug 17, 2021

By Struan Caughey

Apple is moving from Intel x86 processors to M1 ARM processors. Photo by David Monje on Unsplash (2020).


The end of 2020 led to the introduction of Apple's next generation hardware, all powered by their in-house M1 processors [1]. They announced the chip on November 10th, and one week later it

could be purchased with their Macbook Pro, Air and their Mac Mini computers [2]. This change was not just to an in-house processor, but to a new architecture altogether — ARM or Advanced RISC Machines. The last time Apple went through a similar architecture change was in 2006 [3] when they shifted from PowerPC chips which they helped develop into Intel’s x86 design. They made this change as at the time Intel and therefore x86 appeared to have the strongest roadmap ahead which, considering the partnership lasted 15 years, appears to have been a good decision. When we look to other areas of the industry, we can see a similar shift towards ARM. The current holder of the world's most powerful supercomputer goes to Fugaku, which is based in Japan. It is the first computer to hold this title which also runs on the ARM architecture [4]. On the other end of the processing power scale we have phones. Almost all mobile computer chips are ARM-based, while currently, nearly all Windows PCs are x86 [5]. To introduce the concept of these architectures, we have to work from first principles.


Computers and Processors


A computer is an electronic device designed to store and manipulate data, usually through a system of 1’s and 0’s: binary. They range from what most people think of when they hear about a computer — a laptop or desktop — but also phones, smart light bulbs, cars, and even vending machines either are or contain a computer. The powerhouse of these computers which processes data is called the processor. The processor is a chip made up of billions of the simplest logical units: transistors [6]. Processors come in a range of forms, each of which is optimised for its specific tasks. In places like the aforementioned Fugaku supercomputer, this is maximising computational power while maintaining some level of efficiency to manage costs. For high-end home PCs and high-performance servers, the weighting is towards power at all costs. Vending machines, light bulbs, and other small items are purely about whatever is cheapest. Lastly, for phones, and to a similar extent laptops, the decision is all to do with power efficiency and what will draw the least charge from the battery. These can be optimised in many ways, such as processor size. The smaller the transistors, the denser the processor, which can make it more powerful and more efficient. In contrast, processors with larger transistors are much cheaper to produce. While there are many ways that processors differ to each other, in this article we will be looking at architecture.


Architecture


Architecture is the design of the processor. It represents how data is processed within the chip, and because of this, it also changes how data is sent and received. There are many types of architecture, each with its own benefits and drawbacks; however, they generally come in one of two designs, RISC and CISC. RISC stands for Risk Instruction Set Computer and CISC, Complex Instruction Set Computer. We will break this down word by word.


First, you have "reduced" versus "complex" — the one letter that differs between both acronyms. This is in reference to the type of instructions the architecture can handle. RISC will only process simplified or reduced instructions, whereas CISC can handle more specialised and complex tasks. Next, we have instruction. This can be anything from ADD to STORE or PROD. Essentially, they are directions for what the computer is to do at that moment. Each instruction will trigger a specific sequence to be carried out, such as storing a piece of data or adding two numbers. Next, we have “set”, which states that there isn’t just a single instruction but that these reduced or complex instructions come in a set. Below I have illustrated the different approach these two systems use to combat the multiplication of two numbers [7].


CISC:

MULT loc1, loc2


This takes the number stored in location 1, multiplies it with location 2 and saves the result in location 1. This all happens in one line.


RISC:

LOAD register1, loc1

LOAD register2, loc2

PROD register1, register2

STORE loc1, register1


This does the same thing as before; however, it has been reduced to the most fundamental instructions. The data can only be processed from the registers and not from their locations, meaning you have to do extra steps to store your values in the processors’ registers. Registers are small storage areas which are on the processor itself making them super quick to access but have very limited capacity. From this, it may seem that CISC is significantly better only having one step. It appears to be simpler to implement as well as not having to use the register space. This isn’t correct, however, as the MULT instruction incorporates all the LOAD and STORE functions within it. This brings out the main difference. CISC can have one instruction take multiple clock cycles, whereas RISC will only ever take one. However, there are genuine benefits to CISC’s method. The lower number of instructions require less memory to store, which makes CISC less RAM intensive. Also, the computer's compiler, the system which converts high-level human-written code into the computer language above, has to put in more work to entirely reduce the instructions with RISC, again using more resources.


CISC must be better then… right?


It’s complicated. While the above comments are true, they also pose some issues. The complex instructions require more complex hardware and more specialised circuitry within the chip to operate. This may make the processor better at these specific tasks; however, that makes much of the processor unable to be used for more general tasks, as sections are reserved for these additional instructions. Due to RISCs much fewer base instructions, the circuitry can be designed to have far more general-purpose circuitry, which can be better optimised, resulting in smaller and more efficient processors. The simpler circuits can also be made in higher density meaning the same sized processor can be more powerful. RISC essentially relies on software to do much of what CISC does in hardware.


x86 vs ARM


This brings us back to x86 vs ARM, where we can see how this all ties in. x86 was developed way back in 1978 by Intel [8]. This was based on CISC, and while it has undergone iterations, it is essentially the same as it was over 40 years ago. Intel owns x86, and currently, only AMD and Intel hold licences to produce 64 bit desktop processors with the x86 architecture [9]. 64 bit refers to the amount of data a processor can handle in one cycle, almost all modern home computers are 64bit however older ones may still be on 32 bit. ARM processors, on the other hand, utilised the RISC design and their current generation was released in October 2011 [10]. ARM is owned by itself, and it does not construct its own chips, instead licencing them out to many different chip manufacturers. Due to ARM’s more straightforward design and greater efficiency, they are increasingly becoming more dominant within the smartphone market due to phones' reliance on batteries. A similar trend is happening with smaller, cheaper devices such as wifi modems and similar low powered devices. The openness of their licencing method also helps, since many more companies are able to produce these chips, thus generating more competition which should lead to better value chips with better features being developed.



A close up of a silicon wafer. Photo by Laura Ockel on Unsplash (2018).


Apple's Approach


Apple has decided to pivot away from intel and x86 altogether, now producing their M1 chips in-house, which all operate off the ARM implementation. Because of this shift, Apple has had to completely redesign many of its programs and its operating system as a whole. Not only this, but all programs made for macOS now will have to be adapted to this new architecture which relies on third-party developers to restructure their programs entirely. There is a system called Rosetta 2 which can emulate x86 applications on M1 chips, and while this works surprisingly well, it cannot work as well as a natively designed program. It is a temporary solution [11]. For these reasons, Apple's move to M1 is a massive change, much more than a standard CPU upgrade. This also explains why Apple is going for a full hard swap instead of a gradual shift or running on both systems simultaneously. For as long as developers support the older x86 platform, they will have to be developing two apps simultaneously. Because of this, Apple, as well as third-party app developers, will inevitably move away from legacy support making the x86 apple programs eventually redundant and we do not know how long this will be [12].


Microsoft's Approach


Apple's move to ARM has led to cheaper laptops that have improved battery life and greater performance [13], which begs the question: why haven’t Windows gone down the same route? The answer is that Apple has complete control over their entire system from hardware to software, and the third-party developers have to follow their lead. On the other hand, Microsoft only is in charge of the operating system, while other companies are in charge of the hardware side of things. This means that there is far more pressure on Microsoft to maintain their current version of Windows. Interestingly a version of windows was made for ARM back in 2012 called Windows RT [14], but the lack of software leads to a chicken and the egg problem. Poor software support meant not many manufacturers produced computers for Windows RT, again leading to software developers having little market and therefore little incentive to program for this version. This has resulted in a version that is clunky and has significant compatibility issues. Emulation is working to resolve these issues [15], but this has proved a complex cycle to break without the control Apple holds.


Another point that makes it difficult for Windows to shift across is backwards compatibility. Many features are still supported back from MS DOS in the 1980s. For instance, the fact that a folder cannot be named ‘CON’ as it was reserved back then, to ensure compatibility, is still there now [16]. While Apple has often opted for a fresh start in each OS iteration, Microsoft has maintained these features, so shifting entirely across to ARM would require them to change this policy or rewrite much of these into the updated edition.


Future


With the constant improvements and attention, ARM is getting along with the fact that unification between different platforms such as tablets, phones, and computers could reduce programming redundancy if they shared systems. Coupled with better emulation to improve compatibility, we may see in the future Windows and their hardware partners follow Apple's lead into ARM. Google looks to be pursuing a new OS called Fuchsia which will potentially unify their Android OS and Chrome OS together [17]. Chrome OS runs on both x86 and ARM natively [18]; however, if they shift all of their chips onto one architecture with one OS, this may not be required. Lastly, these are not the only two architectures. x86 is the industry standard and has been for a long time, whereas ARM is the new kid on the scene; however, you also have other options such as RISC-V, which is entirely open-source and does not have licencing [19]. NVIDIA was looking at making their future GPU’s* on this system [20], but this may be in question now as they are trying to acquire ARM. This is also RISC based like ARM but currently doesn’t have the same industry backing.


*A GPU or graphical processing unit is much like a CPU except it excels at running many less intensive processes at the same time, making it ideal for graphics and games.


Conclusion


Over this article, we have outlined why ARM versus x86 has become a recent discussion with the new Mac M1 chip being introduced. This further expanded by outlining the difference between these two architectures, ARM being RISC and x86 CISC. Next, we broke down the difference between the two design methods, how they work, and the benefits of both of them. This was expanded to talk about the history, differences and licencing methods of x86 and ARM. Furthering this discussion, we looked at Apple’s vs Microsoft's business models and how that has affected their relationships with their architecture. We then had a brief look into the future of computer architecture and a potential third option. This should give the reader a bit more insight into what the change in new Macs mean and why it was such a large decision for them to pursue.


To draw a conclusion from this we can see that Apple assessed the large short-term cost of changing architecture against the longer term benefits of this swap. ARM’s inherent greater efficiency, more lenient licensing and cheaper construction were too good to resist which lead Apple to end their 15 year partnership with intel. The question is, now, not if, but when Microsoft will follow suit.



References


[1] Apple. "Apple Event November 10, 2020", https://www.apple.com/apple-events/november-2020/.


[2] Hanson, Matt. “Apple MacBook Air (M1, 2020) review”, April 2020,https://www.techradar.com/nz/reviews/apple-macbook-air-m12020.


[3] Apple. “Apple to Use Intel Microprocessors Beginning in 2006”, 06/06/2005, https://www.apple.com/newsroom/2005/06/06Apple-to-Use-Intel-Microprocessors-Beginning-in-2006/.


[4] TOP 500. "TOP500 EXPANDS EXAFLOPS CAPACITY AMIDST LOW TURNOVER" November 2020, https://www.top500.org/lists/top500/2020/11/press-release/.


[5] Bajarin, Tim. ARM Aims to Take a Bite Out of Intel's PC Market Share, 27/07/2018

https://au.pcmag.com/processors/58283/arm-aims-to-take-a-bite-out-of-intels-pc-market-share.


[6] Apple. “Apple unleashes M1”, 10/11/2021, https://www.apple.com/nz/newsroom/2020/11/apple-unleashes-m1/.


[7] Stanford University. "RISC Architecture: RISC vs CISC", accessed 26/05/2021, https://cs.stanford.edu/people/eroberts/courses/soco/projects/risc/risccisc/.


[8] Intel. “Intel’s First 16-bit Microprocessor”, accessed 26/05/2021, https://www.intel.com/content/www/us/en/history/virtual-vault/articles/the-intel-8086.html.


[9] Tang, Greg. “Intel and the x86 Architecture: A Legal Perspective”, 04/01/2011, https://jolt.law.harvard.edu/digest/intel-and-the-x86-architecture-a-legal-perspective.


[10] ARM. “ARM Discloses Technical Details Of The Next Version Of The ARM Architecture”, 27/10/2011, https://web.archive.org/web/20190101024118/https://www.arm.com/about/newsroom/arm-discloses-technical-details-of-the-next-version-of-the-arm-architecture.php.


[11] Apple. “If you need to install Rosetta on your Mac”, 15/01/2021, https://support.apple.com/en-nz/HT211861.


[12] Mah Ung, Gordon. “Why Apple's move from Intel to ARM means we should stop buying Macs”, 10/11/2020, https://www.pcworld.com/article/3563892/why-apples-move-from-intel-to-arm-means-we-should-stop-buying-macs.html.


[13] Apple. “Apple M1 Chip - Apple (AM)”, Accessed 26/05/2021, https://www.apple.com/am/mac/m1/.


[14] Bisson, Simon. "CES: Windows to run on ARM chips, says Microsoft", 06/01/2011, https://www.zdnet.com/article/ces-windows-to-run-on-arm-chips-says-microsoft/.


[15] Pulapaka, Hari. "Introducing x64 emulation in preview for Windows 10 on ARM PCs to the Windows Insider Program" 10/12/2020, https://blogs.windows.com/windows-insider/2020/12/10/introducing-x64-emulation-in-preview-for-windows-10-on-arm-pcs-to-the-windows-insider-program/.


[16] Tiwari, Aditya. "Windows Doesn’t Allow You To Create Folder Named ‘CON’, PRN, NUL, etc. Here Is How You Can Still Create It", 20/02/2017, https://fossbytes.com/windows-reserved-folder-con-create/.


[17] Priday, Richard. "Google's Fuchsia could replace Android and unite all devices", 07/04/2018, https://www.wired.co.uk/article/google-fuchsia-chrome-os-android-demo.


[18] Hildenbrand, Jerry. "Should I buy an x86 or ARM-powered Chromebook?", 20/06/2019, https://www.androidcentral.com/should-i-buy-x86-or-arm-powered-chromebook.


[19] RISC-V. "RISC-V: About", Accessed 26/05/2021, https://riscv.org/about/.


[20] Hashim, Shakeel. "The Nvidia-Arm deal hasn't boosted RISC-V. But it soon could." 2509/2021, https://www.protocol.com/risc-v-chips-arm-nvidia.

コメント


bottom of page