When is it worth enabling hyperthreading?
Pierre-Luc Drouin
pldrouin at pldrouin.net
Thu Oct 8 03:24:25 UTC 2009
Hi,
Could someone explain me in which cases it is useful to enable
hyperthreading on a machine running FreeBSD 8.0 and in which other cases
it is not a good idea? Is that possible that hyperthreading is
disadvantageous unless the number of active (non-sleeping) threads is
really high?
For example, if I have an i7 CPU with 4 physical cores and that I run
some multi-threaded code that has only 4 threads, it will run almost
always (twice) slower with hyperthreading enabled than when I disable it
in the BIOS. If I understand correctly, hyperthreading has the advantage
of being able to do CPU context switching faster than the OS, but it
does this context switching systematically instead of only when
requested, so it slows things down unless the number of running
(non-sleeping) threads is greater or equal to let say the number of
physical threads x 1.5-1.75.
Thanks!
More information about the freebsd-questions
mailing list