The announcement that Apple would be transitioning to an all ARM ecosystem has been met with derision, applause, analysis, and disbelief. Of all of those reactions, it is the analysis part that has been most useful.
Apple has been designing its own ARM based systems on chip (SOC) for a decade now, and improving on each generation in a blistering release per year cycle. To put it in another way, the 8086, 286, 386, 486, Pentium, Pentium II, Pentium III, Pentium 4, Core 1 series and core 2 series represents ten generations of mainstream processors from Intel. The 8086 became available in 1978, and the 2nd Gen Core processors in 2011, so 33 years to develop ten generations of general purpose, commodity processors for the x86 instruction set. Apple essentially built the ARM64 instruction set, and iterated 10 generations of improved ARM based processors for iPhone and iPad in a third of the time it took Intel to go 10 generations.
Why? Well there is a fundamental difference in how Intel has to design and manufacture chips, and how Apple can design and manufacture chips. Intel has to meet industry standards for compatibility and ensure their chips work with third party motherboard manufacturers. Apple does not, and by bringing the whole product into the pipeline can get very tight integration with software, something that neither Microsoft can do with Windows, nor Linux can do unless you get serious about kernel customization.
The other huge difference is that Apple isn’t into the server CPU business. Intel utterly dominates the data center, although AMD and ARM are making inroads (again) into that space, and SPARC and PowerPC are still hanging on by the thinnest of percentage points. Apple, quite rightly, doesn’t give much of a hoot about the data centers as they are static, machine oriented, and have essentially no efficiency constraints for electricity. Apple’s products are human oriented, and largely dependent on batteries, and are therefore immensely interested in efficiency. This means that on top of the basic ARM instruction set, Apple has been baking in it’s own functionality right onto the chips, things like hardware decoders for streaming video that much more efficiently use electricity to display a YouTube video you might be watching.
The other thing Apple announced for the next generation of Macs is the inclusion of a “neural engine” in a configuration I’ll call a “processor cluster.” Now there are two ways to go about making a good neural engine, use an application specific integrated circuit (ASIC) or field programmable gate array (FPGA). Both of those options are known for high computational performance at low cost. The advantage of the fpga is that you can reprogram it to do different stuff, and the advantage of an ASIC is that they are highly optimized for one workload. It will be interesting to see which choice Apple makes, and why. My guess is that it will be an ASIC as they are, in theory, likely to be more efficient for better battery life.
One of the things that gave me pause is the recent push by Apple back into the “serious workstation” realm for people doing large movie editing, effects, etc. This move to an ARM ecosystem might prove to have a hiccup for those users if their x86 software suffers a bad performance hit when switched to ARM. But, people have been capturing, editing, and publishing videos straight from the iPhone and iPad for years now, so at least that workload seems to be pretty safe.
Secondly, given Apples aggressive development timeline, the feedback from a “neural engine” could give Apple circuit designers exquisite data on the use cases their users actually need to increase the performance and efficiency of the next generation of processor clusters. The clusters will include some high efficiency cores, some high performance cores, some GPU cores, and the neural engine of course. Although adding functionality to the processor cores kind of defeats the design ethos of the reduced instruction set core (RISC), Apple can essentially create a peripheral on chip and glue it all together with microcode or other software solution.
So, I think that the next generation of Macs will be like the Amiga, a highly integrated computer with amazing performance compared to the competitors. I also think that this might cause an initial dip in Mac sales, as I’m not sure that a public which associates ARM based computers with Chromebooks will react with the same enthusiasm as when Apple released the super powerful Mac Pro Workstations. Time will tell of course, as Apple isn’t infallible in their business strategies, but they are interesting.