What Is Hyper-Threading? [Technology Explained]

hyperthreadingthumb   What Is Hyper Threading? [Technology Explained]If you’ve thought about buying an Intel processor lately – or a computer with an Intel processor installed – you may have heard the term “Hyper-Threading” launched at your eardrums. You probably aren’t familiar with this term unless you stay up-to-date with the nitty-gritty of computer hardware.

Understanding Hyper-Threading is important, however, because it’s a major feature on some Intel processors. Like most major processor features, it can be twisted and turned by the sales reps you meet. I’ve had a Fry’ store employee tell me that Hyper-Threading effectively doubles the number of cores on a processor. Although true in a sense, it’s mostly an exaggeration.

Let’s take a look at what Hyper-Threading really means.

A Brief History Of Hyper-Threading

hyperthreading1   What Is Hyper Threading? [Technology Explained]Depending on when you last bought a computer, you may remember Hyper-Threading as a feature that Intel introduced and then discontinued. This could understandably leave a sour taste in your mouth – why would Intel discontinue it if it wasn’t trouble?

The truth isn’t so grim. Hyper-Threading was for a time made available on certain Intel Pentium 4 and Intel Xeon processors. It was discontinued not because the feature itself was bad, but rather because the processor that used it turned out to be a bit of a misstep for other reasons. The Pentium 4 architecture was a minor disaster for Intel because it was incapable of going the direction Intel hoped (Intel wanted to have Pentium 4 processors with clock speeds of up to 10 GHz). As a result, Intel jumped back to designing processors based on the Pentium Pro family tree.

Hyper-Threading was gone, but not forgotten. Intel eventually found the time and resources to integrate it into another new processor architecture – Nehalem. This is the architecture that is the basis for all current Intel Core i3, i5 and i7 processors.

Nice Threads, Man

hyperthreading3   What Is Hyper Threading? [Technology Explained]

Despite all of the advancements we’ve made in the world of processors, they still have one major limitation – an individual processor core can only execute one instruction at a time. Let’s say, for example, that you have MS Office, Firefox and Skype all open at once. You feel like you’re multi-tasking, but in processor terms you’re not. The processor core executing data related to these programs executes one instruction at a time, but because it is so quick you don’t notice any delay.

But there is a delay. That delay is due to how the data from each program is fed to the processor. Each stream of data – or thread- in to the processor must be scheduled and executed by the core individually. Hyper-threading, however, makes it possible for each processor core to schedule and assign resources to two threads at once.

Imagine a worker on an assembly line. There two types of widgets coming to her, and she needs to do different things with each widget. However, sometimes there is a delay because the conveyor belt is too slow, or because the wrong widget was sent at the wrong time. Hyper-Threading is like adding another conveyor belt so there is now one dedicated to each type of widget. There is still only one worker, but now widgets can be brought to her more quickly and efficiently so she is waiting for work less often.

Not The Same As Doubling Cores

hyperthreading2   What Is Hyper Threading? [Technology Explained]If you boot up a dual-core processor with Hyper-Threading and open Windows Task Manager you will find yourself staring at four graphs. This is where most of the confusion about Hyper-Threading doubling the number of cores come into play. I’ve even spoken with one poor fellow who thought he’d purchased a eight-core processor because he saw eight graphs in Windows Task Manager. That’s what the sales rep told him, so when he went home and saw eight graphs, he was hooked. Seeing was believing.

Two graphs appear in Windows for each core on a Hyper-Threading processor because Windows is detecting two logical processors for each core. The term “logical processor” sounds fancy, but a logical processor is by definition a processor that has no physical existence. Windows can send threads to each logical processor, but there is still just one core doing the actual execution, so a single core with Hyper-Threading is dramatically different from two seperate physical cores.

The Benefit Of Hyper-Threading

hyperthreading4   What Is Hyper Threading? [Technology Explained]Alright, enough with the technical mumbo-jumbo. Now let’s get down to the most important part – how Hyper-Threading will impact the performance of the computer are thinking of building or buying.

In terms of day-to-day tasks like web browsing, email and word processing, Hyper-Threading won’t have much of an impact. Yes, Hyper-Threading is theoritically better at multi-tasking. However, today’s processors are so fast that basic programs are rarely limited by the speed of your processor. The way programs are coded can also be a limitation. You may sometimes find that you have numerous programs open, but only one of your processor cores is being put to much use. That’s because the programs are, for whatever reason, not having their work divided among the different cores available.

When you’re trying to do some heavy lifting, however, Hyper-Threading can be more helpful. The applications most likely to benefit are 3D rendering programs, heavy-duty audio/video transcoding apps, and scientific applications built for maximum multi-threaded performance. But you may also enjoy a performance boost when encoding audio files in iTunes, playing 3D games and zipping/unzipping folders. The boost in performance can be up to 30%, although there will also be situations where Hyper-Threading provides no boost at all.

Conclusion

As the performance boost figure of only up to 30% indicates, Hyper-Threading is not the same as doubling the number of cores on a processor. If a sales rep ever tells you that, be careful, because they’re either ignorant or happy to lie to you if they think it will help push hardware.

With that said, Hyper-Threading is a cool feature, and it’s worth having. It’s particularly good if you like to edit media often or you use your computer as a workstation for professional programs like Photoshop or Maya.

The comments were closed because the article is more than 180 days old.

If you have any questions related to what's mentioned in the article or need help with any computer issue, ask it on MakeUseOf Answers—We and our community will be more than happy to help.

16 Comments -

Scott_T

I keep looking at the last graph and I see hyperthreading is slower. Am I missing something or is there a typo?

Dan

While hyperthreading is a nice feature to have, I’m more interested in cheaper and bigger solid state drives. It can have a real noticeable effect on speed.

Mr. John

“I’ve had a Fry’ store employee” don’t you mean Fry’s?

Mr. John

“I’ve had a Fry’ store employee” don’t you mean Fry’s?

Edsn_card

This article is very useful, Hyper threading is just a marketing term and it doesn’t have that much impact. It’s part of business, it purpose is to attract plenty of buyers.

M.S. Smith

I wouldn’t say it’s “just a marketing term” – it does have some effect on performance – but it is a term that can be abused by marketing easily. To be fair, that’s nothing new. It wasn’t long ago that Dell had graphs on its websites that claimed a quad-core processor was 400% quicker than a single-core processor.

venkat

I am not sure offering i3,i5 ,i7 processors with hyper-threading technology, this technology is outdated.

M.S. Smith

No, it’s not outdated at all. Just check Intel’s website.

M.S. Smith

:facepalm:

Yes, I managed to select basically the worst graph out of the bunch. Here is the full article I found it at: it’s a test by Dell looking at the effect hyper-threading has on server performance. It’s an old article, but worth a look even so.

http://www.dell.com/content/to

Dan

I was in search of this explanation for quite sometime.Thanks for the article Mr. Smith.
However, I am still quite unsure of few things:
1. So it’s implied from the article that dual-cores are definitely faster and do more efficient work than single-cores with hyper-threading. Is it right?
How about this scenario: A laptop sporting i5 with hyper-threading vs a laptop with i5 quad core with hyper-threading.
I would understand that the first one will register 4 graphs in the CPU Usage History part of the Task Manager, while the second one will register 8 graphs there.Isn’t this right sir?

2. If there were two Task Managers I am looking at and each has 4 graphs, how would I differentiate if one was actually quad-core with no hyper-threading ability while the other computer was having just normal core (dual ) with hyper-threading ability? (Just like the first graphs in this article). In execution terms, of course, the quad would rule anyway over the normal duo core with hyper-threading, wouldn’t it? Where else do I look in the computer to know that one has quad core while the other is just core i5 with hyper-threading?

As far as this article implies, “hyper-Threading” implies “doubling the number of threads” and not necessarily tripling or quadrupling. Just asking out of curiosity here :)

I know my questions may have self-obvious answers for the techy-geekies but I am not much of a computer-savvy kid.
Thanks in advance to Smith for taking the trouble to look into my questions!

Dan

I was in search of this explanation for quite sometime.Thanks for the article Mr. Smith.
However, I am still quite unsure of few things:
1. So it’s implied from the article that dual-cores are definitely faster and do more efficient work than single-cores with hyper-threading. Is it right?
How about this scenario: A laptop sporting i5 with hyper-threading vs a laptop with i5 quad core with hyper-threading.
I would understand that the first one will register 4 graphs in the CPU Usage History part of the Task Manager, while the second one will register 8 graphs there.Isn’t this right sir?

2. If there were two Task Managers I am looking at and each has 4 graphs, how would I differentiate if one was actually quad-core with no hyper-threading ability while the other computer was having just normal core (dual ) with hyper-threading ability? (Just like the first graphs in this article). In execution terms, of course, the quad would rule anyway over the normal duo core with hyper-threading, wouldn’t it? Where else do I look in the computer to know that one has quad core while the other is just core i5 with hyper-threading?

As far as this article implies, “hyper-Threading” implies “doubling the number of threads” and not necessarily tripling or quadrupling. Just asking out of curiosity here :)

I know my questions may have self-obvious answers for the techy-geekies but I am not much of a computer-savvy kid.
Thanks in advance to Smith for taking the trouble to look into my questions!

M.S. Smith

1) Yes, you’re right.

2) From a task manager, you usually can’t tell the difference between quad core vs. dual core with hyperthreading. You usually need a program like CPU-Z or some other software provides hardware details.’

Hyper-threading is a doubling of the number of threads – six core processors with hyper-threading, for example, have 12 threads.

Dan

Thanks Smith for the answers!
That took another cloud of doubt off my head.

M.S. Smith

1) Yes, you’re right.

2) From a task manager, you usually can’t tell the difference between quad core vs. dual core with hyperthreading. You usually need a program like CPU-Z or some other software provides hardware details.’

Hyper-threading is a doubling of the number of threads – six core processors with hyper-threading, for example, have 12 threads.

Dan

Thanks Smith for the answers!
That took another cloud of doubt off my head.