It makes me a bit sad that for ten years I took it for granted that Moore’s law is dead and notebooks are constantly overheating incapable computers just to learn that the whole issue was Intel messing up their process nodes.
It's both. It's harder and harder to grind out progress (and if you compare M1 to where the 90's-early 2000's exponential progression, we're not so close).
As it gets harder, it becomes more capital intensive and the probability of success on any given process node decreases. The marginal utility of a doubling of computing is likely decreasing with time, too.
At some point, these factors are going to compound to slow progress. Or: exponential progressions never continue forever.
I don’t think the marginal utility of doubling computing will diminish any time soon. As we gain more computing power, we just start doing more and more computation heavy tasks that weren’t possible before.
For example, VR games are notoriously demanding on today’s hardware, especially if you want to put that hardware in the headset.
And many applications get slower over time, not faster, as new features are added. This is especially true in an era of cross platform frameworks that are convenient for developers, but are much slower than native.
Marginal utility of anything decreases as you have more. And it obviously has in computing.
E.g. 20 years ago, you could buy a P3-1GHz for $200 or P3-750MHz for $100. So you'd pay about $100 more (2001) for 850 more Dhrystone MIPS.
Vs. modern processors where for a few hundred bucks you get >500,000 DMIPS in a package. You would not choose to pay $150 (2021) more for 850 more DMIPS (< 0.2% more performance).
I think this is true even if you consider things on a log scale; a doubling is worth less now than it was 20 years ago. Twenty years ago nearly anyone could tell the difference and would pay a bunch more for twice the performance, and now a big subset of the computing market wouldn't.
Doubling performance might not be directly noticeable for the average smartphone user as an example, but it is definitely noticeable to the average app developer, who can spend more time on user experience and less time on optimization.
Better performance also enables new forms of technology, such as AR, VR, ray tracing, advanced image processing for smartphone cameras, etc. These are visible and sought after by regular users.
Users can tell the difference, it’s just that they might not realize that the new features are enabled by higher performance of the hardware.
- First, the marginal value of 1MIP has plummeted in the past 40 years to near nothing. When my dad programmed on the 1401, another .01DMIPS would be worth ~$100,000 (1960s dollars, or $86 million 2021 dollars/DMIP). Now another 100000DMIPS is worth almost nothing (Maybe $0.006/DMIP today). So there's really no debate about declining marginal utility of computation vs. time.
- Second, developer productivity is great and all, but only a tiny proportion of computing units go to developers. Therefore, we can't assume that increased developer productivity will necessarily pay for new process nodes (with increasing capital costs and risks and decreasing benefits for end-users).
- Third, YES, finding new apps is the only thing that can keep things moving. But my point is: the proportion of the marketplace that is seeking above-baseline features and are willing to pay a premium for them is an ever shrinking portion. Replacement cycles for computers are, overall, lengthening, and the proportion of the market that buys the high end is steadily decreasing. This makes paying for ever-more-expensive process nodes more difficult.
- Fourth, when we were really enjoying Moore's law and areal density was improving significantly, better process nodes were clearly worth it: they lowered the cost to manufacture existing parts by yielding more parts per wafer. That is, the fabs wanted to shrink ASAP even without new use cases because of the improving economic picture. This is no longer the case.
- Fifth, eventually a doubling costs more than the entire world economic output, as eventually doubling will get harder and harder. No matter how many killer apps you find in #3, you can't keep this going forever.
I am definitely missing your point. I was originally responding to your comment that the marginal utility of doubling performance is diminishing. I don’t believe it is. I never said the marginal utility of a DMIP or whatever isn’t decreasing, which I don’t think is relevant, since processor performance increases exponentially, not linearly.
I also never said that it will be possible to keep on improving performance at the same rate forever. The rate of improvement is what is diminishing, not the value of the improvement. If we could keep on improving performance at the same rate forever, that’d be great, but we probably can’t.
Fabs are still motivated by demand from their customers and competition. If a fab stops improving, they will either be surpassed (see Intel) or consumers will see less of a reason to upgrade their hardware, and the entire market will decline. Both are bad outcomes for the fab. So fabs will continue to push the envelope as long as it is physically possible and economically feasible.
> I was originally responding to your comment that the marginal utility of doubling performance is diminishing. I
Your ambiguity in your responses is why I've been both addressing the marginal value of DMIP and marginal value of log(DMIP).
> since processor performance increases exponentially, not linearly.
It doesn't look very exponential right now. Looking at consumer-focused processors, we've gone from 176k DMIPS in a package in 2011, to 298k DMIPS in 2014, 320k DMIPS in 2016, 412k in 2018, and now we've finally got a substantive boost again to about 850k in 2021, though these are golden parts that aren't really available.
> The rate of improvement is what is diminishing, not the value of the improvement.
It's both --- the improvement is getting much more expensive, and the value is going down.
> Fabs are still motivated by demand from their customers and competition.
The vast majority of fabs have stopped being anywhere near the leading edge, because costs are too high for the benefits. At >100nm, there were about 30 manufacturers close to the leading edge; then at 45nm we had about 15 manufacturers who were close to the leading edge. Now it's Samsung, TSMC, and Intel-- 3, that's it. And even Intel is starting to question whether it's worth it versus than pooling effort together with others to amortize the massive capital costs. Most parts and applications are staying further and further from the leading edge, because the areal density benefits to cost are smaller and the tape out costs are ever higher, and because the vast majority of applications and semiconductor units do not need the performance.
Whereas 30 years ago, almost anything that could shrink, did, because of areal density benefits and because almost all applications desired improved performance.
MacBook series' thermal design is considered bad compared to other laptops for a long time. It accidentally helped a bit people think M1 is great and Intel is bad (though it's mostly true). (I believe it's not intended.)
That's not entirely true: Intel's year-over-year gains weren't particularly great, but that's because they tended to use more refined manufacturing processes on older, cheaper nodes. Lo and behold, when Apple decides to go all-in on the 5nm process, the entire world's semiconductor distribution network screeches to a halt, and we get the worst silicon drought in decades.
It's a bit of a moot-point. I prefer AMD processors where I can get it, but Intel's position in the market is far from as dire as people make it out to be. Until Apple can find a way to challenge their single-core performance, Intel will still be leading a class of their own.