The benchmark scores for AMD’s latest processor are very impressive. But why are AMD and Intel so far ahead of Apple Silicon?
Apple designs processors that use Arm’s 64-bit instruction architecture. That means that Apple’s chips use the same underlying RISC architecture as mobile-phone chips made by Qualcomm, Samsung, and Google. The difference is that Apple holds an architectural license with Arm, which allows it to design its own chips from scratch. Apple’s first in-house 64-bit Arm processor was the Apple A7 which was used in the iPhone 5S. It had a dual-core CPU, clocked at 1.4 GHz, and a quad-core PowerVR G6430 GPU. It was manufactured using a 28nm process. Current M2 chips use 5nm process and come in versions with as many as 12 cores. How come they are beaten in both performance and efficiency by current AMD chips?
Let’s dig into the design details.
AMD uses what is called a complex instruction set whereas Apple uses what is called a reduced instruction set.
The instruction set can be understood as the hardware’s interface to the outside world. We run programs through the operating system scheduling, and the operating system then allows the hardware to compute.
If you let the hardware compute, such as some addition and multiplication, loops and so on, you need the interface provided by the hardware, that is, the instruction set. This is what we often call machine language, which has reached the bottom of the computer.
Instruction set architecture is divided into two main categories.
- Complex Instruction Set Computing (CISC) is simply understood to provide a lot of instructions, and they are also very complex. Represented by
intel
sx86
architecture, the main target operating systems are Microsoft’sWindows
and Apple’smaxOS
. AlsoLinux
, someUNIX
, etc., can run on microprocessors with complex instruction set architectures. - Reduced Instruction Set Computing (RISC) simply means that the instructions provided are few and simple, just some basic instructions. The
arm
architecture of theARM
company is the representative. Currently there areUNIX
,Linux
, and most mobile operating systems includingiOS
,Android
,Windows Phone
, etc. running on the processor with the compact instruction set.
The difference between the complex instruction set and the reduced instruction set is when we program (write machine language code directly to run on the CPU
), for example, to implement multiplication. Depending on the instructions provided, one command may be enough for the complex instruction set, while for the simple instruction set we may need multiple instructions such as addition, loops, etc.
Hardware and software are also complementary processes, when the hardware provides simple functions, writing software is more complex. When the hardware provides more functions, writing the software is simpler.
The sheer number of instructions is expanding to accommodate software use-cases.. for example, AVX-512 instructions extension to accelerate vector calculations.
Looking at Apple Silicon the instruction set is reduced and the main advantage of the simpler ARM design has always been power efficiency. That’s what we see ARM RISC-CPUs in most low-power phones, appliances, etc. these days.
Traditional ARM CPU designs introduced the “Big-Little” architecture to save more energy.. a set of more powerful cores used when speed is needed and a few high-efficiency cores used for idling and low work when top speed isn’t needed just to save energy, especially in standby and idle states.
But technology is converging… Modern chips are sharing lots of design concepts and it has been shown that from a core-to-core perspective efficiency is close across the same generations of chips. Today, for example, Intel CPUs have introduced big-little architecture even on their CISC Intel Core CPUs.
Another difference is that one Core of M2 Apple silicon can only offer one thread for program execution.. While one core from AMDs CPU (and the performance cores on Intel) can actually run two threads.. so comparing performance per core really needs a workload with two threads on AMD vs a single thread on Apple Silicon, if core performance and efficiency are to be compared… These things make it easy to overestimate Apple silicon when the lack of hyperthreading is neglected.
Today AMDs nodes are also a generation ahead of Apple with Zen4 4nm nodes vs Apples M2 5nm, also giving AMD a leg up..
Apple is of course not sitting idle.. 2024 we hope Apple can get back in the game with 3nm nodes and hopefully more than 8+4 cores setup. 8 single-thread cores are way behind top-spec mobile CPUs 2023 which support up to 24 threads on AMD and Intel CPUs.
All this leads to –
AMD 7940HS outperforms the M2 in both overall performance and power efficiency and looking at benchmarks.. Multithreaded AMD 9745HX and Intel 139xxHX lap the M2 with twice the CPU performance in benchmarks like Cinebench, Chess programs, and other open-source software.
Apple engineers seem to have much to learn from AMD and Intel right now… Maybe time to seriously consider providing AMD or Intel alternatives for future Macs to complement the lower-end M versions.