Live data from Hacker News

What's wrong with Intel, and how to fix it: Former principal engineer unloads

pcworld.com

11–20 of 117 posts

Re: What's wrong with Intel, and how to fix it: Former principal engineer unloads

#11
post #5

So Linus, and this guy is saying AVX512 was a bad idea. "“The state of software out there is really not favoring going larger vectors,” Piednoel said in the video. “In fact, you can see clearly in Cinebench for example—that is not one of my favorite benchmarks, especially for a laptop where it doesn’t make any sense—but you can see that AMD is winning the battle of throughput. It’s because they have more cores and th…

AVX-512 is Intel's best vector ISA to date and it is definitely useful beyond benchmarks.

In fact, too low penetration of AVX-512 has been a problem, rather than too much: for a long time it has only been available on server chips, not laptop (a small fraction of laptops have gotten it recently) or destkop (outside some low-volume "extreme" parts, which were really just rebadged server parts).

It would also be quite unusual that some instructions could be very useful in benchmarks that are based on real-life, heavily used applications, but not in real life. Outside of small, easily gamed benchmark that doesn't seem plausible: if the CPU is good a video encoding benchmark, it will be good at video encoding, with high probability.

The main problem with AVX-512 is lack of software exploitation. Unlike with frequency boosts, increased cache sizes, better branch predictors, etc: this speedup doesn't come for free. Either compilers have to use the new instructions, or people have to use them by hand. The former has been very limited because these instructions cause a frequency drop (so-called "license based downclocking"), so compilers have mostly disabled their use by default: otherwise, a single AVX-512 instruction could cause a large impact on surrounding code which doesn't use AVX-512.

So by-hand exploitation remains, and penetration has just been too low and the people with the skills to do this are limited.

Re: What's wrong with Intel, and how to fix it: Former principal engineer unloads

#12
This is purely a total outsider's opinion, so I caveat that and please don't get all offended if I'm totally wrong.

Sometimes it's really difficult to tell the difference between a crackpot theorist and a good equities analyst. Watching this guy's video, it's hard to tell which he comes off as more.

He's just coherent and convincing enough that as an outsider I could believe his collection of observations. But the presentation is also just disorganized enough, fixated on certain details enough, and a scattered collection enough that I can't tell whether these factors matter.

Of course I'm sure an expert in the field could tell instantly.

I've seen enough interviews of former engineers (usually retired guys) of whatever company who know about a very specific fault of the product/tool/etc and can claim convincingly up and down that it will cause catastrophic failure, fundamental strategy misstep, etc. But will it really be a major factor for overall outcome?

He proceeds from analysis of the smallest die area detail to the opposite end of the spectrum, the problem with MBAs + Marketing, within 1 minute. With typos. Also, the guy doesn't have a long history of posting analysis of this type, and he's honest about his info being 8 years old. Not sure what his motivation for making the video is. So it's hard to put too much weight on it, as if were like a Ming-Chi Kuo predicting Apple's next iPhone form factor or something like that.

I would love to know what industry people here think, and then I might study the video / findings with more attention.

Re: What's wrong with Intel, and how to fix it: Former principal engineer unloads

#13
post #5

So Linus, and this guy is saying AVX512 was a bad idea. "“The state of software out there is really not favoring going larger vectors,” Piednoel said in the video. “In fact, you can see clearly in Cinebench for example—that is not one of my favorite benchmarks, especially for a laptop where it doesn’t make any sense—but you can see that AMD is winning the battle of throughput. It’s because they have more cores and th…

AVX-512 is Intel's best vector ISA to date and it is definitely useful beyond benchmarks. In fact, too low penetration of AVX-512 has been a problem, rather than too much: for a long time it has only been available on server chips, not laptop (a small fraction of laptops have gotten it recently) or destkop (outside some low-volume "extreme" parts, which were really just rebadged server parts). It would also be quite…

I'm sure AVX-512 is wonderful and you can easily produce examples where it makes loops go N times faster. That unfortunately is missing the point.

Microprocessors implementation is an extremely careful balance and effectively everything is a trade off. The area, power, and complexity of features comes at a non-zero cost to code that doesn't use it.

The fact that AVX-512 isn't on every processor AND the performance benefits are FAR from obvious (as the core clocks down when using it) really hinders its adoption, which in turn lowers the value; a downward spiral.

Intel is in a fine mess of their own making. I'm no fan of either company and AMD gets perhaps a little too much credit as things would have looked a lot different had 10 nm succeeded on the original schedule, but I bought my first AMD processor since Athlon 64 because it's better.

Re: What's wrong with Intel, and how to fix it: Former principal engineer unloads

#14
> Ryzen’s “Hyper-Threading” looked good because of poor single-threaded performance

So if my CPU is one of the worst in single-threaded performance, then multi-threaded performance will be the best? That make no sense and this guy doesn't seem like he knows what he is talking about..

Re: What's wrong with Intel, and how to fix it: Former principal engineer unloads

#15

> Ryzen’s “Hyper-Threading” looked good because of poor single-threaded performance So if my CPU is one of the worst in single-threaded performance, then multi-threaded performance will be the best? That make no sense and this guy doesn't seem like he knows what he is talking about..

He's completely right. Hyperthreading is all about putting idle functional units to work when you can't extract instruction level parallelism from single threaded code. His claim is that Intel processors did better and thus only got a small relative boost from HT (IIRC it used to be 10%, maybe it's 20% now). If your processor does poorer at ILP extraction, you get relatively more out of HT.

This all agree with the benchmarks in which Intel still generally is ahead on single thread performance. For a more extreme case look to older POWER processors which were 4-way threaded, presumably because they were even worse on single threaded code.

Re: What's wrong with Intel, and how to fix it: Former principal engineer unloads

#16

Earlier quoted context omitted.

AVX-512 is Intel's best vector ISA to date and it is definitely useful beyond benchmarks. In fact, too low penetration of AVX-512 has been a problem, rather than too much: for a long time it has only been available on server chips, not laptop (a small fraction of laptops have gotten it recently) or destkop (outside some low-volume "extreme" parts, which were really just rebadged server parts). It would also be quite…

I'm sure AVX-512 is wonderful and you can easily produce examples where it makes loops go N times faster. That unfortunately is missing the point. Microprocessors implementation is an extremely careful balance and effectively everything is a trade off. The area, power, and complexity of features comes at a non-zero cost to code that doesn't use it. The fact that AVX-512 isn't on every processor AND the performance be…

I'm not missing the point as I was responding to whether AVX-512 is useful in practice. It is. It is some badly designed extensions where the earlier ones were great: it's arguably better than the earlier ones.

Now adoption has been poor and there is a chicken-and-egg effect as you point out, but that's separate from the question of whether AVX-512 is useful in practice. It is.

The point about tradeoffs is well taken. It's not like Intel (or any other vendor) is rolling back progress in other areas to add larger vector units: rather they try to progress along all viable axes at once.

Re: What's wrong with Intel, and how to fix it: Former principal engineer unloads

#17
post #5

So Linus, and this guy is saying AVX512 was a bad idea. "“The state of software out there is really not favoring going larger vectors,” Piednoel said in the video. “In fact, you can see clearly in Cinebench for example—that is not one of my favorite benchmarks, especially for a laptop where it doesn’t make any sense—but you can see that AMD is winning the battle of throughput. It’s because they have more cores and th…

AVX-512 really has two parts. It widens vectors to 512 bits, but it also makes the instruction set much more orthogonal and clean. It also adds masking of lanes.

These latter parts are what's really useful about AVX-512. The widening of the vectors is just an area tradeoff that depends a lot on the particular workload.

Re: What's wrong with Intel, and how to fix it: Former principal engineer unloads

#18

> Ryzen’s “Hyper-Threading” looked good because of poor single-threaded performance So if my CPU is one of the worst in single-threaded performance, then multi-threaded performance will be the best? That make no sense and this guy doesn't seem like he knows what he is talking about..

No, if your CPU is one of the worst in single-threaded performance, then hyper-threading will look like the best thing since sliced bread on it, relative to its baseline performance. Hyperthreading will seem to double your performance, because so much of your CPU is otherwise idle. But the more you improve your scheduling, the worse hyperthreading will look, again relative to your singlethread performance.

Re: What's wrong with Intel, and how to fix it: Former principal engineer unloads

#19

> Ryzen’s “Hyper-Threading” looked good because of poor single-threaded performance So if my CPU is one of the worst in single-threaded performance, then multi-threaded performance will be the best? That make no sense and this guy doesn't seem like he knows what he is talking about..

No, if your CPU is one of the worst in single-threaded performance, then hyper-threading will look like the best thing since sliced bread on it, relative to its baseline performance. Hyperthreading will seem to double your performance, because so much of your CPU is otherwise idle. But the more you improve your scheduling, the worse hyperthreading will look, again relative to your singlethread performance.

But poor single-threaded performance doesn't imply that the core is sitting idle. It may well be running as fast as it possibly can and using all the shared components of SMT leaving nothing for the other thread to use.

In the same way the single-core performance may be really good yet everything shared by SMT is still only utilized to half its potential so the 2nd thread runs almost as fast as the first.

Re: What's wrong with Intel, and how to fix it: Former principal engineer unloads

#20

> Ryzen’s “Hyper-Threading” looked good because of poor single-threaded performance So if my CPU is one of the worst in single-threaded performance, then multi-threaded performance will be the best? That make no sense and this guy doesn't seem like he knows what he is talking about..

No, if your CPU is one of the worst in single-threaded performance, then hyper-threading will look like the best thing since sliced bread on it, relative to its baseline performance. Hyperthreading will seem to double your performance, because so much of your CPU is otherwise idle. But the more you improve your scheduling, the worse hyperthreading will look, again relative to your singlethread performance.

From most of the test that I've seen [0][1], there is not that big of difference in single-threaded performance between AMD & Intel. IMO this is rather related to difference in SMT implementation, than idication of weak ST.

[0] https://www.anandtech.com/show/15578/cloud-clash-amazon-grav... ZEN1

[1] https://www.anandtech.com/show/14694/amd-rome-epyc-2nd-gen/9 ZEN2

Post reply on HN