• Welcome to the new Internet Infidels Discussion Board, formerly Talk Freethought.

Apple's upcoming CPU-architecture change: ARM-based "Apple Silicon"

lpetrich

Contributor
Joined
Jul 27, 2000
Messages
25,148
Location
Eugene, OR
Gender
Male
Basic Beliefs
Atheist
Apple is planning to move its Macintosh line to ARM-based "Apple Silicon".

Apple announces Mac transition to Apple silicon - Apple
Apple Silicon | Apple Developer Documentation
Apple Silicon | Release Dates, Features, Specs
Apple Silicon Arm Macs: Coming in Late 2020
Apple Silicon vs Intel - Macworld UK
Apple announces Mac architecture transition from Intel to its own ARM chips, offers emulation path - 9to5Mac

Apple Silicon will use the ARM64 CPU architecture, and its chips will use system-on-a-chip designs that are designed by Apple's designers. Apple has been using such chips for over a decade in its smartphones and tablets, and Apple will now use them in its laptops and desktops.

This will be the fourth CPU architecture that Apple has used for its Macintosh line. Here is a complete list:
  • Motorola 68K - 32-bit
  • PowerPC - 32-bit, 64-bit
  • Intel-x86 - 32-bit, 64-bit
  • ARM - 64-bit

Apple has done two previous transitions, and it has done them with a two-part strategy:
  • Multi-architecture "universal binaries"
  • An emulator for old software
Apple will use the same strategy here, and the company expects to complete the x86-to-ARM transition in two years.

Apple has thus alternated CISC - RISC - CISC - RISC, where C = complex and R = reduced, both of instruction set complexity. The complexity is in what each instruction does, and not necessarily the total number of instructions; some RISC CPU's have large numbers of instructions. A small number of instructions is called MISC - minimal instruction set complexity/computing.

In particular, RISC CPU's have a "load/store architecture", where operations that access main memory do only that, and never do that as part part of other instructions, something common in CISC instructions. RISC architectures typically have other simplifications, like constant-sized instructions and restricted data alignments.
 
I guess the OS would be a different version.... I wonder if they'll still call it OS X....
 
There’s a question mark hanging over Apple’s Arm Macs - The Verge

Notes other companies' app-compatibility troubles with ARM-based desktop/laptop computers - no built-in compatibility with x86 apps.

Apple is astonishingly confident in its new M1 Mac processors - The Verge

Apple solves the backward-compatibility problem with Rosetta 2, running x86 apps in ARM. The original Rosetta app ran PowerPC apps in x86.

The 5 biggest announcements from Apple’s ‘One More Thing’ hardware event - The Verge
  1. Apple introduces the Apple M1, its new Arm processor for Macs
  2. Apple’s new M1-equipped MacBook Air costs $999
  3. The M1 is coming to the Mac mini
  4. The 13-inch MacBook Pro is getting the M1, too
  5. macOS 11 Big Sur will “maximize M1” and launch on November 12th
Apple now has that M1 MacBook Air, 13-in MacBook Pro, and Mac Mini.
 
Apple M1 Chip - Apple - Apple's own description

It was made with a 5-nanometer process. That's the size of the smallest features. That's about 50 atoms, and that seems like it's pressing it.

It has 16 billion transistors, roughly (130,000)^2. If each transistor has a linear size of 100 nm, then the the chip's linear size is 1 cm, about right.

The chip has "Unified Memory Architecture", meaning that the same in-chip memory is accessible from everywhere in the chip with the same transmission rate. Seems like Apple is avoiding the shortcut of dividing up the memory into blocks that are most rapidly accessed by certain parts of the chip.

The CPU has 8 cores. I'm concerned that that might be overdesigned. What might use all 8 cores?

Four of them are high-performance cores and four of them high-efficiency cores. So Apple solves the tradeoff between processor performance and processor power consumption by having having both optimizations of processor on the same chip.

I'm old enough to remember what RISC processors were often presented as. Their simplified architecture means simpler chip design, and thus easier-to-optimize chip design. However, Intel was big enough to afford massive investments in improving its x86 line of chips. But Apple may be getting high performance out of the ARM architecture by using its RISC nature.

It will be interesting to see how Microsoft responds. Will it try to make Windows more cross-architecture compatible?
 
Apple's M1 chip has a GPU that can have as many as 8 cores. So Apple might have low-end versions of the M1 with fewer cores, like 4 or 2 or 1.

Or it might do something like what the Cell processor had and what AMD's 3-core chip may have had - releasing a version with one or more cores knocked out. This can be a way of dealing with a defective core, so as to make the chip usable even if lower in performance.

It has a 16-core "Neural Engine" and "machine learning accelerators". Seems like it is capable of doing some artificial-vision operations.

Advanced security

M1 and Big Sur offer the most advanced security of any personal computer. With hardware‑verified secure boot. Automatic high‑performance encryption for all your files. And new security protections built deep into the code execution architecture of M1.

Apple Unveils New M1 Apple Silicon Chip for Macs - MacStories has more detail. Like about "Secure Enclave": "The Secure Enclave handles security-critical operations such as authentication and file encryption, and enables hardware-verified secure boot for M1 Macs running macOS Big Sur." Apple has been using it in its iPhone and iPad CPU chips, and its recent Mac T-series chips include it. So with M1, Apple has moved that feature into its desktop chip.
 
Benchmarks seems to show it's faster and a lot more energy efficient than AMD/Intel.
I wish they had such CPU with linux on it.
 
Benchmarks seems to show it's faster and a lot more energy efficient than AMD/Intel.
I wish they had such CPU with linux on it.


Indeed. The benchmarks I have seen for speed and power usage look very promising. It gives the Mac Pro a run for its money at tasks like video encoding, at literally a tenth (or less) of the cost. Took bad it will only be available on Apple branded computers.
 
ARM laptops and desktops? I looked, and there's not much. My first thought was Chromebooks, but they mostly use x86's.

M1-powered Macs can run Windows apps, with some help from CrossOver | Engadget - CrossOver is a Windows emulator that runs x86-Windows apps.

Windows Software on Mac & Linux with CrossOver | CodeWeavers
Running separate x86 applications in emulation is not that big of a deal. Full blown and usable x86 OS emulation is what separates ARM from x86.
Ordinary x86 linux running on ARM CPU without any complains would have been great.

Anyway, the thing that impresses me most is the power use. Why can't AMD/Intel do the same? I mean Intel stuck at 10nm, but AMD has access to the same fabrication as Apple, the only difference is architecture.
 
As to why the ARM chip does so well, I think that it's the CISC vs. RISC issue all over again.

CISC = complex instruction set computing

CISC instructions typically have a variety of memory addressing modes, something intended as a convenience for programmers. But supporting such instruction has often required doing "microcoding", having a CPU inside of a CPU for running these instructions.

The Intel-x86 series has a CISC architecture, and it uses microcode:  Intel Microcode Other ones are the Motorola-68K one and various mainframe and minicomputer ones, like the IBM 360/370/390/z-Series, the PDP-11, and the VAX.

CISC was intended as a convenience for programmers in the first few decades of computers, when a lot of programming was done in relatively low-level fashion. But the success of high-level programming in the 1960's and afterward made that less of an issue.

So someone got the idea of making this CPU inside a CPU the complete CPU. Thus,

RISC = reduced instruction set computing

Not necessarily a small number of instructions. That's

MISC = minimal instruction set computing

But instructions that do only a few things at a time. Like the only memory-access ones being load and store ones.

Several RISC architectures became prominent in the late 1980's and 1990's, like MIPS, POWER/PowerPC, SPARC, PA-RISC, DEC Alpha, and ARM, and it seemed like they would leave CISC architectures like x86 in the dust. But Intel was willing to spent what it took to keep x86 competitive, and RISC chips had only limited success on the desktop. They were most successful in high-end desktop computers called workstations, and also in Apple's PowerPC series of desktop and laptop computers from the mid 1990's to the mid 2000's.

But workstations faded as a category, and Apple eventually threw in the towel about the PowerPC.
 
ARM chips have been successful in low-end applications, where low power consumption is more important than high performance. But Apple Silicon seems like ARM can do both -- and thus revive the RISC-CISC wars.

But what I find especially interesting is that Apple has chosen to implement both sides of the power/performance tradeoff on the same chip.
 
x86 is RISC inside. And estimates I read are that CISC overhead over RISC is only 10% in terms of energy consumption.
So it must be combination of manufacturing process and optimizations.
M1 seems to have 64K L1 data cache, that's 2x more than what AMD/Intel have I think.
It could be well matched for some benchmarks in terms of power consumption.
 
“We are giddy”—interviewing Apple about its Mac silicon revolution | Ars Technica
"Craig Federighi, Johny Srouji, and Greg Joswiak tell us the Apple Silicon story." - three Apple engineers
"We want to create the best products we can," Srouji added. "We really needed our own custom silicon to deliver truly the best Macs we can deliver."

Apple began using x86 Intel CPUs in 2006 after it seemed clear that PowerPC (the previous architecture for Mac processors) was reaching the end of the road. For the first several years, those Intel chips were a massive boon for the Mac: they enabled interoperability with Windows and other platforms, making the Mac a much more flexible computer. They allowed Apple to focus more on increasingly popular laptops in addition to desktops. They also made the Mac more popular overall, in parallel with the runaway success of the iPod, and soon after, the iPhone.

And for a long time, Intel's performance was top-notch. But in recent years, Intel's CPU roadmap has been less reliable, both in terms of performance gains and consistency. Mac users took notice. But all three of the men we spoke with insisted that wasn't the driving force behind the change.

"This is about what we could do, right?" said Joswiak. "Not about what anybody else could or couldn't do."

"Every company has an agenda," he continued. "The software company wishes the hardware companies would do this. The hardware companies wish the OS company would do this, but they have competing agendas. And that's not the case here. We had one agenda."
Saying that one wants to do the best possible job seems like a platitude, but it must be noted that for Apple to survive, its products *have* to be good. Otherwise, the Macintosh line would be much like inferior PeeCees or Chromebooks, and iPhones and iPads much like inferior Android smartphones and tablets.
 
Then the article described how the chip was designed. It's an offshoot of chip designs used in the iPhone and iPad series, but tweaked for Mac workloads.

Then, "tile-based rendering", working on one tile at a time of an image. This improves performance because each tile can live in the chip's memory as it is being worked on, making rendering faster.

Heat-rejection capability makes a difference in performance.
In other words, the MacBook Air and Pro should perform similarly when bursts of speed are needed, but the Pro can maintain that performance for longer—critical for many demanding workflows like video editing. In such scenarios, the Air would throttle sooner to stay cool. According to Apple, the M1 scales to better performance the more power you can give it.

In tests, the new low-end Macs with M1 chips performed comparably to high-end ones with Intel chips. Apple eventually hopes to introduce M1 versions of all its Macs.

With Apple Silicon, iOS apps can run natively on Macs with little or no rebuilding needed.
 
Windows, however, is a problem.
But while Apple Silicon Macs can run existing Mac, iPhone, and iPad software, the new architecture cannot immediately run applications built for x86 operating systems besides macOS, and Rosetta 2 doesn't offer any help on this front. The ability to run Windows software was a small part of the success of Intel-based Macs, so some users—particularly those with certain professional workflows—will see that as a loss.
The M1 chip can do virtualization of other OSes that run on the ARM architecture. Running OSes for other chip architectures requires use of emulators of those architectures, and Rosetta 2 apparently lacks such OS-level emulation capabilities.

But some people have written such emulators for MacOS version that run on earlier chip architectures that Apple has used, Motorola 68K and PowerPC, and those may end up being ported to ARM.

 
While running Linux is important for many, other users are asking about Windows. Federighi pointed to Windows in the cloud as a possible solution and mentioned CrossOver, which is capable of "running both 32- and 64-bit x86 Windows binaries under a sort of WINE-like emulation layer on these systems." But CrossOver's emulation approach is not as consistent as what we've enjoyed in virtualization software like Parallels or VMWare on Intel Macs, so there may still be hills to climb ahead.
CrossOver uses WINE, "Windows Emulator" or "WINE Is Not an Emulator". It runs Windows apps without being a complete implementation of Windows. WINE was originally developed for Linux, but it also runs in MacOS and xBSD.
As for Windows running natively on the machine, "that's really up to Microsoft," he said. "We have the core technologies for them to do that, to run their ARM version of Windows, which in turn of course supports x86 user mode applications. But that's a decision Microsoft has to make, to bring to license that technology for users to run on these Macs. But the Macs are certainly very capable of it."

Mac mini and Apple Silicon M1 review: Not so crazy after all | Ars Technica - "The M1 is amazingly fast. More importantly, it's a compatibility slam dunk."

Rosetta 2 generally works very well. But from macOS 11.0 Big Sur: The Ars Technica review | Ars Technica
There are a few things that Rosetta 2 won’t do. Rosetta 2 won’t translate kernel extensions, x86 virtualization software like Parallels or VMWare Fusion, or apps that use newer Intel instruction sets like AVX, AVX2, and AVX512. For apps that already know to check for AVX support, since those instruction sets aren’t available on all Macs that run Big Sur, the apps should see that the instructions aren’t supported and run without issue.
Also, a lot of iOS and iPadOS apps didn't work very well, even though they run in M1 Big Sur.

In summary,
  • The good
    • Great performance across the board
      Legacy x86 macOS app support and performance are generally rock solid
    • Low footprint in every respect: size, power, thermals
    • Everything that was good about the Mac mini before is still good
  • The bad
    • RAM and port options are limited
    • The iOS and iPadOS app experience is a mess
  • The ugly
    • The path for emulating x86 Windows is still unclear, and that’s an essential part of a lot of people's workflows
 
Back
Top Bottom