Hacker News new | ask | show | jobs
by smspf 2028 days ago
No. Because (in no particular order):

- it shouldn't be the community's (or a crowd-funded dev's) responsibility to provide software support for hardware produced by one of the largest companies out there (bonus: with zero hardware specs);

- Apple could make all this futile with a push of a button (SecureBoot can be disabled for now, but what guarantees are there this won't change?);

- other arm64 machines will be available soon enough, most if not all of them with publicly available specs;

- I do not own an M1 machine, nor do I plan on buying one;

From a technical perspective, it's doable. Looks like it has UEFI and can run Windows. But we know nothing about possible silicon errata and required driver changes (or at least I don't).

Anyway, I'm sure others would like to see this happening and would actually pay - hopefully the Twitter poll will reveal whether this is actually worth it.

Disclaimer: I ported things to arm64 for a couple of years as a contractor.

3 comments

For the record, I disagree with some of your points, but the one point I agree with is really important.

There's no clear guarantee that there will be other performance-competitive arm64 CPUs in laptops anytime soon. I don't think anyone has as much incentive as Apple does. Who else is as incentivized to make a laptop/desktop-class arm64 chip? Maybe ARM themselves ... but without a mainstream OS to run it on (with mainstream software available for it), I don't see it happening in the next 5 years. Its a chicken-and-egg problem that Apple is uniquely suited to address with their vertical control over the Mac ecosystem (hardware/dev tools/OS/competitive software).

Server chips, maybe - but we can already see with Azure that competitive x86 chips from AMD have killed Microsoft's plans to deploy arm64 on their cloud service.

But this:

- Apple could make all this futile with a push of a button (SecureBoot can be disabled for now, but what guarantees are there this won't change?);

This is huge. We could all contribute to getting Linux ported to M1, and then Apple could shut us down with little or no effort. And ... maybe they won't? They probably won't? But who knows? Why build an ecosystem around a hostile hardware vendor?

> Server chips, maybe - but we can already see with Azure that competitive x86 chips from AMD have killed Microsoft's plans to deploy arm64 on their cloud service.

I have heard a theory that ARM Servers have a difficult time because there aren't really many developer machines that run ARM. With Apple changing that, there is a chance that the next round of ARM server chips will have better success.

I think this a contributing factor, but not the whole story. Another part is in order to switch to arm64, your entire software stack needs to support that architecture. If you are using linux and open source software, you'll be fine for most, maybe all of that stack, especially if you are willing to compile things yourself. But it just takes one component to block the transition.
I see it as being a bit like the move from Python 2 to Python 3, but easier.

Most software that can run on x86_64 can run on ARM after recompilation. Some software does require changes (anything using vector intrinsics for e.g.). But in general, the biggest barrier is the dependencies.

I agree. Cross-compiling is just awful in general, unless someone works really hard to put together a really high-quality cross-compilation toolchain which includes compiling, deployment, and remote debugging. That's what you get with the iOS and Android toolchains. But it just isn't there with Linux (or Windows) in general. There's a whole lot of work that's gone into the iOS and Android toolchains. It's easy to overlook that.
That seems silly. Developer machines rarely have AVX-512 or multiple TB of ram too...
Various people have suggested to Intel that they made a mistake by not selling desktop/workstation chips with AVX-512.
They DO sell desktop chips with AVX-512. I'm writing this from one: i9-9900X.
They do now. But for a long time they didn't (I think). Or maybe they always did but were unreasonably expensive.
Amazon have their own ARM server chips out since some time. They are competitive: https://www.anandtech.com/show/15578/cloud-clash-amazon-grav...
I know - which is why this is all so interesting.

But my point stands - 3 years ago Microsoft was talking about deploying arm64 to Azure, and those plans were cancelled with Zen 2. Given that GCP will be gone by 2023, that leaves half of the cloud titans with arm64, and the other half without. Will AMZN sell Annapurna chips to other services? My guess is they won't.

Someone has to make arm64 chips for other data centers and cloud providers, and Cavium/Marvell and Ampere have failed trying. It's a huge investment for an uncertain payoff. Annapurna had buy-in from the rest of Amazon.

You do know there is a version of Windows for ARM64 already, right? It was largely hampered by the speed of the available CPUs, but it does exist.

What I’m really curious about is how the ISA for the M1 is different from the CPUs Windows for ARM already supports. And as others have mentioned — I think GPU support will be more difficult, but I don’t have any data to support that.

But, it’s not like alternative (and mainstream) OSs don’t exist for ARM64. Maybe with some faster ARM64 CPUs, this could be the push to really make ARM a viable architecture for more than just Macs.

You do know there is a version of Windows for ARM64 already, right?

You do know that there's no software available for it, right? Without software, arm64 Windows is not a viable operating system for an arm64 laptop. ARM Windows is as relevant as MIPS Windows or Itanium Windows without the huge ecosystem of software you get on x86.

And who goes bankrupt first to build this platform? Is it the laptops makers who lose millions investing in laptops that almost no one will buy because there's no software for them (actually, they already did that). Or is it the software devs who lose millions porting their software to laptops that no one owns? When Apple says the future is ARM, everyone knows the hardware will be coming and they'd better fire up their IDEs. There's no such confidence in ARM Windows.

> When Apple says the future is ARM, everyone knows the hardware will be coming and they'd better fire up their IDEs. There's no such confidence in ARM Windows.

Pretty critically, Apple was able to modify their chips so that they can efficiently emulate x86 code. Microsoft will not be able to do the same.

There is plenty of linux software that runs on arm64 though. Even if windows remains the dominant deaktop OS, there is certainly a niche for developers and other who would want to run linux on a high-performance arm64 laptop. And then there is chrome OS.
I don't think the "developers who want a high performance ARM laptop" niche is large enough for any serious hardware manufacturer to address.
You can't design a desktop-class CPU for a market niche. Even board-level design doesn't scale that way - every good linux laptop on the market is actually a Windows laptop that's had linux installed on it and benefits from the economies of scale in the Windows market (as much as it saddens me to say this, typing this on a thinkpad running fedora 33).
Fujutsu have made some arm chips which could be interesting for servers if they ever get out of the HPC segment which I think they are in exclusively for now. Specifically the A64FX.
Eventually they will come. And I think they will be linux laptops, not windows. The legacy support of closed source software windows has is working against them atm. Qualcomm for example already has hardware that is one or two iterations away from being competitive with the M1( with different strengths and weaknesses) and they can mainline their drivers if they want.
I agree that competition will come, but I am skeptical it will be from Linux. Linux has less than 2% of the desktop market share (that includes laptops). Where's the payoff for the huge investment required to make a dent? The numbers just don't add up. Apple has made this happen using their massive iOS product revenue to fuel their custom CPU development teams.

https://gs.statcounter.com/os-market-share/desktop/worldwide

As you say, Qualcomm is probably the closest to being competitive, but there is a lot of work to do to catch up. Nvidia is trying to acquire ARM, so they seem to be interested in moving into the space. Samsung and AMD are now working together in ARM processors, so they are another player. Intel used to have an ARM presence via their DEC acquisition, but that was sold to Marvell about 10 years ago. Marvell might move into the space. There are also some ARM startups, some of which were founded by Apple engineers. Lots of activity. Intel is probably the biggest loser in all of this. Sad to see that. They will respond, but it will take time.

At any rate, in terms of desktop market size, Windows is the biggest (76%) and getting a chunk of that processor revenue is a big enough payoff to warrant the required investment. Doubling or even tripling Linux desktop share is comparatively small potatoes. Microsoft is mostly agnostic so they will encourage cannibalizing X86 Windows in favor or ARM Windows rather than lose market share. I think we are going to see a big uptick in ARM Windows investment and product announcements.

Eventually they will come

Perhaps - if it makes sense, cost/performance/power-wise to put a core like that in an Android mobile phone. I guess it would? But in the next 5 years?

Remember that anything Qualcomm makes will be optimized for mobile phones and only mobile phones. They won't waste any die-area at all on anything that isn't required by the Android phone market. The Android phone market is the only market for these chips that sells enough units to pay for their design, and it's fiercely competitive.

Especially with ARM's own designs improving so much and Samsung abandoning their own under-performing designs in favour of ARM's, Qualcomm is going to get a lot more competition in the next few years.

Anything they put on those chips that makes them more expensive or use more power than competitive chips is going to cost them design wins. No way will they sacrifice 10% of their mobile market for some pie-in-the-sky, maybe-maybe-not ARM laptop market that doesn't exist and will depend on lots of theoretical buy-in from Microsoft/Redhat/Canonical/Adobe/Lenovo/Dell/etc.

The legacy support of closed source software windows has is working against them atm.

That's pretty outlandish. Try saying that to someone who uses Excel or After Effects or Photoshop for their work. A performance linux-based arm64 laptop has everything working against it that a windows arm64 laptop does, and arguably even more.

>it shouldn't be the community's (or a crowd-funded dev's) responsibility to provide software support for hardware produced by one of the largest companies out there

You must be thinking of a different Open Source community than I am, because the Open Source community I know thrives off of providing community support for software on major vendor's hardware.

I submitted arm64 patches to OSS ranging from the kernel to the most obscure userspace applications.

All my contributions required some support or at least confirmation from the hardware vendor that my assumptions were correct - e.g. I submitted a patch for a GICv3 errata on a specific chipset; I had to confirm with the vendor that my findings were correct - sure, the patch "worked", but was it doing the right thing or just hiding the real issue? (e.g. why did writing zeros to some magic register fixed the problem we observed? was it a hardware issue or a software issue in the kernel? without feedback from the vendor, such things are a lot harder to isolate and fix properly).

I agree about OSS thriving on major vendor hardware, it's just that Apple is special in this case and intentionally makes it hard for the OSS community to provide support for their hardware.

It isn't UEFI-based, it uses iBoot. Proprietary up and down.
My bad, I didn't do proper research when writing that comment. Thank you for the correction.

And that's too bad, UEFI would have been easier to deal with imo.