3 ms·
I've always thought of HyperThreading as marketing with no substance. I've seen applications run slower with HT turned on (admittedly a long time ago). Does thi
by YZF 2y ago
I've always thought of HyperThreading as marketing with no substance. I've seen applications run slower with HT turned on (admittedly a long time ago). Does this combination of running two threads that are "poorly" written (i.e. they can't make use of all the execution units) really exist? If you're multitasking applications you very rarely have multiple application simultaneously require a lot of CPU cycles (e.g. you might be switching from a spreadsheet to a browser but not doing heavy work on both simultaneously). If you are running some specific heavy computational workload then likely it's already optimized to fully utilize the cores it is getting and HT can actually get in the way of that.
- bushbaba 2y agoHT is good for shitty code that chooses core count for threading. When it should really be multiples the core count given time spent mostly in IO.
- hedgehog 2y agoThere are server workloads like maybe high concurrency web apps that might benefit. Back in the days of single core CPUs HT made desktops feel a lot better not just because of throughput but (my speculation) because it reduced typical scheduling latency. Antivirus or whatever else was happening in the background was less likely to cause UI jank.
- DeathArrow 2y ago>If you are running some specific heavy computational workload then likely it's already optimized to fully utilize the cores it is getting and HT can actually get in the way of that. You can test that by running Cinebench with and without hyperthreading. In most of the cases hyperthreading does help.
- dagmx 2y agoA lot of rendering benefits from having SMT/HT disabled. Almost every film studio will do so. Having accurate hardware thread counts matter in those scenarios because the renderers will basically peg each core completely , and the risk of having an SMT/HT context switch between them is detrimental. It was often up to a 30% speed decrease when HT was enabled for us in production scenes. Similarly , many games run better without HT. HT primarily benefits scenarios with many smaller jobs without latency sensitivity. Today though, E-cores have largely replaced the need for HT. It’s much easier to send them to an E core and have them done without the extra overhead of HT scheduling and support.
- Hikikomori 2y agoThen those that know that they dont benefit from HT can just not use those cores no?
- dagmx 2y agoSure, they can just disable the feature. I’m just responding to the person who is pointing at Cinebench as a reason to enable it, but in real world use cases it actually ends up being a detriment.
- Hikikomori 2y agoI meant that most people can leave it on. And if the software creator knows its not good for their software they can just not use HT cores, without disabling HT completely.
- Dylan16807 2y ago> I've always thought of HyperThreading as marketing with no substance. It could make a big difference when you only had one or two cores.