Originally posted by mdedetrich
View Post
"hyperthreading is mainly a result of trying to squeeze out more performance from an older CISC based style ISA that has different word size's for ISA instructions."
SMT has a long history, only part of which is overlapped by x86 adoption. As for why they adopted it, you're again fitting your own rationale onto a selective reading of the facts. For the most part, x86 CPUs do quite well at mitigating the frontend bottlenecks by use of micro-op caches. By itself, further mitigating that shouldn't deliver nearly enough benefit to justify it.
Originally posted by mdedetrich
View Post
Originally posted by mdedetrich
View Post
Originally posted by mdedetrich
View Post
- wide frontend
- large reorder buffer (indeed, large enough to sometimes even hide full cache hierarchy misses)
- large caches
- lower clock speed (which reduces the latency hit of a cache miss, in terms of clock cycles)
Apple is also less price-sensitive than others, due to their vertical integration and focus on the premium market. So, they're less concerned with maximizing perf/mm^2 (and, by extension, perf/$) than other CPUs you're comparing against.
BTW, I can tell you another mobile-first CPU core that doesn't have SMT - Intel's E-cores. And they're x86, with Gracemont having similar IPC as Skylake. So, you can't argue they don't need it by virtue of being slow, or else you'd be arguing that Skylake didn't need it either.
Leave a comment: