This article is a companion piece to the Tech Made Fun Episode – TMF 020 – PCs Getting Arm’ed Up – Why You Should Care
What is ARM and how is it different from x86?
CPUs carry out tasks based on instructions. Every CPU architecture has a sort of a manual that lists how the CPU is to carry out a certain task. This so-called manual is known as an instruction set as it basically drives how the CPU would carry out its work.
The word ARM is commonly used to refer to a family of Instruction Set Architectures (ISA) licensed by a British company – ARM Holdings Plc (aka ARM Ltd). ARM is not a processor by itself but an architecture that could be used to make a processor. Now ARM (the company) helps companies like Apple, Samsung and others to design processors for their needs by licensing them the ARM instruction set. Such companies then go to the chip-makers to create a final processor Generally when the word ARM is thrown out it is used to mean a processor based on the ARM architecture
ARM and x86 are fundamentally different in three ways:
- Instruction set
- x86 based processors made by companies like Intel or AMD are based on CISC (Complex Instruction Set) while ARM as its original name (Advanced RISC Machines) implies uses RISC (Reduced Instruction Set). CISC is emphasized for complex workloads and is able to perform multiple complex operations per clock cycle while RISC is aimed for simpler workloads with singular operations in a clock cycle.
- Emphasis
- x86 has traditionally emphasized greater performance in high performance workloads, ARM emphasizes greater efficiency, tighter integration with significantly lower power consumption and thermals.
- Design
- Both x86 and ARM based processors differ in the way they access components like computer memory, CPU and NPU. x86 based processors traditionally have made use of buses to access memory and other components which introduces a delay in communication while ARM based processors typically use SOC (System on Chip) where components like memory, sound card, graphics card are incorporated on the same chip greatly improving latency at the cost of upgradeability.
Though traditionally x86 based chips haven’t been using the SOC design, recently we’re seeing a shift with Intel going for a SOC design chip for their upcoming arrow lake series.
Why is ARM important for mobile devices?
ARM’s success and importance in the mobile computing space is because ARM’s strengths rightly square off needs of the mobile market. ARM based processors are known for their compact form due to their SOC based design, significantly lower power consumption and lower thermal impact all of which are some of the biggest priorities for mobile phone manufacturers even at the cost of upgradeability.
Is ARM open-source?
Even though ARM as a company contributes to various open source projects, The ARM architecture itself is closed source and just like x86 it’s proprietary property of a single entity.
However, unlike Intel and AMD which restrict x86 licensing to just themselves through a mutual cross licensing agreement along with x86’s design and other aspects, ARM is more open to license its architecture to different chip-makers even allowing them to make changes for their specific needs and assisting them in chip design and other aspects too therefore making it a more accessible architecture for chip manufacturers than x86.
Is x86 on its way out?
The answer to this question depends upon the industry and timeframe,
For integrated devices focused on better battery life and performance per watt like general use laptops x86 appears to be seriously challenged by established players like Apple and new players like Qualcomm with their ARM based processors. The launch of Microsoft Co-pilot+ PCs has also fueled the competition.
For specialized use-cases like Gaming, Industrial applications, and high performance usage, x86 seems to be in a better position than the ARM-based processors for now but that is changing rapidly due to companies trying to implement ARM for specialized applications like servers and even supercomputers.
Though the lines of performance between ARM and x86 are blurring, it should be noted that x86 as things stand today is the dominant player in the computer market – be they PC, Desktop or Servers.
Though we see ARM doing great in the integrated computing space thanks in part to their SOC based design, x86 champions like Intel have also shifted to the SOC based design with memory, NPU and GPU on the same silicon in their upcoming chips. Newer players like Qualcomm have also entered with other players like Nvidia and AMD rumored to be working for an ARM based chip for personal computers.
Reasons for success of Apple’s M series chips
- Vertical Integration
- Apple’s greater control over the supply chain of their computer components from the CPU, GPU, NPU, memory, batteries, fans, motherboard has allowed them to make use of the ARM architecture for their computers like no other company. The same control is further leveraged by Apple for the software that is going to run on that hardware which allows them to purely optimize it for their devices.
- Developer Ecosystem
- With the announcement of M-series computers by Apple, the developers had no choice but to develop for these newer chips since Apple shifted completely from intel based chips and it was either do or die for developers who wanted their apps to run natively on Apple devices. When faced with this choice, Developers made a push for porting apps to the newer platform along with demand from the the greater public due to wide adoption and commercial success of Apple’s M series chips.
- Affordable Price
- Apple M series chips were able to provide significantly more compute for the price when compared to higher-end performance heavy chips from Intel or other manufacturers. This balance of performance per watt made them a more appealing option to many.
- Native Apps Compatibility
- After completely transitioning to ARM with limited native apps that would run on those devices at first, Apple provided Rosetta 2 – a robust translation layer to run x86 apps on ARM devices on runtime. The translation layer is different to a virtualization layer in that it is translating x86 instructions to ARM instructions while the application is running and that’s why it takes a lesser toll on app performance than other virtualization solutions that require considerably more compute but provide better compatibility because they simulate an entire x86 ecosystem. Though Rosetta isn’t perfect, more importantly for older and more intense x86 applications. Some intensive x86 apps may not run as expected, some would have performance bottle-necks and some may not work at all but it is the next best option for general consumers providing them a balance between performance and compatibility in running x86 apps on Apple’s M series chips.
Reasons for other companies’ failure in adopting ARM in laptops
- Lesser control
- No other laptop manufacturer enjoys the same level of control that Apple does in building hardware and software from the ground up. Most manufacturers have way lesser control around the overall hardware and software of a laptop that gets manufactured by them and they have to intentionally create laptops that are operable with other components like CPU, GPU, OS on the cost of optimizing hardware and software
- Less developer support
- Unlike Apple developers that had no choice but to adapt to the newer architecture, Developers for other platforms like Windows do have a choice right now, They can either develop for the ARM minority or the currently prevalent x86 architecture and due to lack of demand of the magnitude of Apple’s M series for now, there is a very small number of developers working on porting their apps to Windows on ARM.
- Weaker branding/marketing
- Big players like Qualcomm (partnering with Microsoft) did not live up to the level of marketing and branding Apple could pull up for their M series chips to the average consumer and that’s why they had a lower hand here too. Apple’s story emphasizing on performance, efficiency and seamless integration within the Apple ecosystem just did not match for what Qualcomm pulled up
Reason to be excited about the future of ARM and x86
- Good Competition
- Apple’s success in adopting ARM based processors for its laptops have set an example that has made all the big players realize what could be the potential impact of this architecture in the integrated computing space like laptops where x86 has been the only choice for about half a century.
- Now, the competition isn’t limited to just general-use laptops but it is heating up in specialized hardware like servers and even ARM based supercomputers have started showing up.
- Now all that doesn’t mean that everything’s going to shift to ARM right now, but it’s great seeing other big players hop into the ring namely Qualcomm partnering with Microsoft having released their impressive X-Elite lineup along with Intel creating significant architectural changes such as adopting a SOC design for their newer chips in their decades long history to combat the ARM threat and lastly, NVIDIA and AMD rumored to be partnering together to produce ARM based PC processors coming out in 2025.
- Greater Products
- For an end-use what comes out as a result when big tech competes with itself – Greater Products. All this is best for the end-user. The hardware is going to improve significantly, the software is going to adapt faster, the industry as a whole would improve with this competition – and that’s an exciting thing.
A guy trying his hardest to not end up as a Writer. Alternatively someone who has deep passion for the field of CyberSecurity and overlapping ideologies. I am the one and only researcher for Tech Made Fun Tech Podcast – patent pending.