The Apple M1, ARM/x86 Linux Virtualization, and Boinc (2021)
sevarg.net
sevarg.net
Just a reminder, this article was published in Jan 2021, I'd had the M1 Mac Mini for about a month, and virtualization was still very rough around the edges. My understanding of the state of it today is that it's far better, with VMWare and such having actual working products for it (the very early beta was out, and it wasn't very good).
The Speedometer numbers are a bit suspect, it turns out that some of the browser extensions were impacting performance more than I realized, so the "raw" speed is a bit higher on the M1 than I was reporting. However, I stand by my point that it's a properly quick little Linux VM.
Unfortunately, I no longer have the M1, so I can't provide any current comparisons. Apple went in some directions I'm not OK with and I've stopped using their stuff pretty much entirely.
As a non-Apple user considering an M1 myself, I'm curious what you mean by this
I'd been somewhat uncomfortable with some of the decisions Apple has been making for a while, mostly related to China. The "iCloud in China" thing in which Apple gave the keys to iCloud in China to the CCP (you can spin it how you wish, but from my point of view, if you've given a Chinese company physical access to the servers, you've granted everything on those servers to the CCP, regardless of how much you go on about keeping the encryption keys yourself) was one issue, the treatment of workers was another. They've supply chained themselves into a corner called China, and are now entirely subject to the whims of the Chinese government, under the "Nice factories, it'd be a shame if something were to happen to those agreements you've got!" logic.
So I was considering what I wanted to do, and then they went down the whole on-device CSAM scanning path, complete with the internal email sharing the quote from a third party talking about crushing the "shrieking voices of the minority" who would dare oppose this obviously good thing. That, which I've also written about (doing some experiments in what it takes to change the hash and such), was a giant leap too far for me. I'm not OK with so overtly turning my devices against me with a system that has clearly not seen the slightest bit of adversarial analysis ("How can this be abused?").
Apple hasn't actually forced it out that we know of, but to borrow the punchline from a joke, "Well, we know what kind of company you are, now we're just haggling about timing" (https://quoteinvestigator.com/2012/03/07/haggling/). They built up quite a "privacy capital" credit with their actions in the debate with the FBI over backdoors, and appear to have decided it was worth burning it all down over the CSAM scanning, which they've yet to deploy.
So I've de-Appled my life quite substantially. I swapped from using an iPhone as my daily driver phone to a KaiOS Flip IV (wrote about that if you're curious on my blog), I sold the M1 and LG 5k monitor with it at a rather substantial loss, I don't use the iPad for anything anymore except ForeFlight (aviation software), I picked up a Kobo Elipsa for PDF reference for work to replace the iPad/Goodreader combo, and I've generally de-Appled my life as a result of their actions.
It leaves me lurking in the weeds of Linux on ARM small board computers (a weird hobby of mine, but they're quite capable these days if you understand their limits), and Qubes on x86, though I've not entirely purged legacy Linux because I do enjoy Kerbal Space Program and Minecraft on occasion, as do my kids.
The M1 Mac Mini was, for the time I had it, the best computer I'd used. It was blisteringly fast, and despite only 16GB RAM, didn't feel like it - you could just keep throwing workloads at it and it would chew through them, only occasionally spinning the fan above idle. The GPU was solid, the CPU performance was world class, and the entire experience, even running x86 binaries, just worked.
The M1 MacBook Pro is literally exactly what I want in a laptop. A slab sided machine with a set of useful ports, blisteringly fast ARM CPU, battery life for days, and having abandoned the abomination that the Ive era keyboard was (thin for the sake of thin, functionality be damned). And I will never own one at this point, because I cannot trust Apple anymore not to turn my hardware against me anymore.
So, I'm working out how to do my computing on far less. My daily driver laptop is a PineBook Pro, which is... adequate for my needs, if I'm willing to redefine my needs into "That which the PBP can do." Same for most of my desktops being weird little gutless ARM boxes anymore. Spotify won't run on ARM/Linux? Fine, ncspot it is. Etc.
Anyway, I don't expect a lot of other people to agree with this path or to take similar actions (though I wish many would), but I simply couldn't be as strongly against Apple's CSAM proposal as I was and continue using their products. And having cracked that box open, we now see the EU proposals that expand drastically on what Apple has done, "because clearly it can be done, nerd harder to solve it!"
... I don't actually like consumer tech and what we've done with computers very much anymore, if it hasn't come through.
One of the alternatives I'm looking at is to just use the laptop as a thin client and offloading heavy tasks to a home server. Still can't be too thin a client, just in case I have poor network, but it seems like one of the best ways to get portability + privacy + power nowadays. But I'm also trying to be careful to do proper threat modeling [1] so that I don't burn out, as the rabbit hole goes very deep.
Overall it's great to hear from others that they are able to de-Apple their lives, it makes me think maybe I don't really need that M1 after all :) Though it's true that the direction of personal devices and the war on computing [2] is rather disheartening.
[1]: https://www.privacyguides.org/basics/threat-modeling/
[2]: https://boingboing.net/2011/12/27/the-coming-war-on-general-...
I have never been applefied, but my exit from google and meta is also a statement (that I wish more people would do). Think of it as putting your money (or rather privacy) where your mouth is.
As nice there devices seems to be, they are never perfect either (see complaints about the keyboard) and it is fairly easy to de-Apple. The same is much harder for Google and in some regions meta, mostly of whatsapp.
Linux, on the most open hardware you can find? That's about all I'm willing to use anymore, and if that closes, I'll find something else to do with my life. I keep coming back to, "I cannot defend modern consumer electronics from any ethical starting point I pick." They're built on the backs of slave labor, using materials extracted in "What toxic sludge pile about to collapse?" conditions, used to extract behavioral data for tech overlord profits (I've never been a tech overlord, but I certainly have worked for some of those companies over the years), and then get burned in third world countries when they're artificially obsoleted because you ought to buy a new one for more profits. Yay?
> Still can't be too thin a client, just in case I have poor network, but it seems like one of the best ways to get portability + privacy + power nowadays.
It depends what you're doing, but I don't really need much power "on the go" in my life anymore. The PineBook Pro is remarkably useful for portable light use, and at $200 and "way more open hardware than anything x86 or Apple," it's not a bad little system. It's also quite repariable, though they're less durable than I'd really prefer.
> But I'm also trying to be careful to do proper threat modeling [1] so that I don't burn out, as the rabbit hole goes very deep.
The rabbit hole goes very deep indeed. The threat modeling is hard when the very foundations of modern computing (process isolation) are cracked and crumbling. If you told someone that VMs were a hard isolation boundary in the Haswell days, you'd have been quite wrong (L1TF). You just wouldn't have known it for a few years yet. The burnout is real, and I'm not convinced it's a bad thing, really. There are a lot of deep technical types I know in my general peer group (call it "mid 30s to mid 40s, have grown up with this stuff, have done it professionally their entire post-college lives") who more and more want no part of what we call consumer electronics, and are doing things like "buying plots of fruit trees" and "no longer carrying smartphones." There will be an entire group of "gentleman farmers who run oddly Amish-seeming farms" in the next decade, and they'll be former security and low level tech types.
The threat modeling from a security perspective is hard, but from a behavioral surplus perspective, it's simple enough: "If there is a way something can be collected, it is being collected. If you can't envision a way something can be collected, odds are very good that someone smarter than you has been paid very well to figure out how to collect it anyway."
Buy some Field Notes pocket notebooks, carry those instead of a smartphone. I now regularly go out for entire days without a cell phone on me, and with a mechanical watch. It's nice, and I suggest getting in the habit.
> it makes me think maybe I don't really need that M1 after all
Vote with your wallet. If you object to Apple's CSAM stuff with your words, and buy a M1 with your actions, you don't really object that much - actions speaking louder than words and all.
The forum attached to my blog has a small collection of people working through this stuff as well. You're quite welcome to join there!
Author seems to be basing this from their results of https://browserbench.org/Speedometer2.0/ :
* M1 - Chrome on macOS: 127
* M1 - Chrome on Linux via QEMU: 160
I just ran the benchmark on my framework laptop (2021 version - 11th Gen Intel® Core™ i7-1185G7)
* Framework - Chrome on Windows 11: 138
* Framework - Chrome on Linux (manjaro): 160
Regardless the takeaway that "M1, and very likely the fastest Linux machine you can get right now for single threaded work." is conjecture.
If someone can benchmark chrome on asahi linux it would give us a better comparison.
> Jan 9, 2021
Asahi Linux literally wasn't a thing when I wrote the article.
I fully expect my conclusions from over a year ago, when the M1 first was available and virtualization was rough around the edges, to "not remain accurate."
EDIT: noticed the author's comment saying extensions may lower the performance, so tested again in raw chrome and got 304.
Not sure where that goes wrong yet. Or if qemu emulation is just that slow. This article suggests it could be better
EDIT: nevermind, misread/understood the post. x86 code is fast, x86 emulation is not. It works, but is hardly usable.
(AMD just got done with their 5nm Zen 4 Computex keynote right now)
https://www.anandtech.com/show/17399/amd-ryzen-7000-announce...
For me, MacBook Air M1 is just a "dumb terminal", with VSCode and its remove development server it doesnt matter where all the stuff is.
I want a tablet dumb terminal because:
- when I'm working I'm plugged into a monitor 99% of the time (with dedicated keyboard/mouse) - when I'm traveling/consuming media/couch surfing/shopping with wife - tablet is much more convenient
But I can't really use iOS for work - iPad pro would be perfect otherwise.
I hear people say this but I really disagree. I have never found a tablet more convenient.
With a tablet you either have to hold it up with one hand, while you use your other hand to navigate, or you have some sort of case with a built-in stand that is never as stabile as a laptop. You also have to be very careful holding the tablet, because otherwise you'll touch the screen and unintentionally open or close the app you're using. Also when you use a case with a tablet it often makes it as heavy as an actual laptop.
Not to mention all the keyboard shortcuts that make navigating the OS faster than a touch-based OS. I just don't really "get" tablets. I've tried iPads and Android tablets but I always grab my laptop instead.
But yeah, if work doesn’t quite fit with just needing a terminal, and a few web sites or iOS apps, then it’s not going to work.
But yeah, I wish there’s was a good 2 in 1 as well.
mosh?
A $1000 dumb terminal? Wouldn't a cheaper laptop be perfectly sufficient then? Or, if the performance is not that important, something like an asus laptop with an oled, pro-motion, higher res, ... screen (same price)?
- Battery life - Trackpad - No keyboard flex - Superb screen and superb handling of the high dpi - M1 is superior to anything intel or Amd.
It's not fanboy'ism it is what it is.
> M1 is superior to anything intel or Amd.
Agreed, but the above post explicitly said "dumb terminal" -> not relevant.
> Superb screen and superb handling of the high dpi
Again, yeah, but "dumb terminal" and 120Hz, oled, more pixels, ... is better. Normally you could argue that the M1 makes it worth the trade off, but if that is not in consideration....
> It's not fanboy'ism it is what it is.
Yeah,... so please stop that. Again "macbook air is a good laptop" is pretty uncontroversial; "For a dumb terminal the macbook air is the best/natural/../adjective choice", maybe, maybe not.
Ah, Apple life.
Asking as an iPad owner.
By the time this Ryzen CPU appears in a real PC you can buy, the next-gen Apple Silicon Macs will have arrived, and they will be several years ahead of this Ryzen.
You can order one today. I'm still waiting for mine I ordered in March.
For disk, I just put a 1tb NVMe in an external USBC enclosure, cuz most of my data doesn’t need crazy I/O and I feel like Apple charges too much for disk space.
Memory management is quite usual, nothing magical. The disk is faster, but it's not the reason to rely on swapping, still.
So running Linux on QEMU with a virtualized GPU should provide a better experience than using CPU rendering or buggy drivers for most day-to-day tasks like browsing the web.
Nice thing about this setup is that it's all free (just like I used to have when using Intel and Virtualbox).
I’ve entirely give up on doing x86 docker builds for the same reason..
Genuinely asking as its comparing a cheap pos system to a new one that's 6x the price and then playing a game that happily runs on a Core 2 Duo with 4Gb of ram.
KSP ran fine on my 2014 iMac with discrete graphics. It absolutely did not run acceptably on the 2018 Mac Mini, and it ran wonderfully on the ARM M1.
But, no, the post was not satire. Not sure why you would think it was. It was trying to, very soon after the M1 came out, work out some concrete ways to do Linux VMs and such, and playing with performance.