Hacker Read top | best | new | newcomments | leaders | about | bookmarklet login

While it'd be neat to see, I think the hurdles that exist in moving from Intel to ARM are pretty high, and far higher than they were when they moved from the PowerPC range to Intel.

Just a few off the top of my head:

- The Mac platform, today, is much more widely used than it was in the PowerPC days. This is a double-edged sword. Apple can use their substantial weight to force ISVs to recompile[0]. These ISVs are unlikely to provide the next version for free. Some ISVs won't exist any longer, forcing one to run the application in whatever Rosetta-like compatibility later is produced. I can't speak to how well a translation application would work going from x86->ARM, but the only emulators I've seen that perform well are ones where the target platform is dramatically more powerful than the emulated platform (Nintendo emulators, etc). The impact to users on upgrading is very high and there are many more of them, now, which will get noisy. Their competition has also gotten better at producing more desirable competition (Surface Book, Windows 10[1])

- ARM's aims are performance-per-watt, not performance at all costs. I don't care if my desktop drinks electricity. I care if it does things quickly. I don't believe Apple will make this move until they can be assured that a processor can be developed for about the cost of an Intel equivalent and will perform as well[2].

- I'm foggy on the details, but my understanding is that App Store submissions are required to be done in a way that provides LLVM or other IL/VM language code instead of machine code. This could land them in a spot where re-compiling to a new platform can be done by Apple (assuming ToS have granted them that right), which is great ... for apps in the App Store. The mac platform app store isn't the only source of software.

- Apple would almost certainly have to design the processor as they have with their phone. "They've done it before, they can do it here" is a somewhat fair and unfair argument. Desktops have different design goals than phones/iPads. Notebook designs would probably fall somewhere in-between the two. To do it right, they probably have to support two new processor designs: one for "Pro Desktop" and one for a notebook that has more performance than their highest end mobile device, but sips power like their highest-end mobile device. The cost, all around, will be high: low-power/high-performance/cheap, pick two. Intel gives them high-performance/cheap and moderate power.

There are other, less important reasons, but in weighing pros and cons, I can't come up with a lot of benefits to doing this. The funny thing is that even as I was writing this, I could come up with plenty of counter arguments and the reality is that "Apple could actually pull something like this off". I am having a difficult time figuring out, though, what the upside is for them. Apple owning the processor doesn't buy them a whole lot. And while having a single set of CPU instructions[3] sounds like it might benefit ISVs, it really only helps mac-only ISVs. Most of those ISVs are going to have to target Intel platforms if they're supporting Windows. There would have to be a few other huge reasons to do this to offset the costs.

Personally speaking, I'd love to see something like this ... I'd probably find myself buying an Apple product[4].

Part of me (that more cynical side) me wonders if these rumors don't originate out of Apple as a way to keep Intel on its toes. Apple is a big customer and hints that Apple may jump ship to ARM keep Intel focused on improving the performance/watt ratio and likely helps them on price.

[0] And we all know it's not just a matter of changing the target platform for any moderately complex application

[1] Yeah, maybe not the best examples, but privacy elements aside, Windows 10 works, is pleasant to use and rarely crashes despite my running insider builds in the fast channel.

[2] I haven't looked too deeply into the server processors, but my sense is that they're desirable mainly because of the core numbers, almost as though the ARM processors are making up for single-threaded performance by throwing more cores at the problem. And that's probably a good deal for many/most server use cases. Many server tasks are simple as far as an individual thread is concerned, but multiplied by the concurrent use.

[3] Well, no, not exactly.

[4] For all of the same reasons these "insiders have [not actually] designed an ARM desktop", but also because my inner geek would like to play with an ARM desktop.



view as:

> I'm foggy on the details, but my understanding is that App Store submissions are required to be done in a way that provides LLVM or other IL/VM language code instead of machine code. This could land them in a spot where re-compiling to a new platform can be done by Apple (assuming ToS have granted them that right), which is great ... for apps in the App Store. The mac platform app store isn't the only source of software.

Apple calls this ”Bitcode“. It's not useful for portability between architectures, it's only good for adapting to smaller changes in instruction sets. (For example, maybe the current chip doesn't do integer division, but a future one does.)

Here's a discussion: https://news.ycombinator.com/item?id=9727599


Legal | privacy