[Beowulf] Opinions of Hyper-threading?

Mark Hahn hahn at MCMASTER.CA
Wed Feb 13 13:38:04 PST 2008

> turned on. I'm wondering what you HPC cluster
> people think of hyper-threading. I haven't

Intel's P4 hyperthreading was often just hype.
after all, it's really just timeslicing the same CPU 
resources at a finer granularity than normal OS-based preemption.
the chips contain no additional functional units, etc.
when a thread hits a potentially long stall (say, a cache miss)
the scheduler switches to the other thread.

as far as it goes, it makes good sense.  but suppose you have 
two threads, each of whose working set occupies most of the cache.
without HT, each will run until preempted by the OS;
with HT, they'll constantly get reactivated, and both will see 
drastically bad cache hit rates.

> heard much about it recently since most
> modern processors are true multi-core.

Intel dropped it in the last netburst P4.  they make noises about
bringing some form of SMT back in later/future processors.

> The main thing I'd like to know is whether
> hyper-threading can do any harm when cpu
> bound jobs are run.

sure.  in a meaningful sense, HT will hurt to the extent that 
the job is well-tuned...
if it's not compute-bound, HT won't hurt.  if the job is something
like a compiler, often stalled on cache misses, system throughput 
could very well increase if you overcommit.

More information about the Beowulf mailing list