15 ms·
Ode to the M1
- travisgriggs 3y agoI like UTM too. I must be doing something wrong though. I created both X86 Ubuntu and Debian 10 VMs. They are usable, but not quick. I have been blown away how fast Rosetta 2 x86 programs run my m1. The arm embedded gcc too chain compile code 4x faster than the native x86 MBPro from a year or so ago. But the UTM VMs run about 3x slower.
- 58028641 3y agoI think it would be faster to use an ARM64 VM and use Rosetta, FEX-Emu, or Box64 for x86 programs inside the VM.
- fabiensanglard 3y agoAre you using emulation or virtualization? You mention x86 versions but the M1 uses arm64. That may be why it is slow.
- warvariuc 3y agoI use Ubuntu in UTM, but I installed the ARM64 server version, then the desktop packages.
- j-a-a-p 3y agoInteresting, this results in a fully functional desktop version? I have a M2 and the hardware is great, but the OS that came with it not so. If I could replace the OS with Ubuntu that would be great. (Windows would also be great, but I have no experience in installing that)
- bombcar 3y agoYes. You wouldn’t replace the OS but you can make UTM full screen and hardly notice it’s not the main os There are attempts to run Linux on the Mac natively but they have limitations. You can also get utilities that abuse Mac OS to make it imitate windows or Linux if you want.
- SamuelAdams 3y agoI almost always use my MacBook Pro in clamshell mode attached to a thunderbolt dock for external displays. Right now Ashai Linux does not support thunderbolt, however it is a work in progress. Does UTM work well with external displays? Preferably in full screen?
- warvariuc 3y ago> Interesting, this results in a fully functional desktop version? It's very snappy. I run Firefox to work with my Internet banking site in an isolated environment. I installed KDE -- I am very satisfied.
- ace2358 3y agoThe article mentions that they are using virtualisation (arm Linux and Windows on Arm MacOS and M1) not emulation (Ubuntu and Debian x86 by emulation on arm on MacOS and m1). Emulation is slow sadly. Virtualisation is approaching native speed. “Both Ubuntu and Windows run at native speed since they are virtualized instead of emulated.”
- supriyo-biswas 3y agoI've had some great results using Orbstack's x86 Linux VMs, though primarily for Linux development.
- vbezhenar 3y agoYou can't run x86 Linux quickly on macOS. What you can do is to run ARM Linux quickly on macOS and run x86 programs inside of that Linux with Rosetta quickly.
- WanderPanda 3y agoWait you can use Rosetta inside a Linux VM?
- Tepix 3y agoIndeed: https://docs.getutm.app/advanced/rosetta/ https://docs.getutm.app/advanced/rosetta/
- easeout 3y agoYes, see Apple's documentation: https://developer.apple.com/documentation/virtualization/running_intel_binaries_in_linux_vms_with_rosetta https://developer.apple.com/documentation/virtualization/run...
- rlupi 3y agoAm I missing something? Is this quicker just because you are emulating only the program and not the OS?
- bombcar 3y agoYes. If you run x86 Linux in a VM on an M1 you are emulating/translating every single instruction; with a native OS you are only translating the application.
- vbezhenar 3y agoIt is quicker because Rosetta is a proprietary Apple technology which apparently works superb, but only supports userspace code. Emulating x86 with qemu does not work as fast, unfortunately. I'm not qualified enough to judge whether it's qemu shortcoming or it's just not possible to emulate entire VM as efficiently, but the practical result for today is that you want to use Rosetta.
- j-a-a-p 3y agoYes, before installing read that UTM uses Qemu and did not pursue it any further. AFAIK only Mac runs on apple silicon, everything else is emulated.
- easeout 3y agoAs I understand it, an aarch64 Mac can virtualize aarch64 Linux and does not have to emulate it. Here's an Apple sample project: https://developer.apple.com/documentation/virtualization/running_gui_linux_in_a_virtual_machine_on_a_mac https://developer.apple.com/documentation/virtualization/run...
- Aaron2222 3y agoThere's both Apple's Hypervisor framework (a lower-level framework for hypervisors to use to avoid needing a kernel extension), and Apple's Virtualization framework (which is a higher-level framework that lets you run Linux and macOS VMs). QEMU supports virtualization on macOS with the HVF accelerator, which uses the Hypervisor framework. UTM uses QEMU, supporting virtualisation through QEMU with HVF (as well as emulation of other architectures with QEMU). UTM also has support for using the Virtualization framework. But either way, with an ARM64 image, you'll be getting virtualization (unless you disable HVF when using QEMU).
- alberth 3y agoOrbstack I thought https://orbstack.dev/ https://orbstack.dev/ is what people are using these days instead of UTM. Am I mistaken?
- djur 3y agoIt's usually the case that people are using several different competing tools rather than one specific "latest" tool, isn't it?
- ago 3y agoOrbstack does not seem to run Windows.
- jemmyw 3y agoI only use utm to run chrome for testing because when run natively with selenium it steals the window focus all the time. I want the test to run while I'm coding and also see and interact with it.
- xpe 3y agoI don't know, but I reject the premise of the question (i.e. there is a consensus). But I'm no pollster. Speaking for myself, to virtualize arm64 *nix on an M1/M2 Mac, UTM has worked whereas other alternatives didn't work for me (such as VirtualBox). I haven't put my hands on the glowing orb yet; I'm sure it will be mesmerizing and tell me to do things like watch Inception (inside a VM) ^ 4. And Orbstack has a comparison chart with UTM: https://docs.orbstack.dev/compare/utm https://docs.orbstack.dev/compare/utm
- stephenr 3y agoFYI vbox isn't meant to run arm-on-arm VMs. The arm release is a "whoops it got out before it's ready" moment, and the current status apart from being buggy and slow, is that it only runs 32bit x86 VMs on arm.
- aliasxneo 3y agoMaybe it's still getting out there? First time seeing it, looks super promising. Thanks for sharing :)
- Aperocky 3y ago2020 M1 Air here, still running strong and will soon hit 3 years (bought the day it launched). So strong that despite finding the 15 inch air appealing just in terms of screen real estate, this current laptop doesn't feel dated. Especially since work provided me with an intel macbook pro with great spec but .. just doesn't compare with the exception of remote monitor count.
- hbbio 3y agoWe got it the same day! I coded >100k LoC (the whole core of the OKcontract codebase) solely on that machine, without any external screen. Working flawlessly since day 1.
- oars 3y agoOut of curiosity, is the poor posture which comes with using a laptop (mainly over extended periods of time) something you actively think about? This is the main reason why although I love my MacBook M1 Air keyboard and screen, I still use an external monitor and keyboard for the majority of my work.
- hbbio 3y agoGood point! Honestly don't think too much about it... probably I should care more. Just tend to change places regularly and run/swim daily. Also, I keep quite a large font to be able to be further away from the screen and having a small view into the codebase forces to know it better. (vscode fullscreen of course with clock/battery in status line, hidden dock)
- oarfish 3y agoWell, posture can be voluntarily modified, so it doesn't "come with using a laptop".
- bombcar 3y agoThe remote monitor was huge for me - when we learned that the M1 could only do one external (without dirty tricks) I held off until the M1 Max. Multiple monitors is just a baseline requirement in my opinion.
- mrd3v0 3y ago> Software "engineers" > For every extra cycle an hardware engineer can squeeze out of silicon, you will find a programmer adding one hundred cycles to their program[6]. In other terms, I fear that once devs figure out how powerful the M1 is, they will throw more "features" at it. Can we please stop replicating the "growth" fallacy into software ecosystems? Haven't we learnt enough about how unsustainable and damaging this is? I hope Electron/CEF die soon, and people get back to building applications that don't consume hundreds of megabytes of RAM to render a hello world.
- ramesh31 3y ago>I hope Electron/CEF die soon, and people get back to building applications that don't consume hundreds of megabytes of RAM to render a hello world. Yes, so we can go back to writing a hundred lines of imperative code to render hello world.
- lylejantzi3rd 3y ago4 in c. 11 in assembly. Not so bad, really. https://i.imgur.com/r2WRnZk.png https://i.imgur.com/r2WRnZk.png
- dijit 3y agoI was about to make a joke about how many lines are required for an electron hello world but it was even more than I expected. 11 for the HTML document template 7 for the boilerplate package.json 3 more for the scripts addition to package.json 3 more for the “devdependencies” 20 for main.js from: https://electronjs.org/docs/latest/tutorial/quick-start https://electronjs.org/docs/latest/tutorial/quick-start A fairer assessment would be C++ with Qt to be honest though.
- SubjectToChange 3y agowrite a hello world application in gtk or qt and see how much assembly you get.
- 3y ago
- jmole 3y agoUTM is great, but sort of useless for many of my most acute Windows needs: talking to some random peripheral or device that only has a closed-source x86 windows driver.
- snvzz 3y agoM1's lead architect is now in Tenstorrent, leading Ascalon. Ascalon is expected to be released in 2024.
- GhostWhisperer 3y agonot anymore: https://atomicsemi.com/about/ https://atomicsemi.com/about/
- snvzz 3y agoWhat am I supposed to see there?
- GhostWhisperer 3y ago> Atomic was founded by Sam Zeloof and Jim Keller. i assumed you were referring to jim
- snvzz 3y agoI was not. M1 was led by Wei-han Lien. Ascalon is led by Wei-han Lien. Jim Keller is (and continues to be) CEO of Tenstorrent.
- song 3y agoHow does UTM compare to parallels? I’ve used parallels for years but I’m curious
- cmdli 3y agoWeird, I've had the exact opposite experience with UTM. I need to get Ubuntu up and running with virtualization (emulation is too slow for GUI work), but the install simply hangs. If I forcibly reboot, the installed OS simply blackscreens and does nothing. I've spent a good few hours trying to get it to work (including turning off the display and trying to use the old tty terminal output), but eventually I gave up.
- prime17569 3y agoHave you tried updating UTM to the latest version? Many of these bugs have been fixed in newer versions. UTM doesn't auto update, so you have to check for updates yourself on their GitHub releases page: https://github.com/utmapp/UTM/releases https://github.com/utmapp/UTM/releases
- chii 3y agoThe auto update apparently only applies if you purchase from the app store.
- anonyfox 3y agoStill running a M1 Air 13“, now into my third job since, and refusing to bother with company provided computers. Still feeling as great as 3 years ago… will only upgrade if the next gen is substantially better (read: not just %faster somewhere). Can comfortably develop on my lap for a full day if needed, only MS Teams draws power like crazy, but apart from that 8 hours+. Best computer I ever had I think.
- matsemann 3y agoI'm a bit confused by the "still". How often would you expect to upgrade hardware? Keeping a computer for three years is completely normal for most people.
- edu 3y agoTrue… here I’m going wondering if it’s time to upgrade my 2017 MacBook Pro because a couple of keys started to fail and I’m having a hard time…
- bombolo 3y agoA thinkpad keyboard replacement cost ~50$ last time I needed it (and I thought it was unreasonably expensive).
- aktuel 3y agoI am using my Dell XPS 13 now for almost ten years. Still works perfectly.
- melling 3y agoI have a 10 year old MacBook Pro that works perfectly too. Unfortunately, Apple doesn’t allow OS upgrades. I’ll probably get an M3 and use it for 8-10 years.
- shujito 3y agoEver tried OCLP [1]? It allows for patched MacOS installs on officially unsupported Apple hardware. [1] https://dortania.github.io/OpenCore-Legacy-Patcher/ https://dortania.github.io/OpenCore-Legacy-Patcher/
- metalforever 3y agoI tried to clean the stuff off of my keyboard and accidentally broke it. Not amused .
- wiseowise 3y agoDid you clean it with a hammer or what?
- metalforever 3y agoJust a sponge that was lightly dabbed
- zer0zzz 3y agoI recently bought a M1 Air for $750 (25% less than regular retail) from amazon as a vacation laptop. I was expecting it to have quite a bit of performance limitation but the machine is actually fantastic. I think it may be one of the best values in a computer I have experienced in quite a while. This thing is so accessible in its affordability and performance that I think I am kinda over obsessing over if an application or service is mac-only.
- bombcar 3y agoThere used to be (and still is somewhat) an entire class of Mac-only software; some of it was extremely well made.
- zer0zzz 3y agoOmniGraffle and SubEthaEdit in the house! But in all seriousness I use Notes and Photos like a second brain to story memories and information.
- tomaskafka 3y agoIt has a price/power ratio off the charts, mainly because Apple wanted to show off what Apple Silicon can do while having to stay at $999 for Air. I love mine.
- seydor 3y agoI believed fanboyism was left at the 2010s
- paulmd 3y agoYou were wrong. Ever hear people talking about AMD gpus online? It’s crazy how normalized it is for certain fanboys to just call everyone who disagrees with them “brainless”, “ruled by mindshare”, “buying it for the blue bubble”, etc. I see it all the time even on HN, it is crazy how normalized the android and AMD fans have made it to just insult a group of people to their faces. Even in a tightly moderated community! But put out one article saying “yo M1 is a good laptop” and watch the “I thought we left fanboyism in the 90s!!!” replies flood in.
- snvzz 3y agoWhat about NVIDIA fanbois? They will buy NVIDIA, irrespective to whatever else is available at any given price point.
- raarts 3y agoLittle known fact is that the M1 does not support nested virtualization. As a college professor I really miss that during Docker classes. Supposedly the M2 does. Can anyone confirm Docker works under Windows on Parallels?
- brailsafe 3y agoI wish I could upgrade from my 13" mbp that's the last of the intel i5 series. My 16" M1 Max that I was issued at my last job was a dream, and now that I'm playing with SwiftUI and dealing with xcode, it's feeling slow and noisy. Unfortunately I was laid off, so no M1, and the ram upgrade to the 64gb or 96gb is insultingly expensive still. As nice as it is, it isn't a $4k boost in productivity.
- dasloop 3y ago$4k / ($your-total-cost * 3). Assuming 3 years of ownership. Tools are not only a laptop but the idea, I believe, is valid.
- brailsafe 3y agoIf it's worth upgrading to, it's worth keeping for way longer than 3 years imo, but even then the amortized cost is quite high.
- paulmd 3y agoB+H has been periodically running deals on the loaded M1 Max 10C/32C 64GB/4TB for $3000-3200. https://slickdeals.net/f/16807523-apple-macbook-pro-16-2-laptop-late-2021-m1-max-chip-64gb-ram-4tb-nvme-2999-free-shipping https://slickdeals.net/f/16807523-apple-macbook-pro-16-2-lap... M1 Max doesn’t get the HDMI 2.1 port (although you can coerce some cablematters adapters to do it), or the Wi-Fi 6E, and the M2 Max is generally faster especially in gpu (at the cost of higher power - perf/w doesn’t change much) but in general it’s not worth paying $2k more for.
- paulmd 3y ago(to be specific: M1 Max has HDMI 2.1 (including things like HDMI Org VRR afaik) but it's limited to 4K60. M2 gets 4K120 and some other features. As always, examine each device for the feature support you care about, because HDMI 2.1 completely supplants the HDMI 2.0 standard and no HDMI 2.0 certs are being issued anymore, so, "HDMI 2.1" devices can range between 4K120/8K support with 10-bit deep color, and 4K60 support with 8 bit support and no VRR or any other features. Each individual feature is treated separately, a HDMI 2.1 receiver could support 4K120 but not 4K, and so on.) And of course, this might not be the best time to be spending even $3k. But it doesn't have to be $5K for a fully loaded M2 or $4k for a decently loaded one. $3k gets you a lot of laptop too, just not the M2 right now. Refurb is another option... you can do a 64GB/1TB with the M1 Max 24c GPU (vs 32c) for $2550 via refurb store if you can get the edu or mil/veteran discount. Personally for another $500 I think the 4TB and the nicer GPU would be worth it but again, it edges the cost down quite a bit. Woot also has been carrying "manufacturer-refurbished" M1 Pro/Max for pretty good deals recently. IIRC the 16GB/512GB is $1550, and you can get 32GB/1TB for around $2100. And because it's manufacturer-recertified (Apple) it's eligible for applecare.
- bloopernova 3y agoThe M1 is great, but I really dislike the limitation to 2 external displays unless you get the ultra model CPU. I've just gotten really used to my portrait landscape landscape setup! And of course I'm an outlier so corporate IT won't buy me an ultra CPU version. I guess that it's to force people to pay more, but it feels like such an arbitrary decision. Sure, restrict it to 2x6K displays, but I'm using 3x4K displays that the Intel MacBook Pro handles just fine. Also, it's a real hassle trying to explain to angry developers about why their 4 year old ancient x86_64 arch docker containers won't work natively. (The containers crash under Rosetta emulation) Compiling Emacs in 5 minutes vs 10 on Intel is really nice though!
- tmpX7dMeXU 3y ago> I know it’s to force people… I’ve seen the longstanding understood technical explanation for this limitation. I can’t recall what it is now, but it seemed more than plausible at the time. Of course, ‘Apple bad’ is always going to be more viral. And, of course, you can take any hardware component and “just add…” it to max spec.
- bloopernova 3y agoI'll edit "I know" to "I guess". Sorry, I just woke up and saw this thread while making coffee.
- bombcar 3y agoM1 Pro and greater break that one monitor limit. There is also a trick with external docks that can get an M1 to use two external monitors but I just got a Max.
- bloopernova 3y agoEDIT: I think we misunderstood each other, sorry about that! You were referring to 1 external display, I was referring to 2 being the limit of the Pro Apple CPUs. ---- This says otherwise: https://support.apple.com/kb/SP858?locale=en_US https://support.apple.com/kb/SP858?locale=en_US M1 Pro: 2 external displays. M1 Ultra: 3 external displays. https://support.apple.com/en-us/HT213503 https://support.apple.com/en-us/HT213503
- hdjjhhvvhga 3y ago> Both Ubuntu and Windows run at native speed since they are virtualized instead of emulated. Coudl someone explain it to me how it's possible? Because their website clearly says "On Intel Macs, x86/x64 operating system can be virtualized. In addition, lower performance emulation is available to run x86/x64 on Apple Silicon" - and Windows on ARM64 is still in a preview.
- jeffrallen 3y agoMeh, I have some old screwdrivers that still work too. I just don't get hardware fetish. Just boot it up, run code, shut it down, and go enjoy summer and/or winter.
- rcarmo 3y agoI went back to an M2 Pro mini recently, and have mostly the same experience: https://taoofmac.com/space/blog/2023/06/22/1200 https://taoofmac.com/space/blog/2023/06/22/1200
- miki123211 3y agoI have to pitch in and recommend Orb Stack[1] for virtualization here. If you need WSL-style, terminal-only Linux VMS or want Docker without the bloat of Docker desktop, it's the perfect tool. If you go with Alpine as your distro, the whole thing takes under 200mb of disk space, and less RAM and CPU than most Electron apps when idle. It can do most things that WSL can do, Finder integration, lightning-fast, extremely easy installation, VS Code integration, running Mac commands from Linux and vice versa, effortless file sharing and network connections between the host and guests, fully terminal-based management, out-of-the-box integration with things like "open" and "pbcopy", VPN / proxy detection and autoconfiguration, it can even use Rosetta instead of Qemu for running Intel binaries, which makes them faster than on quite a few Intel laptops. I'm not affiliated with the company, just a very happy user. [1] https://orbstack.dev/ https://orbstack.dev/
- glimshe 3y agoWhen I saw the title I thought they were talking about the Korg M1 synthesizer (which also deserves an ode) :).
- teknico 3y agoI wasn’t the only one, good. :-)
- caycep 3y agoi actually have vmware fusion for running windows apps and things, wonder if i should just switch wholesale
- teknico 3y ago> It is not often I am blown away by a piece of hardware. Indeed. The Korg M1 was definitely a milestone in the history of music synthesizers. Oh wait…
- bitsandboots 3y agoI have an m1 mbp and a asus zephyrus g14 of similar vintage, and I have to say day-to-day, stock, the m1 mbp can get better battery life idle, and is less prone to getting into a state in which its fans need to activate. I'd say they can both get over 10 hours of battery life easily which gets into the point where who cares anymore, but it's easier to get the asus to drop to only 5. But, speed-wise, I haven't noticed a difference. They're both snappy. In fact the asus would be faster for all practical purposes of mine because: * macos has comically bad UX, it wishes for me to use the mouse far more often than it should, and fights me on keybindings. * programs like blender and stable diffusion just aren't optimized for apple. they're optimized for nvidia. i can't say if the m1 gpu is actually good, because nobody seems to care to support it, which brings me to my final point: it doesn't much matter if m1 is or isn't good as long as it's exclusive to apple's walled garden. if I can't put it in my PC, it may as well not exist, both from a user point of view but also support of developers. The best outcome of the m-line of CPUs would be for hardware competitors to make another great ARM chip, that I can actually use elsewhere.