Hey, l’m trying to parse the seemingly small differences between M1pro 8 and 10 core laptops. I’m not sure there’s going to be a huge difference in performance for my uses. But I did wonder if the 8core binned chips might be slightly less reliable being that they are already ‘defective’. I plan on using this computer for a very very long time so maybe some discrepancies might show over the lifetime. Have you guys got any thoughts on this? I’d love to hear them if you do.
Reliability is not an issue. Yield engineering schemes like these involve adding extra circuitry. You have to identify up front the entire block which can be disabled if there's a defect inside and provide for fully disconnecting power, ground, and signal connections to that block (defects can cause electrical shorts inside the block so it needs to be electrically isolated). The end result is a defect that's just sitting there, inert, no power flowing through to create a hotspot that can cause worse problems to develop over time.
The other thing to contemplate is that even a 10 core M1 Pro has some things disabled, because there's a large amount of invisible yield engineering going on everywhere.
It's all about defect density - the average number of defects per unit area of the wafer. The bigger a block of circuitry, the more likely it will contain a defect.
So what's a big percentage of the floorplan of any modern chip, and therefore problematic from a yield perspective? Memory. Modern high performance SoCs have lots of on-chip memory: system-level cache, CPU L1/L2/L3 caches, GPU tile memory, and so on.
In any even moderately modern process node, every moderately large memory has redundancy built in. Say you set out designing a 128 KiB SRAM array. First you split it into subarrays - let's use an eight-way split as an example, so eight 16 KiB subarrays. Then you add an extra subarray, and the circuitry necessary to assemble a fully functional 128 KiB memory out of eight of the nine subarrays.
People spend a lot of time analyzing the economics of this and yes, it can and does make a ton of sense to waste money (because die area is money) on redundant structures so that you can yield good and fully functional chips from die that had defects on them.
I guarantee you that there are lots of memory arrays in M1 and M2 chips designed this way. It is literally unthinkable that there are none.
I don't believe the 8 core chips are a result of binning. There are so many other parts to these chips that it would be vanishingly improbably that two GPUs (and only two GPUs) wouldn't work after production. These chips are manufactured with either 8 or 10 working GPUs. That's all we know. There will be no difference between the two 8 and 10 core versions over their lifespan other than performance.
Nah. The point of 8/10 core GPU chips is yield enhancement. GPU cores are large blocks, therefore they are a risk for the same reason that memory is a risk. In this case, the economics are a little different since whole GPU cores are larger structures than memory subarrays, so they're selling parts with fewer functional GPU cores at a lower price rather than scrapping every part that has so much as a single dead GPU core.
Yes, there will be some "8-core" chips which have 1 or 2 functional GPU cores disabled. Yield engineering includes trying to predict how pricing will influence demand for the different harvested variants. If pricing drives excess consumer demand for the 8-core parts, well, that's OK, you can just convert some of your 10-core output to 8-core and it's all good. But the reverse condition - a glut of 8-core and shortage of 10-core - is bad. You can't fix it by shipping some of the 8-core parts as 10-core, so consumers are going to be unhappy about the delays on 10-core parts.
So Apple works together closely with TSMC on yield predictions and engineering, and with themselves on consumer pricing, trying make it likely that they will reliably have somewhat more 10-core chips than they need. How much more? Who knows, they're paying someone (or several someones) big bucks to do the math trying to finesse that question. They don't want to generate lots of shortages, but they also don't want to leave money on the table by selling too many 10-core parts as 8-core.
Sorry, I should have been more clear. What I was trying to say that disabling defective GPU (or CPU) units is unlikely to be an effective binning strategy because there won’t be that many chips with these kinds of defects. Or, to put differently, it’s very unlikely that many of the binned chips actually have defective GPU cores. You’d really need the stars to align in a very particular way to get two defective GPU cores and nothing else (or to get two defective CPU cores in two different clusters). That’s why I believe that this is revenue optimization: Apple simply arbitrarily disabling cores on otherwise fully functional chips to create different configurations at different price points. Note also that all M-series chips ship with the full caches, there is no binning there.
See above re: caches. I 100% guarantee that Apple is using redundant structures in memories to enhance yield. It's the industry norm.
It's illogical to say that the stars need to align. Defects are (mostly) randomly placed, so the key question is: what structures are large, and therefore most likely to contain a defect? GPU cores are not a tiny structure, they're large, and if you're unlucky enough to have a defect hit outside a memory (which are often fully repairable) but inside a GPU, it's nice to have the option to turn that entire GPU core off and still sell the part.
Apple does even more yield harvesting than you see in the Mac product lineup; for example IIRC several AppleTV models have had A-series chips with fewer enabled CPU or GPU cores than the phone version.