40 ms·
Given how smooth Apple's transition from PPC to Intel was, and how much experience Apple has with ARM in their portable lines -- if/when the complete transition
by icanhackit 8y ago
Given how smooth Apple's transition from PPC to Intel was, and how much experience Apple has with ARM in their portable lines -- if/when the complete transition to ARM happens it'll probably be a brief blip on everyone's radar and likely increase competition both price and performance-wise in the desktop sector.
What's stopping Apple from adding hardware-level emulation to their SOC's, even if it's only partial functions, to ensure cross-compatibility doesn't take a serious toll on performance? x86 would be patent-encumbered but I'm sure there are a few creative ways to reduce that burden.
- RcouF1uZ4gsC 8y agoAt the time that Apple went from PPC to x86, x86 had a significant performance advantage such that emulation wasn’t a big deal. Currently, there is no such advantage. In addition, many professional Mac programs make use of SIMD instructions such as AVX. Trying to emulate these will further increase the performance penalty. In addition, x86 has relatively strong memory ordering compared to ARM. There may be code that get away with stuff on x86, that will cause subtle bugs on ARM. Again, it is likely professional programs that do this.
- wolfgke 8y ago> In addition, x86 has relatively strong memory ordering compared to ARM. There may be code that get away with stuff on x86, that will cause subtle bugs on ARM. Again, it is likely professional programs that do this. I asked on HN in the past how Microsoft intends to solve the problem for x86-32 emulation on ARM that x86 has a stronger memory model than ARM: > https://news.ycombinator.com/item?id=14318877 https://news.ycombinator.com/item?id=14318877 and got an interesting answer: > https://news.ycombinator.com/item?id=14320799 https://news.ycombinator.com/item?id=14320799 To put it shortly: the Qualcomm ARM processors (Snapdragon) seem to be able to also to support a strong memory model which makes this emulation possible. I guess that Apple should also be capable to build such a feature into their ARM chips.
- saagarjha 8y ago> In addition, x86 has relatively strong memory ordering compared to ARM. There may be code that get away with stuff on x86, that will cause subtle bugs on ARM. Again, it is likely professional programs that do this. This should not matter for an x86 emulator?
- imtringued 8y agoYes it doesn't matter for the x86 emulator but it matters for the humans using it. Every single difference between the target architecture and the emulating architecture costs you performance. In a CS centric world that is completely disjoint from physical laws it may not matter but if you have infinite time why waste it on waiting for an emulator, why not just rewrite the software in the first place? Unfortunately we are physical beings with limited time. If the emulator isn't fast enough then no one is going to use it.
- saagarjha 8y agoSure, but it won't cause "subtle bugs" as the parent comment points out. It'll just make emulation a bit slower.
- jdietrich 8y agoIt's worth bearing in mind the phenomenal level of expertise that Apple have in ARM SoC design. The A12x is in many respects competitive with u-series i7 processors, despite a significantly lower TDP. The A12 Bionic has a vast performance advantage over any other mobile SoC. We don't know what they could do with a much bigger die and a much bigger power budget, but my expectations are high. It's pure speculation on my part, but I wouldn't be hugely surprised if the first ARM-based MacBook could match the performance of the previous Intel-based machines when running emulated x86 code and substantially outperform them when running native code.
- teknopaul 8y agoQemu performance when emulating other cpu arch. is not good. A lot of fast virtualization we are used to is done by the CPU and is all x86. I think it would be harder to get comparative performance software emulating x86 on arm. Pure speculation on my part too.
- wolfgke 8y ago> It's pure speculation on my part, but I wouldn't be hugely surprised if the first ARM-based MacBook could match the performance of the previous Intel-based machines when running emulated x86 code and substantially outperform them when running native code. To me, this would be highly surprising - in particular if we are talking about x86 code that uses AVX instructions. If you want evidence, just consider the performance difficulties that x86(-64) emulators for game consoles that do not use x86 processors such as PS3 or XBox 360 have.
- calciphus 8y agoI can't honestly accept that the transition was "smooth". Devices that used to work and used to get updates simply stopped at one point. Because Apple likes to couple OS updates and app updates, and also believes backward compatibility is for [not their customer], I had to talk a grad student down when he sent his thesis to a department chair who opened it, saved it in a non-compatible version of Pages, and sent it back. He could not open that file without upgrading his...2 year old computer? The transition wasn't smooth unless you had a corporate backer who paid for your milti-thousand-dollar hardware regularly.
- icanhackit 8y ago> Devices that used to work and used to get updates simply stopped at one point. Which devices? I kept using my G5 iMac until 2008 without any issues and with regular OS updates. > Pages From what I recall, and perhaps what I'm thinking of happened further down the track, Pages had issues in spite of changes to hardware, not because of it. Apple pared back the functionality of its office software when it transitioned from paid to free software, breaking some of the formatting features.