3 ms·
> One of the reason's Apple has such a big lead, according to all the discussion I've seen here on HackerNews is that it's because Apple is on a newer chip proc
by GeekyBear 4y ago
> One of the reason's Apple has such a big lead, according to all the discussion I've seen here on HackerNews is that it's because Apple is on a newer chip process (5nm) whereas everyone is behind, and that if the competition was on a better process the differences wouldn't be as stark.
It's a reason, but far from the only reason.
Go back and look at the comparisons between Intel and AMD's x86 cores vs. Apple's Firestorm big core at the M1 release.
Apple devoted much more die size to decode, execution units, the ability to reorder instructions, and cache, for instance.
>What really defines Apple’s Firestorm CPU core from other designs in the industry is just the sheer width of the microarchitecture. Featuring an 8-wide decode block, Apple’s Firestorm is by far the current widest commercialized design in the industry.
Other contemporary designs such as AMD’s Zen(1 through 3) and Intel’s µarch’s, x86 CPUs today still only feature a 4-wide decoder designs (Intel is 1+3)...
https://www.anandtech.com/show/16226/apple-silicon-m1-a14-deep-dive/2 https://www.anandtech.com/show/16226/apple-silicon-m1-a14-de...
>On the Integer side, whose in-flight instructions and renaming physical register file capacity we estimate at around 354 entries, we find at least 7 execution ports for actual arithmetic operations. These include 4 simple ALUs capable of ADD instructions, 2 complex units which feature also MUL (multiply) capabilities, and what appears to be a dedicated integer division unit.
https://www.anandtech.com/show/16226/apple-silicon-m1-a14-deep-dive/2 https://www.anandtech.com/show/16226/apple-silicon-m1-a14-de...
>A +-630 deep Reorder Buffer is an immensely huge out-of-order window for Apple’s new core, as it vastly outclasses any other design in the industry. Intel’s Sunny Cove and Willow Cove cores are the second-most “deep” OOO designs out there with a 352 ROB structure, while AMD’s newest Zen3 core makes due with 256 entries, and recent Arm designs such as the Cortex-X1 feature a 224 structure.
https://www.anandtech.com/show/16226/apple-silicon-m1-a14-deep-dive/2 https://www.anandtech.com/show/16226/apple-silicon-m1-a14-de...
>On the cache hierarchy side of things, we’ve known for a long time that Apple’s designs are monstrous, and the A14 Firestorm cores continue this trend. Last year we had speculated that the A13 had 128KB L1 Instruction cache, similar to the 128KB L1 Data cache for which we can test for, however following Darwin kernel source dumps Apple has confirmed that it’s actually a massive 192KB instruction cache. That’s absolutely enormous and is 3x larger than the competing Arm designs, and 6x larger than current x86 designs
https://www.anandtech.com/show/16226/apple-silicon-m1-a14-deep-dive/2 https://www.anandtech.com/show/16226/apple-silicon-m1-a14-de...
Of course since AMD and Intel sell chips directly, holding down die size was directly linked to the amount of profit they could make per wafer. Now that there's more competition, we've seen them do things like radically expand cache sizes.
- snvzz 4y ago>and cache, for instance. A necessity. ARM code density is awful, thus a huge L1 is needed to compensate. This is costly, and ARM's Achilles heel.
- GeekyBear 4y ago>No, x86-64 is just as inefficient as AArch64 these days, because of all the REX prefixes. Almost every instruction needs one and it bloats the size tremendously, to the extent that most x86-64 instructions are just about 4 bytes. https://news.ycombinator.com/item?id=19329128 https://news.ycombinator.com/item?id=19329128
- snvzz 4y agoAbsolutely. x86-64's code density is shit. But so is AArch64. The point being, it is a bottleneck and it's possible to do far better. RISC-V has (by far) the best code density among 64bit ISAs.