why was the M1 chip so revolutionary? What did it do that combined power with efficiency so well that couldn’t be done before?

953 viewsOtherTechnology

I ask this because when M1 Mac’s came I felt we were entering a new era of portable PCs: fast, lightweight and with a long awaited good battery life.

I just saw the announcement of the Snapdragon X Plus, which is looking like a response to the M chips, and I am seeing a lot of buzz around it, so I ask: what is so special about it?

In: Technology

18 Answers

Anonymous 0 Comments

This is a hard ELI5. I’ll try.

The preceding paradigm of Intel processors and Windows and HP making PCs and all that was one structured as a heterogeneous supplier/customer market. Computer processors are designed for a broad market – because Intel (or AMD, etc) is selling to a wide range of customers (OEMs like HP) who are selling to a wide range of customers – businesses, students, gamers, etc. who all have diverse needs and may even be running different operating systems (Windows, Linux). So you design to a kind of generalized need – kind of like how every car is a crossover SUV. It checks most of everyone’s boxes, but it’s maybe a bit too big for some, or small for others, or heavy or unable to tow, etc. but it’s ‘close enough’ for the most people.

Apple’s situation is different. They design processors only for themselves, in computers they design. They are designed to only run their own operating system, which is written using one of two of Apple’s own languages, compiled with their own compilers. Apps on the platform use Apple’s APIs, and so on. Apple has control from top to bottom for the design of the overall computer. They don’t need design to the generalized need – they can be much more targeted – this design for iPad and MacBook Air, this other design for iMac and MacBook Pro, etc. And when Intel looks for a performance benefit, there is only one place they can put that – in the processor they make. Apple can put it *anywhere*. They can choose to change how the compiler works and the processor. They can put it on a support chip because they are the OEM – they make the actual computer, not just the chip. And they don’t need to optimize the design for the 100 different programming languages that you typically use with PCs, they can focus just on the two that they designed, and that is used for 99% of the apps on the platform. So, when the M1 came out, it could read 8 instructions at a time, instead of 6 which was the fastest x86 chip – that was a function of ARM/AppleSilicon instructions vs x86 ones. It could release an object 5x faster than on x86. That was a function of the languages and compilers and design of the silicon – something that nobody really has end-to-end control over in the PC space. If Apple increased a buffer here, they could change APIs over there to work optimally with that buffer size, again, too much diversity in the PC space to do that. Apple removed support for 32bit instructions because they had eliminated them years before from iOS. Less silicon, remove support for handling both 32 and 64 bit instructions, 32 and 64 bit addresses, etc. Breaking that on PC would destroy so much legacy software. Add a specialized core for doing a certain kind of computation that was otherwise slow and have support for it across the system because they also write the OS and the APIs. And on and on and on.

Each of these were a few percent faster here, a few percent faster there, but it all compounds. So Apple can strip back parts of the processor that Intel still needs to support for legacy purposes, which cuts power and improves speed. They can coordinate the best way to do certain things across the OS/language/compiler/silicon groups and distribute that work most effectively. And they can just not worry about performance costs for obscure cases that might actually be big PC markets. So instead of a crossover SUV that checks the most boxes for the most people, they make something more like a sports car that is more narrowly tailored to specific use cases but is stripped back of a lot of the stuff that those users don’t need, so it can run faster or run with less power. And of course, Apple is spending more money to have these chips fabricated than Intel – so they are absolutely cutting edge process, and they can buy up the entire first production run so even TSMCs other customers have a hard time getting components on those processes. It adds up.

So, as to Snapdragon – there’s realistically no way they can do what Apple has done. They can get closer – no question, but the Qualcomm/Microsoft space still lacks the kind of ‘put everyone in the same room and work toward this one goal’ ability that Apple does, which took Apple *decades* to get to. And Microsoft is not going to be as cutthroat with cutting support for old things in order to improve performance as Apple is Apple is uniquely aggressive on that front (they took the headphone jack out of a quarter billion iPhones when everyone was still utterly dependent on them – there was no grace period – you *will* adapt to this change) and Microsoft is very deferential to backward support – just the opposite. Microsoft is also unlikely to just kill off the ability to boot linux on their hardware. They do make their own compilers but it’s still a very diverse development environment where Apple is very uniform. Microsoft’s customers just won’t tolerate the kinds of things that Apple’s customers will, so their ability to keep pace with Apple is pretty limited.

You are viewing 1 out of 18 answers, click here to view all answers.