That may or may not be, but what certainly is true is that Intel's public messaging about 10nm production has been much less accurate than that of SemiAccurate.
My understanding is that Intel is doing OK with smaller die size 10nm (Cannon Lake-U / Ice Lake-U) for Ultrabooks. But for bigger dies such as HEDT or server CPUs, the Ice Lake SP is still pretty much in the air with Intel's vague timeline of "sooner than expected end of 2020" claim.
Cannon Lake-U is definitely not OK, the GPU is disabled in all shipping parts, and aside from AVX-512 really isn't much better than the equivalent 14nm part.
Ice Lake-U sounds better on paper - at the very least it's a 4C die.
Canon Lake is the opposite of OK. Its turbo modes are much lower than the previous gen, and it clocks itself lower by 600 MHz under the same workloads.
Intel's first crack at 10nm was a jaw-dropping affair for how poorly it showed.
Intel is very likely to miss holidays with 10nm.
OEM manufacturers in South China, are screaming murder, and even ones who were Intel shops for decades like Weibu are jumping the ship. Intel is losing China big time.
I'd say, a lot would've been fine even if Intel gave them existing 14nm chips, but since all 14nm capacity is gobbled by server chips, it's not gonna happen.
I believe Intel is making a huge error by prioritising big wholesale Xeon buyers like Amazon over OEM manufacturers. Hosting providers will be back the moment Intel regains the tech lead or finally makes 10nm Xeons, but OEMs will walk away and not return.
- If the big wholesale Xeon buyers and users qualify AMD chips and start buying a lot of them, Intel will find that landscape a lot more competitive, this is a more "sticky" market than OEM products for consumers.
- They could be betting that AMD will lose the plot again, as they've done throughout their corporate history, e.g. after the 486, and after K8. The OEM consumer market is less sticky and will trivially move back to Intel if they have competitive offerings.
My own experience tells me of things being quite opposite of this. Big hosting providers care little for what runs in their servers for as long as it's fast (they always can pass costs onto their clients without loosing much, especially bigger ones)
In OEM, things are dominated by much more complex dynamics in between supply chain, factories, and clients.
Intel had no problem with Taiwanese, as a lot of TW companies had relationship with Intel since the "Desktop First" era, but in mainland, Intel had to fight a bloody battle for the fresh and juicy laptop and tablet markets for the last decade, with kickbacks, blackjack, and hookers. Their position here was never strong to begin with.
The intel CPU situation is pretty embarrassing. I built back in 2009 a desktop with the intel i7-920 @2.66GHz (the first real quad core from intel) which I bought for less than $300. I look today and the cpu I can get for less than $300 is a 6 core i5 9600K @3.7 GHz. According to Passmark [1], this new CPU, is less than 2.5x faster overall, despite the additional 2 cores, and the much higher frequency. Intel just spent 10 years designing sockets and mobos and mocking ARM instead of concentrating on how to push the computing (mobile & desktop) technology forward.
The TDP is a lot lower for the newer processor. Performance per Watt has improved quite a bit over the last years. Given that datacenters and mobile applications are increasingly more important than traditional "TDP doesn't matter" desktops, I think this is a positive development.
Intel changed their definition of TDP lately, so actual consumption can be higher than TDP. So it is not trivial to compare energy consumption of last year processors with the older ones.
What are Intel and other semiconductors planning to pivot to when they can no longer reduce process size at a reasonable pace (i.e. now)? Is there a plan, or is it an existential wall?
My impression is that they know moore's gravy train is over and they're scrambling to figure out new tricks to allow them to sell a new generation of processors every year. Personally, while I'm a little disappointed that processors 20 years from now might not be 4+ orders of magnitude faster than the one I have now, I wouldn't mind being able to buy a computer and not have to worry about upgrading it for 10 years (I think we're pretty close to this point already).
> not have to worry about upgrading it for 10 years (I think we're pretty close to this point already
I think we're already there. Ivy Bridge machines from 2012 can still get the job done today if paired with a solid complement of RAM and an SSD.
Graphics is really the only area where those older machines are starting to be a limfac, as their inability to drive the latest 4K+ displays is starting to be more of an issue for normal people.
My E6420 C2D from 2007 is still chugging away as a htpc. I had to go from 2 to 6GBs of ram 2 years ago but it's still plenty fast enough for video and web use. I tossed in a HD 6420 few years ago for video hardware acceleration.
Agree 100%. I have an ivy bridge gaming desktop built 2013. I've upgraded the GPU twice and the RAM once. The performance gains on the CPU side just don't seem worth the money.
I upgraded my desktop PC from Sandy Bridge last year, and the only reason I did so was because I was upgrading some other components that required a motherboard update (which meant CPU chipset would no longer be compatible), so I said what the hell.
Otherwise, I was very happy with it in terms of performance.
I only upgraded from my 2009 i7 (I forget the model) to last years i7 because the old motherboard died.
I kept upgrading GPU and seeing only 20-30% CPU use while gaming. It was fine.
Some changes to how we build these things would be nice.
The heavily integrated motherboard model should die. A PCI slot on my old board made the whole system flake.
Discrete components I can stack are more my dream design. If my old CPU had been a sealed unit of some kind with a physical connector to the GPU, power, and such, and I could have simply swapped out the faulty port expansion “module”, that would be slick.
But one PCI port flaking means I have to bail on an otherwise perfectly functional CPU, RAM, PSU, and cooling kit.
It really depends on your workload. I need to compile large code bases often, and upgrading to a Threadripper last year made my life much more pleasant.
I think that's going to be a gradual process, but it will likely happen. IMO Python will either have to move to including a JIT with the standard interpreter, or it will be replaced.
> I wouldn't mind being able to buy a computer and not have to worry about upgrading it for 10 years (I think we're pretty close to this point already).
Depending on your needs, we're been there for at least 10 years. I don't expect to have to upgrade (not counting increasing memory or storage as "ugrading") or replace any of the systems I own right now until they're over 10 years old. About half of my current machines are approaching their 10 year anniversary. Two are older than that. None of them need upgrading.
But isn't that just the result of lack of hardware gains limiting new software application areas? If single threaded performance had been doubling every two years for the past 10 years like it did historically, then there would likely be new applications available that made use of that 30x performance gains to deliver functionality that would be popular enough that it would reinvigorate the upgrade process.
It seems unlikely that hardware improvements have stalled out right at the point where the performance level was just good enough.
There's more to the lack of radical new applications than faster single core performance. We've had increasingly multi-core systems for over a decade now, but applications have been slow to appear. We've also had increasingly powerful GPUs with compute capability over that time. I think even if single core performance were still increasing at 50% or even 25% per year we'd still be here.
Sure, it requires work to move off the legacy single-thread paradigm but it's also the economics of the software business these days. When you combine the increased control/lockdown by the mainstream platform owners and the decreasing willingness of customers to pay for software in the era of no-cost software, there isn't much incentive for new applications to appear. Notice that all of the major players are mostly focused on services and server side for the heavy lifting these days. It's not because the user hardware can't do it (hell, on the server side, CPUs and GPUs tend to be less powerful per-core), it's that it makes more economic sense for them to not bother doing interesting things on the users device.
> But isn't that just the result of lack of hardware gains limiting new software application areas?
It’s no accident that the biggest advances in the last ten years have been in areas not limited by single thread performance; machine learning & cloud computing.
> But isn't that just the result of lack of hardware gains limiting new software application areas?
For my needs? No. It's not that more performant systems (including software) aren't available, it's that they don't offer me any real benefit that justifies the hassle of replacing and reconfiguring my existing systems.
New? Using epoxy to make batteries hard to replace and other tweaks to make other unreliable parts hard to replace. Popular recent choices are keyboards and backlights.
Not everyone uses Macbooks. There are plenty of laptops with easily replaceable batteries and sane keyboards. Not even talking about real computers, where you can replace everything without any tools.
But at the same time, I'm considering replacing my 2015 HP laptop because my "A" key stopped working, and the cost to replace the keyboard is 25% the cost of a new laptop, which I'll need anyway in another year or two even if the keyboard were fixed.
15" laptops that are 2" thick are largely easy to work on and get replacement parts.
However the popular "ultra" books and similar have to integrate more heavily to get close to 1". Even fans become hard to replace. Often there's no dimms (so you can't replace or add ram), even storage can be on the motherboard.
I've had multiple ultrabooks too, measurably under an inch, and their keyboards were both thin and also easily popped out. It's disappointing to hear that many manufacturers are doing it differently.
Paying 25% of a new laptop to increase the lifespan of your current laptop by 25-50% is a fairly rational decision, especially if you factor in the environmental impact of replacing the whole machine.
Sure. But CPU manufacturers focus on where the money is, and today that's servers and laptops. While not everyone buys apple, an ever larger fraction of laptops are epoxying batteries and replacing socketed cables with hard wired parts. Just like cellphones where it's pretty common for battery life or USB failure to result in requiring a replacement.
What's weird is that susceptibility to incident radiation has gone up tremendously. Cells minimize area, and exacerbate the problem. I'm wondering if computers will still need to be replaced regularly as a byproduct.
Couldn't we just go back to the older transistor densities? Forget about 5nm and instead keep tuning the 32nm process (or whatever the last reliable one was) for yields and power efficiency.
Modern processors are faster than Sandy Bridge, but not by an overwhelming amount, and it's not clear how much of the improvement is due to smaller transistor sizes now that they no longer result in clock speed increases, rather than design improvements that are independent of transistor size.
There has to be a market for something with 80% of the performance and 2000% the reliability.
Processors are not that fast yet, but computers as a whole are.
20 years ago we had Pentium 3 500MHz, 2 FLOPs/cycle, 1 GFlops.
GPU of my desktop PC computes 11 TFlops, that's 4+ orders of magnitude faster.
For CPUs alone it's indeed less impressive, $500 for that P3 inflated to $760, the comparable modern CPU is Threadripper 2920X, 16 flops/cycle * 12 cores * 3.5 GHz = 672 GFlops.
> GPU of my desktop PC computes 11 TFlops, that's 4+ orders of magnitude faster.
But they’re much lower quality (less flexible) FLOPs. If you don’t have much data parallelism or heavy conditional logic for each datum, you’re not going to come close to 11 teraflops.
If you don’t have much data parallelism or have heavy conditional logic, you won't come close to 1GFlops on that CPU either. These 2 FLOPs/cycle are for SSE i.e. 4-wide vector math without any conditions or branches.
Update: also, for other tasks, GPU flops are of higher quality than CPU.
VRAM bandwidth is ridiculous, much higher than system RAM, computations that are bound by RAM bandwidth will be much faster.
GPUs mask RAM latency with hardware multithreading, if your code is parallel and needs to access large amount of data randomly, a GPU will saturate these flops, a CPU will sleep most of the time waiting for data to arrive.
I think it's safe to say that these flops are different. One is not higher quality than the other. It's possible to conjure up examples where one is more fit for purpose (double-precision and irregular tasks on CPU), massive memory access for GPU. Both architectures have different types of cache which also complicates matters. An example that tortures the CPU (by being 'not much data parallelism or heavy conditional logic') will torture the GPU much worse, but this example will likely not really be "flop" dependent in any case.
They're different but the differences are quite complex.
CPUs can be faster for RAM bandwidth-bound code, if there's not that much data and it fits in caches at least L3, CPU cache bandwidth is very good.
GPUs can be faster for heavily conditioned code. If it's the condition on RAM value, a CPU will stall or mispredict branches, both slow, a GPU will switch to another hardware thread which is very fast.
Despite these differences, I find flops quite useful in practice to compare performance of different computers across architectures of generations. Computers compute, flops measure how fast they do.
> These 2 FLOPs/cycle are for SSE i.e. 4-wide vector math without any conditions or branches.
Using double precision SSE scaler ops, the Pentium III could execute one addition and one multiplication per cycle. (The throughput was the same with vector math because the Pentium III only had 64-bit SSE units. So a 128-bit packed multiply and a 128-bit packed add, four double precision operations, executed over two cycles.)
They're math operations on small vectors of 32-bit floating point numbers, they produce same result given same input data.
The only difference is that CPU computes stuff on 4-wide vectors of these numbers (modern CPUs up to 16), that GPU on 32-wide vectors (other modern GPUs up to 64).
A lot of the FLOPS on newer CPUs are like GPUs, yes.
But the comparison is against an old CPU, without big vector units.
Those non-vector calculations are very different, and far more flexible.
A brand new CPU core can do 3-4x as many separate operations per cycle, and is clocked 6-10x as fast.
Having more cores helps but it's still far behind.
Also for a fair price/performance ratio you probably want to compare to the 450MHz model at $230, so only a $350 CPU today ($280 equivalent by august). https://money.cnn.com/1999/08/23/technology/intel/
For example, GPUs are better at vectorized condition code. CPUs were mostly fixed with AVX512 but these instructions are too new, only available on some servers.
Sure, there’re algorithms which don’t work on GPUs. A stream cipher would be very slow because requires single-thread performance, also GPUs don’t have AES hardware. A compiler is borderline impossible because inherently scalar and requires dynamic memory. Also GPUs don’t do double-precision math particularly fast.
Still, I think many users who need high-performance computing can utilize GPUs. They’re trickier to program, but this might be fixable with tools/languages, we have been programming classic computers for ~70 years, GPGPUs for just 12.
> For example, GPUs are better at vectorized condition code.
That's throughput, not flexibility. I would define flexibility in terms of how easily the instruction stream can vary per math operation. Full flexibility requires a lot more transistors per FLOP, which is why you can't use wildly different architectures to assess Moore's law, which is about transistor count.
And comparing transistors on Pentium 3 (including cache) to an RTX 2060 (including cache) it seems to be 34 million vs. 10800 million. That's two and a half orders of magnitude.
> I wouldn't mind being able to buy a computer and not have to worry about upgrading it for 10 years (I think we're pretty close to this point already).
I used an i5-2500k for 7 years. Only retired it because the rest of the computer was falling apart and I had already had too many computers. I think that a CPU built in $CURRENT_YEAR will be completely usable in 10 years.
Memory... if you mean the amounts, not really. The gap between the necessary and the possible is really huge now. 8GB is more than enough for everyday computing and any two slot DDR4 laptop can do 64GB RAM.
8GB in an age of electron is pushing it. If one more idiot decides to turn one of your commonly used applications into a memory guzzler you will be forced to upgrade.
In 2010, you could've bought an Intel i7 980X for $1,000 (why would you? B-but still...) with six cores @ 3.33 GHz and easily OCed to 4 GHz.
I think we're a year or two away before beefy, AAA games begin demanding 4 GHz minimum, and new CPUs barely offer over 4 GHz clocks as it is, so... we've already been there!
CPU power's been flatlined, especially when you compare it to GPU power.
An i5-9400 has the same number of cores, a lower base clock speed (2.9GHz) but is around 50% faster than the i7-980X. It also costs $180 and draws 75% less power.
CPU performance isn't increasing nearly as quickly as it used to, but it isn't stagnant. AMD's Zen 2 architecture looks incredibly promising. Credible leaks suggest a 16c/32t Ryzen 9 running at 4.3GHz base, with a 25% IPC improvement over the previous generation.
It's not even accurate to say CPU power has flatlined since Westmere. Instructions per cycle is significantly higher today than in 2010, so performance at the same nominal clock frequency is substantially better. Not to mention power efficiency gains since 2010.
I said it's flatlined from seeing graphs like this[0] and this[1] (again, compared to GPUs).
But I'm far from an expert here (just an enthusiastic consumer), so what you're saying is news to me. The more flowers you can lay at what looks like the grave of Moore's law, the better. I don't like being a pessimist! :3
The SIMD units are now 4x wider with 4x more ILP (dual-issue FMA). Include increased core count and we've kept pace with Moore, though only for vectorizable code that is not memory bound.
TSMC is already doing risk 5nm production and 3nm seems entirely viable. We won't see a 'wall' until sometime after 3nm (~2025). Depending on whom you talk to, 2nm and smaller process sizes are also viable. I wouldn't expect any serious shift away from silicon processes till 2030.
And just a Note, TSMC Node Number is like one step smaller than Intel's equivalent. So TSMC 7nm DUV is roughly Intel 10nm.
And to the point the OP was asking, I don't think there is a technical problem to 3nm, or even 2nm process size. Expect this year's iPhone A Series SoC to be on 7nm EUV, 5nm in 2020, 3nm in 2022, likely 2nm in 2024 / 2025.
There may be a 5nm+ and 3nm+ in between those. Or as TSMC's CEO Joked, expect to see 5.5nm in the future.
We don't have a technical barrier, we do have an economical / cost barrier. With every node progression near to doubling of design cost, not everyone can afford to be on leading node. [1] The extremetech article is an easy to read version of Semi Engineering [2], if we assume the number are correct ( I do think the number are little exaggerated ) $500M for 5nm. Apple will need to find a $2.5 BOM reduction per iPhone to off set that cost. Qualcomm will have to sell their chip $5 to $10 more expensive. Now if you imagine $1B for 3nm, and $2B+ for 2nm.
Unless you are Apple, who can easily hike the price by another $100. For others like Qualcomm, this is going to create lots of problems unless they could spread the design cost over many more units.
It's analogous to a release candidate in software. Basically means the fab line has passed all tests and run some test chips but hasn't actually done a production run of anything yet. The risk of issues / bad yield is higher than it would be after a few million chips have been run through the fab to work out all the kinks.
In practical terms it means they aren't building low cost consumer products yet, they are probably building low volume high $ parts that desperately need 5nm. They are also probably doing a bunch of IP verification runs, confirming process designs for all the building blocks that are used to build SoCs: ARM cores, memory controllers, IO controllers, etc.
Cryptocurrency mining hardware probably fits it. Not that low volume is preferred, but better performance per watt efficiency is definitely worth high $.
Looking at ARM they have the Big little architecture (little processors for more efficient energy usage and big processors for when you need the performance). Putting more emphasis on less power hungry ways to get similar performance or otherwise.
Also putting more specialized parts like GPUs, FPGAs, ML accelerators either near or on the die. the A12 is a good example of this. Also, Intel's buyout of Xilinx shows that FPGAs can be put on die or near it. You could even put storage on the SOC.
Then there are the more esoteric methods like Quantum Computing.
Quantum computing is profoundly unlikely to be a solution to maintaining performance increases in desktop, datacenter, or mobile processors. Unless someone comes up with a good way to do a single thing people use a PC, phone, or server (outside of very specific HPC applications) via a quantum algorithm that isn't just a classical one with extra steps, it would not be useful at all for this.
It seems like they plan to shift to novel hybrid architectures, at least if things like Intel owning Altera mean anything. I'd expect them to be doing things like putting neural network accelerators down and the like.
Or everyone has to make a dramatic leap to a new underlying computing physics, like the quantum dot transistor or the vacuum transistor [1] that lets them increase frequency or lower power consumption. If you double the clock frequency, I believe this still linearly increases the computing throughput, though I'm not expert enough to know if that's still strictly true.
A big problem with increasing the clock speed is that your processor still needs to wait for the DRAM to respond. Modern processors are crazy smart about prefetching, caching, and running instructions in parallel, but at some point Memory bandwidth and latency begin to dominate over CPU clock speed. Many players have started looking at puting multiple dies on the same substrate with high-speed interconnects to reduce memory latency and improve throughput. Those improvements could help push the usefulness of higher clocks a bit further.
Is it roughly accurate to say that if your computing area operates at 10x the speed, you can do 10 cores worth of computing work with one core? That would free up a lot of die area for other things, though I don't know how to guess how much that extra space would improve the other bits.
I'd kind of figure that such a technology would also speed up the RAM, but I suppose that's not true either if the underlying storage technology is too slow. But I know that's also an area of active research.
In CMOS the killer is that they consume power when switching (power ends up being a square of switching frequency). So if you switched. 10x, you'd have to somehow dissipate 100x the power.
Your core might be small, but the industrial-sized refrigerator needed to cool it suddenly isn't.
My question had the assumption of something akin to vacuum transistors that allow high frequencies without the heat generation, but yes, I agree that the current technology won't scale by 10x without a generational shift in underlying approach away from MOSFETs.
But on-chip FPGAs that reconfigure to enable specialized hardware might be enough to differentiate their product line. And being able to say you support DirectCNN 9.0 on your CPU isn't so absurd... I have the feeling a neural network accelerator will be no more surprising than a floating point unit in 20 years.
What? No. As far as computing goes, the digital abstraction still and will always hold unless we start doing analog computations like were done with analog computers from the 1940's to about the 1960's (in the West, they lasted longer in Russia due to their inability to compete in Silicon).
A vacuum transistor, used as a switch, is still a switch.
FWIW, I believe there's a theorem that given an allowable error rate in a digital computation was literally equivalent to a noise level in an analog computation. I agree that they are cool, especially for things like feedback and asynchronicity, but I'm not sure that they're fundamentally going to give us that much better results quantitatively.
> Is there a [post-Moore] plan, or is it an existential wall?
Fixed function hardware and more emphasis on efficient software.
We've had decades of software laziness, because anything less than an order of magnitude performance improvement on the software side was best shipped unoptimized, earlier, and just wait for hardware process shrinks.
We'll likely get back to something like the 60s, before the mass-marketing of the PC enabled funding of the relentless process improvements of the 80s, 90s, and 00s.
My first thought is that they should increase the number of cores in a CPU as much as possible. Having a single CPU with hundreds of cores would be really useful. Of course, they also have to make advances on cooling technology. The types of applications that I have in mind are rendering, AI, and gaming.
The types of games that would benefit greatly from such CPU are the ones that make heavy use of a Physics Engine.
I actually think along similar lines but at a higher level of abstraction. I think we'll have to start moving towards multiple complete computer systems, each with their own internal busses, memory, etc., that operate as a unified whole. A bit like massively parallel systems do.
Well hello there! I've been running 2 computers this way for years. Works very well for some stuff that supports multiple nodes, but unfortunately useless for most software. By far, the 1GbE link is the most limiting factor. Almost 15 years and we still don't have 10GbE as standard.
>> single CPU with hundreds of cores would be really useful
Not with the current memory bus. If your algorithm is written properly it's very likely already memory bound. Adding more cores is only going to worsen the performance in that case.
Multi-chip packages are getting more common, with Intel's EMIB and AMD's new EPYC processors. Only portions of the CPU are moving to leading-edge fab processes while things like the memory controller and iGPU are good candidates to stay on proven processes (eg 14nm).
I think Intel is trying to grow drones (an emerging market) and cloud departments.
And in general, the end of process size reduction doesn't mean the end of innovation in chip building and design. There are limits on node sizes, as there are limits on heat dissipation, but once you have high enough yield, there are few limits onto how many circuits you put onto a chip, as long as most of the circuits are powered off. Ultimately, the more stuff special purpose circuits compute instead of the general purpose one, the better for power consumption.
Reducing process size is a tough, yet straightforward way to improve the efficiency of a chip. But there are other methods too, modern data centers will be looking for power efficiency, innovation in packaging can improve efficiency and make the most of out bad yields. Novel architectures are going to see the light of day now that process reduction is become so difficult.
If Intel are stockpiling 10nm parts now (Q2) so they'd have something on the shelves for Q4 then I don't see how their 10nm facilities are in a good shape. Furthermore, when everybody in the industry uses the 'x% yield' metrics, and Intel is using phrases like 'improving at a faster rate than anticipated', etc, to communicate yields, that means their proper yield metrics are far from looking good.
This doesn't make sense. How much "stockpiling" is required for enough processors for partners to validate? Surely the amount required for validation is at least three orders of magnitude smaller than the amount you expect to sell once they're released.
It's not so the partner can test/validate the cpu, it's so the partners can test/validate their designs using the cpu. i.e. It's hard to test/validate a laptop design if no CPUs exist that work with it.
They are stockpiling working chips to prepare to send them to the OEMs for verification. Intel probably has to send out tens of thousands of CPUs for this, every OEM is going to want hundreds to verify their systems before they start mass production. It's an indicator that Intel thinks they have worked out the major yield issues and is preparing for production runs.
Maybe it's a mistake. It would be more logical if it was " [...] and it's currently building a stockpile of 10nm processors while waiting for PC OEMs to test and validate."
(that's a tl;dr for https://www.semiaccurate.com/2019/04/25/leaked-roadmap-shows... )