Originally posted by: taltamir
Originally posted by: dguy6789
Originally posted by: Cogman
Um, hyperthreading is good for multithreading capabilities, not for general purpose computing. There is a performance hit you take by enabling it in single threaded applications. Unless you are doing some highly parallel task, I would suggest leaving it off (especially since you have a quad core processor anyways)
Also, you are using the term thread incorrectly. It is referred to as a logical core (as opposed to a physical core, So you have 4 physical cores and 8 logical cores with HT enabled). Thread refers to a fork of a program.
This is incorrect. Hyper Threading improves system responsiveness and makes the system feel more "snappy" in general. Very few programs receive a performance penalty from having it enabled, and those that do usually have a very tiny hit that wouldn't be noticeable. HT is arguably the most important difference between Core 2 Quad and Core i7.
yes!
Even in the atom, it has HUGE performance benefits when it works, and almost no penalty when it doesn't.
That is because the penalty occurs from slightly more overhead, while the benefits include using unused resources on a core (if a thread only uses 50% of sa,y the arithmatic units due to the nature of the calculation, another thread might make use of some of the the unused ones which would have otherwise gone to waste).
Look, the atom is a single logical core. The P4 is a single logical core. The reason hyperthreading works well on these is because it effectively makes the system work as if it had two cores, its like going from a single core processor to a dual core processor, the difference is noticed because of the extra core.
Nehalem is a quad core cpu, whole "System is more responsive" argument goes out the window because the CPU has 4 real cores to use. There isn't going to be any noticeable responsiveness increase because of that.
There MAY be a speed increase in some highly threaded applications (As I said earlier) However, I know of VERY few consumer applications that will use 8 logical cores. If a program is threaded at all, it generally will only take advantage of 2 cores. For everything else, you will get a penalty.
On a P4-Atom, Yes, hyperthreading should be enabled. On a nehalem, It should only be enabled if you have some program running that is consuming 8 threads (Or 8 or more CPU intensive programs)
BTW, IIRC the single threaded penalty for enabling hyperthreading is something like 5-10%. That's not exactly a small penalty.