Sign in with
Sign up | Sign in
Your question

Hyper threading for computation-intense single thread applications

Last response: in CPUs
January 30, 2012 4:21:34 PM

I have a couple of computationally intensive single threaded programs (written by me). With hyperthreading enabled, should I expect the application to be limited to one hyperthread==half of one core? Will the application run at 1/2 of 1/4 of the computational power of an i7 processor (first generation). Or will it claim all the computations of one core?

a b à CPUs
January 30, 2012 4:26:26 PM

If its single threaded, you aren't going to see any impact whatsoever. There is nothing to offload to a HTT core.

Now, if you threaded the application in such a way as to break up the computation while keeping it parallel, you might see a "small" performance bump.
January 30, 2012 4:29:56 PM


Then I conclude that I should run the processor with hyperthreading disabled.

Am I correct?

I.e. I'll get a whole core, rather than a hyperthread half core.

Related resources
a b à CPUs
January 30, 2012 4:31:56 PM

try it both ways. i don't think you should didable it.
a b à CPUs
January 30, 2012 5:46:10 PM

It shouldn't affect the application either way. I recommend leaving it on, as other background applications can probably benifit from HTT.
a c 448 à CPUs
January 30, 2012 8:40:50 PM

I would try it both ways. There have been some benchmarks both current and in the past where Hyper Threading (HT) caused a small negative impact in games. I know you are not designing / running a game, but you might as well see if there is some type of impact.

In order for a program to take advantage of HT, it must be specifically designed to do so.
a c 90 à CPUs
January 30, 2012 9:58:19 PM

as others have said best try it both ways. sometimes you will get slightly more performance on single threading apps if you turn off hyper threading. but it depends on how well optimized your code is as to how well the cpu will use it. its q quick test with nothing more than going into bios and turning it off or on..running the app and timing it to completion..