Why is CPU "hyperthreading" limited to 2 threads? Why can't AMD or Intel make it 4, 8 or 10 threads per core?

SeriousGaming101

Distinguished
Mar 17, 2016
301
0
18,780
Why is hyperthreading always limited to 2 threads per core? Like, 4 core - 8 threads or 8 cores and 16 threads...

Why can't AMD or Intel increase the threads per core to something like; 4 core - 32 threads or 8 core - 80 threads
 

Barty1884

Retired Moderator
Space & simplicity, I think.

Not knowledgeable enough to go into much detail, but there's shared resources between within a core, shared between the 2 'threads.
To have >2 "threads" per core, you'd need more resources, taking up more space.

Now sure, in theory; 1 core with 8 threads would probably take up marginally less space than 4 cores w/8threads
BUT,

The best analogy (although ridiculously over-simplified) I ever heard for HT or SMT was
HT = hands
Core = mouth.
Data to process = food.

The hands can bring food to your mouth, but you only have one mouth - the second hand is ready to go as soon as the mouth is free.

Having 8 hands to only 1 mouth, doesn't seem particularly efficient.
Sure, food/data is always ready to go as soon as the mouth/core is free, but that's also true with 2 threads.
Essentially, 8 threads per core would just create a ridiculous, unnecessary 'bottleneck' in the process.
 

mlee 2500

Honorable
Oct 20, 2014
298
6
10,785


Sun Microsystems (and later Oracle) did it....they put out a 128 Thread SPARC processor which was glorious for massively multi-user or virtualized systems.