4 ms·
> 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
by aPoCoMiLogin 6y ago
> 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..
- FullyFunctional 6y agoHe'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.
- aPoCoMiLogin 6y ago> This all agree with the benchmarks in which Intel still generally is ahead on single thread performance. citation needed. benchmarks that I've seen [0][1] there is not that big of difference between the two. [0] https://www.anandtech.com/show/15578/cloud-clash-amazon-graviton2-arm-against-intel-and-amd/5 https://www.anandtech.com/show/15578/cloud-clash-amazon-grav... ZEN1 [1] https://www.anandtech.com/show/14694/amd-rome-epyc-2nd-gen/9 https://www.anandtech.com/show/14694/amd-rome-epyc-2nd-gen/9 ZEN2
- FullyFunctional 6y agohttps://browser.geekbench.com/processor-benchmarks https://browser.geekbench.com/processor-benchmarks Even normalizing for the frequency isn't enough to explain the difference
- kasabali 6y agoYou need to look at turbo frequencies. Geekbench runs at turbo speed almost all the time.
- FullyFunctional 6y agoLike I said, I did account for that
- nullc 6y agoHT is also about memory latency. No matter how amazing your ILP ninja logic is, if you're waiting on a read-- you're waiting on a read.
- zozbot234 6y ago"Extracting ILP from single-threaded code" is energy intensive and comes with potential security issues (Spectre). SMT makes sense given these conditions.
- FeepingCreature 6y agoNo, 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.
- ben-schaaf 6y agoBut 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.
- FeepingCreature 6y agoYes. I think the point of the article was more that people don't understand where HT/virtual SMT gets its speedup from.
- magicalhippo 6y agoFrom the very start I've always heard HT being good for memory-bound applications. That's how it was explained and marketed. Some years ago I worked on such an application, and we got a ~80% speed increase going from 4 threads to 8 threads on a 4-core with HT enabled. I wouldn't expect compute-bound applications to get anywhere near such gains. Makes me wonder where those with a misconception got it from.
- aPoCoMiLogin 6y agoFrom 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-graviton2-arm-against-intel-and-amd/5 https://www.anandtech.com/show/15578/cloud-clash-amazon-grav... ZEN1 [1] https://www.anandtech.com/show/14694/amd-rome-epyc-2nd-gen/9 https://www.anandtech.com/show/14694/amd-rome-epyc-2nd-gen/9 ZEN2
- guerby 6y agoOn very simple FPU code (mandelbrot set computation writen in basic C) I've observed exactly double the performance when going from 24 to 48 workers on a AMD Ryzen Threadripper 3960X 24-Core / 48 Threads Processor. I've never seen this kind of HT gain on Intel processors.