- Apr 12, 2021
- Asus z590 ROG Maximus VIII Hero
- Pro W5700
- Classic Mac
- Mobile Phone
Hyper threading is just make belief though. It’s basically intel saying that there was some extra capacity left in a core and by pretending one core is two, the OS could use this tiny bit of extra capacity efficiently
Yes. A distinct process can run on an individual core's HW thread (HTT), but the core's execution unit is shared by it's two HW threads, and they blow up each other's cache, so there's only an incremental performance gain of claiming execution resources leftover to be claimed by the other thread. It's a gimmicky gambit of putting SW into HW in a way that creates a mess of the architecture, but it works I think there's a rule of thumb that you want the same instructions (program) to run on both cores to mitigate the local cache effects. The net effect is about a best case 15 percent gain from the second thread. For 6 cores all part of the same program counts for another core. An E core counts for something like 80% (this is all me handwaving) of a P-core, so E-core is much more powerful and useful than a hyperthread. My recollection of introduction of HTT was considered a gross gimmick, but PC support for symmetric multiprocessing was still an exciting new and expensive direction, so getting some of multiprocessing advantages within a PC board socket was a show stealer for Windows against workstation-class kit. Those days are past, but Intel is still sort of trapped in these gimmicky ways of thinking while Apple is free to move on. For unlimited power desktops where a GPU that sucks 500W is considered a viable option, an E-core looks stupid, but its there to let Intel offer 12th in mobile and keep balancing the house of cards that is its product lineup.