5 ms·
I think the bigger story here is that computing based on ARM64 has been, and continues to, surround the traditional x86-64 territory. ARM dominates phones, and
by lars-b2018 6y ago
I think the bigger story here is that computing based on ARM64 has been, and continues to, surround the traditional x86-64 territory. ARM dominates phones, and is popping up in server environments as well, where it is cheaper to run for many workloads than X86-64. We have migrated to ARM based Gravitron processors to deliver our services at my company, and we have been able to reduce our AWS EC2 costs by 40% or so, with almost the same performance. The M1 based Macs certainly show the potential on the desktop. Other vendors will produce better, more competitive desktop power level chips, too, that are completely adequate for desktop computing experiences.
We are seeing the classic Innovator's Dilemma pattern whereby the lesser technology slowly overtakes the more brittle incumbent tech. x86 did the same with minicomputers, and then mainframe type workloads.
- rusticpenn 6y agoI do not understand why ARM is considered lesser technology. RISC was always considered to be better then CISC in many academic circles.
- oblio 6y agoWell, two main reasons: 1. Innovator's dilemma: https://en.wikipedia.org/wiki/The_Innovator%27s_Dilemma https://en.wikipedia.org/wiki/The_Innovator%27s_Dilemma ARM in this case is the underdog, attacking the incumbent x86. It is the lesser tech because it started from "below" (lower value niches not taken by the incumbent which prefers higher profit margins). 2. RISC vs CISC has never been settled. Until Apple (and Amazon super recently) produced their super recent architectures based on ARM, x86 was considered superior. Yes, RISC was theoretically better in the 80s and later 90s, but x86 has been reinvented successfully 2 times (micro-ops and x86_64) and scaled from 0.2MHz to 5Ghz. It's also a mix of CISC and RISC, it's not pure CISC now. Same for ARM, they've added various instructions which bring it closer to CISC. As far as I can see the only real difference these days is the constant length of instructions for ARM: https://erik-engheim.medium.com/why-is-apples-m1-chip-so-fast-3262b158cba2 https://erik-engheim.medium.com/why-is-apples-m1-chip-so-fas...
- dan-robertson 6y agoThe reinvention that gave x86 the advantage over (workstation) RISC was OoO execution in the Pentium. It’s a bit silly to think of x86 and ARM as being so different these days. Most x86 code looks a lot like it was produced for a RISC chip and ARM has been gaining some more complex instructions and addressing modes. Academics may have felt that RISC was better than CISC for a long time but I don’t think they were predicting the world of today so much as they were incorrectly predicting the near past. If RISC were so much better then we’d have lots of workstations running on modern Alpha or PA-RISC systems. But we don’t see that.
- oblio 6y agoAh, yeah, forgot to mention Out of Order Execution. > Academics may have felt that RISC was better than CISC for a long time but I don’t think they were predicting the world of today so much as they were incorrectly predicting the near past. Plus you know, academics have been known to be wrong. That's why there's even a saying for it: science advances, one funeral at a time. People are emotional and get attached to their pet theories. There are many examples of this. It's going to be interesting to see how CPU/GPU tech advances the next few years.
- raverbashing 6y ago> Most x86 code looks a lot like it was produced for a RISC chip Well yes I don't think the x86 BCD instructions are still being used liberally, or AAA, or CONS/SCAS etc
- socialdemocrat 6y agoBut ARM64 instructions are all fixed width still right? And how specifically are these instructions complex? Do they produce an unusually high number of micro-ops when decided?
- temac 6y agoYeah CISC vs RISC thing barely makes sens anymore. It could only matter in the context of hand-programmed and low frequency processors. What remains of "it" (at least in some people's mind) that is still relevant today on major ISA is clearly instruction encoding, but you could totally make a CISC with fixed length instruction. You could also make a RISC with (highly) variable length but... just why? And actually why make a highly variable length ISA at all regardless of if the ISA is RISC or CISC? The real reason that x86 has an highly variable length is only historical. When you only decoded one at a time it did not matter that much. So maybe you wanted some big ones for convenience but it would be a shame to make them all big. So the 8086 had instructions of 1 to 6 bytes (up to 10 with prefix?). And then you had 32-bits with 16-bits compat, it seems it went up to 15 bytes, and then stayed at 15 max for AMD64... Today the most used x86 instructions are not that much different from ARM ones, and in a good number of cases actually even simpler. The simplest way to compare is to simply look at the assembly an optimizing native compiler emits, and lookup for what the emitted instructions are doing. The micro-ops of processor are actually quite dependent on the ISA. You could do neutral micro-ops, but I doubt this would be very efficient. So you can't really compare the complexity of ISA by the number of micro-ops issued, because among different arch and microarch the micro-ops are themselves more complex on some point and less on others, with tons of similarities with (core instruction set of) the ISAs they implement. Complex instruction for backward compat, special, or intrinsically difficult operations, are transformed to a potentially very high number of micro-ops, often looked-up in a ROM.
- neogodless 6y agoThis is a dynamic evaluation. Right now, ARM is a far superior technology to x86 for my smartphone use cases, and x86 is a massively superior technology for my high-detail PC gaming use cases. (It's split for things like development, now that the M1 is here. Personally I get my development done with 8-core 4+ Ghz x86 chips in Windows/WSL2/Docker, but others are getting development done with Apple Silicon M1 ARM chips!) Over time the "lesser" technology can become the greater technology for more use cases.
- wffurr 6y agoIs that latter case simply due to the availability of high performance GPU cards? If so, as soon as someone (Apple) makes an ARM chip with sufficient PCIe lanes, then it's only a matter of drivers...
- neogodless 6y ago> Is that latter case simply due to the availability of high performance GPU cards? It's a combination of things: * Apple has not indicated that they'll allow for third-party GPUs * Apple has not pushed for widespread gaming compatibility * Game developers prefer to reach the widest audience Apple would need the M1 successors superior in gaming computation and capable of marrying up to high-performance GPUs, write the drivers necessary AND get broad adoption of Apple gaming to factor into game publishing. This is all theoretically possible, but it didn't happen while Apple was using roughly the same high-end hardware available to PC gamers, so it's questionable (in my mind) that it'll happen when they are locking down their hardware further, and trying to use all their own hardware for gaming.
- bserge 6y agoWasn't that simply because there was less software available for ARM? And the first ARM chips were quite anemic in performance. That's not the case anymore, but the stereotype will persist for a while.
- Wildgoose 6y agoThe first ARM chips were blazingly fast and made their competitors performance look anaemic - they have been around since the mid-1980s. The real difference is they went the low-power route while retaining as much performance as possible, rather than depending on desktop power supplies and industrial cooling. One of the reasons this new chip is so performant is the "headroom" that this approach has given them.
- socialdemocrat 6y agoI wish I understood better why Acorn Archimedes did not do better in the market. It looked like they had many great computer models.
- pjmlp 6y agoEasy, IBM PC clones happened. Apple are the survivors of the vertical integrated home computers, and they only managed to survive by reverse acquisition of NeXT, and diversifying outside of the desktop market.
- jonhohle 6y agoOne of the three major consoles is ARM based and one of the best selling systems of all time. From last gen, the PS Vita was ARM based and considered high end for mobile graphics at the time. Apple has already crushed Intel in on chip graphics and Nvidia is heavily invested in ARM. I don’t think ARM and graphics will long be known for poor performance. As a fan of AMD, I hope they see the writing on the wall and are planning accordingly. It would not be surprising to see the successors to the PS5 and Xbox Series running on ARM.
- asveikau 6y agoThe complaint about ARM as I understood it was that they couldn't match Intel performance. The commentary around Apple seems to be that over the decade-plus where they iterated for iPhone and iPad, it's caught up
- bearjaws 6y agoARM instances are usually 10% cheaper than their equivalent instance. How exactly did you achieve such a dramatic reduction in cost? The graviton instances aren't faster than the Intel/AMD options, so you need at least the same number of instances unless something else changed.
- viraptor 6y agohttps://www.honeycomb.io/blog/observations-on-arm64-awss-amazon-ec2-m6g-instances/ https://www.honeycomb.io/blog/observations-on-arm64-awss-ama...