1/ In case you were wondering: Apple's replacement for Intel processors turns out to work really, really well. Some otherwise skeptical techies are calling it "black magic". It runs Intel code extraordinarily well.
2/ The basic reason is that Arm and Intel architectures have converged. Yes, the instruction sets are different, but the underlying architectural issues have become very similar.
3/ The biggest hurdle was "memory-ordering", the order in which two CPUs see modifications in memory by each other. It's the biggest problem affecting Microsoft's emulation of x86 on their Arm-based "Surface" laptops.
4/ So Apple simply cheated. They added Intel's memory-ordering to their CPU. When running translated x86 code, they switch the mode of the CPU to conform to Intel's memory ordering.
5/ With underlying architectural issues ironed out, running x86 code simply means translating those instructions to the Arm equivalent. This is very efficient and results in code that often runs at the same speed.
6/ Sometimes there isn't a direct equivalent, so the translation results in slightly slower code, but benchmarks show x86 being consistently at least 70% of the speed.
7/ In any case, a surprising number of popular apps already run on it. Apple seeded developer systems a few months back, allowing people to get their code ready.
8/ Normally, that wouldn't have been enough time. When you recompile code for a new architecture, it usually breaks. But as I said above: Arm and Intel architectures have converged enough that code is much less likely to break, making recompiling easier.
9/ Apple has made surprising choices. They've optimized JavaScript, with special JavaScript-specific instructions, double sized L1 caches, and probably other tricks I don't know of.
10/ Thus, as you browse the web, their new laptop will seem faster and last longer on battery, because JavaScript, even though other benchmarks show it roughly the same speed as Intel/AMD.
11/ The older MacBook Air had a dual core CPU that ran at 3.8 GHz, but when in low-power mode, 1.2 GHz. Switching between fast and slow modes is how it conserves power for mobile.
12/ But it's ultimately inefficient. The Intel CPU is designed to run at 5 GHz. Downclocking to 1 GHz saves power -- but not as much as if you'd designed the processor to run at 1 GHz to begin with.
13/ Apple's strategy is to use two processors: one designed to run fast above 3 GHz, and the other to run slow below 2 GHz. Apple calls this their "performance" and "efficiency" processors. Each optimized to be their best at their goal.
14/ When they need to conserve power, they turn off the "performance" processors and run code on their "efficiency" processors. They have 4x performance processors (twice that of their older Macs) plus 4x efficiency processors.
15/ All 8 can be active. When doing something that can use 8 processors, such as compiling code, it goes real REAL fast. 8 processors vs. 2 processors in their old notebooks make a difference.
16/ A big part of this story is that Intel is about 3 years behind on Moore's Law. Apple Silicon uses the latest 5nm tech from TMSC, while Intel uses the older 10nm/7nm generation. Much of Intel's product line uses the even older 14nm/10nm generation.
17/ None of this is actual "black magic". It's all pretty understandable. It's just all the various things have been executed really well, leading to a combined result that is a great leap forward.
18/ Another "magic" trick is how their "Swift" programming language uses "reference counting" instead of the "garbage collection" in Android. They did something in their CPU to double the speed of reference counting.
19/ ...even when translating x86 code, all that reference counting overhead (already more efficient than garbage collection) gets dropped in half. Yet another weird performance enhance to add to all the others.

• • •

Missing some Tweet in this thread? You can try to force a refresh

Keep Current with Robᵉʳᵗ Graham😷, provocateur

Robᵉʳᵗ Graham😷, provocateur Profile picture

Stay in touch and get notified when new unrolls are available from this author!

Read all threads

This Thread may be Removed Anytime!


Twitter may remove this content at anytime! Save it as PDF for later use!

Try unrolling a thread yourself!

how to unroll video
  1. Follow @ThreadReaderApp to mention us!

  2. From a Twitter thread mention us with a keyword "unroll"
@threadreaderapp unroll

Practice here first or read more on our help page!

More from @ErrataRob

16 Jan
If this sounds like a wackjob conspiracy theory, it's because this is a wackjob conspiracy theory. Signal's source code and algorithms are open. Just because some government departs have given it funding doesn't mean it's a secret plot by the CIA.
Signal uses well-known crypto algorithms. If they are insecure, well, then all cryptography is insecure and it doesn't matter which encrypted messaging app you use.
If there's a backdoor in the code, well, the code is open source and people would be able to find it.
Read 6 tweets
16 Jan
This is why I feel like Winston Smith in the opening of Nineteen Eighty Four, I remember a time when this issue meant something different.
Here's is the "censorship episode" of the show "WKRP in Cincinnati", where you see Andy (radio station program director) argue "free enterprise" against preacher "Dr. Bob Hallier" who is using boycotts to get them to remove music from the radio:
Or, if you prefer a transcript of that scene:
Read 7 tweets
16 Jan
I was an early 1980s Internet hacker. Let me explain why "Bugtraq" is probably the most important achievement in the world of cybersecurity.
Most of what you know of the 1980s hacking scene wasn't Internet, but "phone phreaking" and "BBSs". I don't know much about those things. I was an Internet hacker instead -- on the net since back before DNS was a thing (when 'hosts.txt' was distributed by hand).
By the late 1980s, computers from Sun Microsystems were a big deal. Yet, Sun (and other manufacturers) were immune to notifications of vulnerabilities. Issues had to be handle by tech support, and if you didn't have a support contract, you didn't matter.
Read 16 tweets
15 Jan
This is an exceptionally lazy argument on a platform known for lazy arguments. There are people who consistently oppose censorship on principle, whether it's censoring Trumpists, censoring terrorists, or censoring any other disliked group;
Or, here's a discussion of the threat of Chinese censorship when Microsoft buys GitHub:
Read 8 tweets
14 Jan
So Parler was kicked off the Internet for lack of content moderation. Is Signal next?
So if anything is a "false equivalence" then it's the tweet above. However, these things are more alike than they seems.
If activists came to Signal with the phone numbers of identified Proudboys members, as well as the contents (retrieved from phones) of messages they sent via Signal planning an insurrection, what should Signal do?
Read 4 tweets
13 Jan
Hacking is heresy, challenging orthodoxy. Sometimes orthodoxy and politics are the same thing, sometimes they aren't.
Reverse engineering the Parler app to scrape all the public content from Jan 6 (including content marked "deleted" but not yet deleted) is a "hack". It's an unexpected and really cool thing that we didn't expect.
I suppose this also is political, but what makes it a "hack" has nothing to do with politics. What makes it a hack is that people have orthodox beliefs about public scraping of websites that this challenged.
Read 4 tweets

Did Thread Reader help you today?

Support us! We are indie developers!

This site is made by just two indie developers on a laptop doing marketing, support and development! Read more about the story.

Become a Premium Member ($3/month or $30/year) and get exclusive features!

Become Premium

Too expensive? Make a small donation by buying us coffee ($5) or help with server cost ($10)

Donate via Paypal Become our Patreon

Thank you for your support!

Follow Us on Twitter!