5 ms·
Lovely reminder of the mess x86 is. fp registers shared with mmx, sse registers (xmm), avx registers (ymm), and a truckload of them. Modern implementations ha
by snvzz 4y ago
Lovely reminder of the mess x86 is.
fp registers shared with mmx, sse registers (xmm), avx registers (ymm), and a truckload of them.
Modern implementations have extremely complex frontends, full of elaborate hacks to get performance despite x86.
Complexity breeds bugs, such as this one.
- userbinator 4y agoLook at the errata for typical ARM SoCs if you think x86 is bad. A lot of them aren't even publicly available.
- reisse 4y agoI wonder how much performance is really "despite" x86, and how much is thanks to it. To this day, x86 CPUs absolutely dominate everything in compute power. Sure, ARMs are better in performance-per-watt game, but the question of how to scale them to the level of high-end x86 desktop processors is still open. For now, I'd argue it's not even clear if that's possible.
- nine_k 4y agoAren't Apple M2 chips solid desktop-level processors based on ARM?
- api 4y agoHigh end Intel and AMD chips hold the performance crown but the M chips utterly destroy them on performance per watt. It’s not even close. It’s a mix of a simpler ISA, good core design, and small process nodes.
- erik 4y ago> It’s a mix of a simpler ISA, good core design, and small process nodes. It's also a design that prioritizes perf/watt, whereas CPU vendors tend to prioritize perf/area. (aka perf/$)
- kllrnohj 4y agoOther ARM SoC vendors do, absolutely, which is a big factor in why most other ARM SoCs are so far behind Apple's. But Intel & AMD less so, they tend to prioritize just outright performance since that's how they're nearly always compared & judged. Die size hasn't really been a constraint for them.
- toolz 4y ago> the M chips utterly destroy them on performance per watt. It’s not even close. AMD laptop CPUs easily compete with or even beat the M chips according to this comparison. https://www.cpubenchmark.net/compare/5215vs4104/AMD-Ryzen-7-7730U-vs-Apple-M1-8-Core-3200-MHz https://www.cpubenchmark.net/compare/5215vs4104/AMD-Ryzen-7-...
- josephg 4y agoHm; that shows TDP - but TDP is a pretty meaningless number these days. How is the battery life in practice? Are there laptops with AMD chips which can run all day like Apple's M1/M2 laptops?
- bigbluedots 4y agoOops, look over there for the new goalposts!
- josephg 4y agoThe context was this: > High end Intel and AMD chips hold the performance crown but the M chips utterly destroy them on performance per watt. It’s not even close. I think asking about battery life is pretty relevant.
- polishTar 4y agoStrongly agree. It's not moving the goalposts when the metric is useless. TDP means nothing nowadays because CPUs can significantly exceed them when turboing if they've got thermal headroom. IMO, real power consumption in joules over the course of a benchmark needs to be the standard when it comes to comparing efficiency.
- skykooler 4y agoI wish this was a more common benchmark for graphics cards - with newer graphics cards pushing higher and higher TDPs, it would be nice to have a way to look for "best performance while keeping power draw the same as the previous GPU".
- josephg 4y agoYep. And its a close race between Apple's ARM chips and the latest x86 chips from Intel and AMD. If GeekBench is to be believed, Apple's best chips are only about 10-15% behind the performance of the top x86 desktop class CPUs, despite only using a fraction of the power. Apple's M_ Max CPU variants come with a very hefty price tag though.
- kllrnohj 4y ago> Apple's best chips are only about 10-15% behind the performance of the top x86 desktop class CPUs, despite only using a fraction of the power. Power consumption scales non-linearly with clock speed. So you're comparing two variables that are dependent on each other. If you want a meaningful comparison, you have to align one of those variables. As in, either reduce x86 to M2 Pro/Ultra/Whatever's power budget and then compare performance, or align performance and then compare power. This is especially true for the desktop class CPUs where outright performance is the name of the game at all costs. AMD & Intel are constantly throwing upwards of 50w at an extra 5% performance, because that's what drives sales - outright performance.
- derefr 4y agoMakes me wonder what the highest perf would look like out of an arbitrary hypothetical multi-socket Apple Silicon system, vs an arbitrary multi-socket x86 system; where the only constraints for both systems are that the boards have a fixed power budget. (I.e. "who wins in a map/reduce task: a board that spends 1000W to power 4 Xeons, or a board that spends 1000W to power 20 M2 Ultras?") Too bad there are no bare/unsoldered Apple Silicon chips to try building such boards around. I'm sure, if there were, you'd find them all over AliExpress. I'd also be curious which of those two boards would have a higher BOM!
- bee_rider 4y agoWhat’s the fastest network for a M2 Ultra? Can we run some MPI codes?
- piperswe 4y agoYou could probably run a QDR+QSFP Infiniband card at around 32Gbps (minus overhead) through an external "GPU" enclosure. I don't see why MPI wouldn't work on Asahi Linux with such a setup once there's Thunderbolt support.
- jabl 4y agoQDR Infiniband is, like, 2007 level tech. Today we have NDR Infiniband where a typical 4xHCA gets you 400 GB/s. Seems like a hypothetical Mac cluster would be severely limited by this compared to the typical x86 based server clusters.
- bee_rider 4y agoI’m sure such a switch would be serving some pretty beefy nodes, though, right? Maybe the compute:communication can be held constant with less-powerful Mac mini nodes?
- piperswe 4y agoThe problem is that the Thunderbolt ports don't support that bandwidth, and there isn't any other way to connect PCIe peripherals.
- heavyset_go 4y agoNewer mobile AMD APUs get close to the M1 Pro's power usage while exceeding the M1's performance[1]. Those same APUs get even closer when compared to the M2 Pro[2]. [1] https://nanoreview.net/en/cpu-compare/apple-m1-pro-vs-amd-ryzen-9-7940hs https://nanoreview.net/en/cpu-compare/apple-m1-pro-vs-amd-ry... [2] https://nanoreview.net/en/cpu-compare/apple-m2-pro-vs-amd-ryzen-9-7940hs https://nanoreview.net/en/cpu-compare/apple-m2-pro-vs-amd-ry...
- nvrspyx 4y agoIsn't the M2 Pro more power efficient than the M1 Pro? At least it is according to [1]. So isn't it further away compared to the M2 Pro, not closer? Or are you saying that the M2 Pro is closer in performance to the Ryzen 9 than the M1 Pro, rather than in power usage? I'm not really knowledgeable when it comes to this, so perhaps I'm missing something. 1: https://nanoreview.net/en/cpu-compare/apple-m2-pro-vs-apple-m1-pro https://nanoreview.net/en/cpu-compare/apple-m2-pro-vs-apple-...
- pjmlp 4y agoExcept that Apple is long out of the server business. A mini rack isn't competition to a couple of Xeons.
- beebeepka 4y agoThey also have about 2-3 year lead in manufacturing, thanks to TSMC. Will retain that with "3nm"
- crest 4y agoWhat do you think made Intel Sandy Bridge to Skylake cores so dominant in single thread performance? It wasn't the great amd64 instruction set. Most of it came down to good implementation in a state of the art process node.
- beebeepka 4y agoI know. My 2500k wasn't reaching almost 5GHz with just a nh-d14 because they were struggling with the foundry, that was clear.
- reisse 4y agoThey're solid, but they're not the best. Top x86 CPUs are twice as fast. And power consumption just doesn't matter that much for a high-end desktop anyway.
- jbirer 4y ago>And power consumption just doesn't matter that much for a high-end desktop anyway." So that means that, using the same amount of power, Apple processors -are- faster.
- reisse 4y agoUsing the same lowest amount of power - yes, but that's moving the goalpost. You're not interested in power consumption that much if you're optimizing for maximum performance. Using the same highest amount of power - absolutely not, unless you could overclock Apple processor and prove that. Some things just does not scale, if you try to feed 100 amps @ 1.5v to an ARM CPU and run it on 6 GHz, it'll burn out.
- KptMarchewa 4y agoIs anyone else even trying? You won't have a market for desktop-level non x86 processor.
- heavyset_go 4y agoThere are ARM servers where performance per watt matters when they're running in data centers full of them. Pretty sure there are some relatively expensive ARM workstations out there, as well.
- kllrnohj 4y agoThe ARM servers use just as much power as the x86 ones and are typically slower as well. Same for the workstations. Apple makes a great ARM CPU core but nobody else does, and Apple ain't sharing.
- Symmetry 4y agoThe aspects of x86 that mean an x86 chip necessarily has to be worse than an ARM chip are very minor and mostly just relate to using a bit more energy on decode. The difference in engineer years in designing and testing a complicated x86 chip that works correctly versus an ARM chip, however, are pretty big.
- klelatti 4y agoSo you’re arguing that there is some magic secret sauce in the x86 ISA that makes it impossible for an ARM ISA CPU to match high end performance? The answer is no. The question of how to scale them to the level of high end x86 desktop processors is absolutely not open. It’s clearly a solved problem.
- nine_k 4y agoHaving dedicated registers for everything may be impractical, given the kind of instruction mix commonly fed to a processor. Registers are expensive highest-speed memory and should not stay idle if possible. Internally CPUs have large register files and register renaming circuitry anyway, so I suppose everything is shared with everything else, except maybe ESP and EBP.
- jcranmer 4y ago> fp registers shared with mmx, sse registers (xmm), avx registers (ymm), and a truckload of them The xmm registers are the low 128 bits of the ymm registers. So you're left with three register files, consisting of 8, 16, and 16 registers each. The only thing out of the ordinary there is the x87 register state, although maybe you'd consider the unusually small size of the register sets as out of the ordinary nowadays (e.g., RISC-V and AArch64 each provide 32 registers in their two register files).
- jabl 4y agoAVX-512 extends the vector registers to 32 (zmm0->zmm31).
- jcranmer 4y agoAnd adds I believe 7 mask registers. And is not implemented on the chip in question, making it a irrelevant for considering the complexity ostensibly leading to the hardware bug under discussion.
- cesaref 4y agoAlthough it has been discontinued by Intel in their latest 12th gen desktop processors.
- titzer 4y agoIt's been an interesting back-and-forth between the 1980s view of RISC being the killer ISA and Intel pushing the envelope on microarchitecture design (pushed by ever-harder process shrinks for more transistors and lower power). CISC has always had a little edge in code density, and Intel and AMD's deep pockets driven by consumer profits rocketing them past basically all other chips. With Apple roaring back with the M1, it seems due to a.) better, fatter, wider frontend decode, b.) huge ROB, c.) major power savings with integrated memory. Interesting to see such big leaps in CPUs still happening. Popcorn!
- kllrnohj 4y ago> major power savings with integrated memory. M1's integrated memory is completely generic LPDDR5. It's the same stuff the rest of the industry uses, there's no power savings here (and it's not any more "integrated" than AMD & Intel have been doing for half a decade or more, either) The primary interesting thing about the M1/M2's memory is the width of the memory bus, which is how it gets such huge bandwidth numbers. But if anything that's costing power, not saving it.
- titzer 4y agoIt takes a ton of power to drive a memory bus across a motherboard.
- kllrnohj 4y agoWhich the M1/M2 is doing as well... It's just soldered RAM, not on-die RAM. Completely off-the-shelf LPDDR modules that are shipping in dozens of other laptops. Absolutely nothing special about the RAM at all.
- titzer 4y agoDescribing it as "soldered" is not right. It's on the same package. https://en.wikipedia.org/wiki/Apple_M1 https://en.wikipedia.org/wiki/Apple_M1. There's no multi-centimeter hundred-plus-line bus to drive charges through. Pushing signals through those big long wires takes juice.
- baq 4y agoX86 bashing is getting really boring. Yes it has flaws and massive backwards compatibility baggage but eg. Arm doesn’t even have a standardized boot process.
- sitzkrieg 4y agoyea but x86 booting isn't exactly the bastion of quality. im glad doesnt have standardized boot process. there are too many specialized versions out there of course
- Vogtinator 4y agoSBBR and EBBR standardize the Arm booting process, but unfortunately many vendors just don't care.
- bluescarni 4y agoIt's eerily reminiscent of the x86 bashing that was going on in the early 2000s, only that in those days PPC was seen as the superior (new, baggage-free) ISA by Apple fanboys. Then Apple switched to x86, and from day to night we witnessed the magnificent spectacle of the entire Apple fanbase performing a whiplash-inducing collective pirouette towards the narrative that, after all, x86 was not so bad.
- snvzz 4y ago>but eg. Arm doesn’t even have a standardized boot process. ARM did not. There are efforts but they are recent, adoption is bad. RISC-V, on the other hand, put significant effort into this early on, preventing the situation ARM is in.