are multi-threaded cores the most logical design?

Page 2 - Seeking answers? Join the AnandTech community: where nearly half-a-million members share solutions and discuss the latest tech.

tamz_msc

Diamond Member
Jan 5, 2017
3,865
3,730
136
What's your point? Anything under 5 cores still performed better with HT on.
The point is that RELATIVE performance increment is better with more physical cores vs the same #of physical cores with added HT.

Putting it simply, in this case, the maximum fps is achieved with 6C and HT off.

How difficult can this be to understand?
 
Last edited:

IntelUser2000

Elite Member
Oct 14, 2003
8,686
3,787
136
Consider 8 thread Ryzen 1400(quad core SMT). What if they were able to design 6-8 individual cores that were slightly smaller and narrower single threaded with similar IPC, instead of 4 larger wider SMT cores on the same transistor budget.

Would single thread IPC be directly sacrificed as a result of making the cores smaller and narrower of resources?

The "slight smaller and narrower single threaded" with similar IPC is a contradiction. When the cores become smaller you lose IPC. If they could go smaller with same IPC(or more accurately said same performance for your existing applications) then CPU makers have done it already.

So the answer is yes. 8 cores in the space of 4 larger cores would have noticeably slower performance. Why not go bigger and bigger then? Because the gain in performance from enlarging cores is a fraction of the increased size. 4x bigger is 2x performance. SMT allows utilization of those cores to be much more efficient, since the increase in die size is absolutely minimal.

Besides, one CPU manufacturer already made the CPU OP is suggesting. It's called Bulldozer. :)
 

dogen1

Senior member
Oct 14, 2014
739
40
91
The point is that RELATIVE performance increment is better with more physical cores vs the same #of physical cores with added HT.

That's obvious. I never said otherwise.

I responded to you saying that HT off was faster, when it's not in almost all tested cases.
 

tamz_msc

Diamond Member
Jan 5, 2017
3,865
3,730
136
That's obvious. I never said otherwise.

I responded to you saying that HT off was faster, when it's not in almost all tested cases.
The confusion stems from my usage of the words 'loses performance'; to be more precise - enabling HT can lower the performance gains that you will get from simply adding more physical cores.
 

NTMBK

Lifer
Nov 14, 2011
10,495
5,941
136
The thing to realise is that work from a single thread tends to be "bursty". A very wide core is needed to extract maximum instruction-level-parallelism when the data is ready in L1 and the code dictates that there is a lot of parallel work to be done, but then those execution units will sit unused at other points (either due to low ILP code, or stalling on memory fetches). SMT (as used by Intel) is meant to give you a bit of "free" performance on top, by making sure that those units are utilised for a larger percentage of the time.

Others have gone much further with multithreading. IBM build CPU cores which have up to 8 simultaneous threads per core, and are obviously designed around this level of multithreading (with a single thread not being able to use all of the resources available). GPU cores also use multithreading very heavily; for instance NVidia's Maxwell SM (the equivalent of a CPU core) can have up to 64 "warps" (blocks of 32 threads), even though it can only schedule 4 warps per cycle. The assumption is that a warp is very likely to stall for multiple cycles (due to e.g. memory operations), and hence they have a large pool of warps on hand to try to make sure that they have something to schedule in order to keep utilization up.

Compared to this sort of solution, Intel's approach is very conservative, and still highly focused on single threaded performance.

EDIT: And of course, Intel has even gone up to 4-way SMT in their Xeon Phi processors.