Fog Creek Software
Discussion Board

What is Hyperthreading?

I've never seen this term before, but I saw it in two threads here today. Can someone please explain what it means? As simply as possible, please  :)

Wednesday, October 1, 2003

CPU's have execution pipelines; basically an on-chip cache of instructions to execute. Often, to increase speed, CPU's will have multiple pipelines.

Some operations cause what's called a "pipeline stall" - the CPU has to wait for, say, a floating point operation or a memory read. the CPU COULD be doing other stuff.

Hyperthreading is something Intel cooked up to use those "stall slots" in the execution pipeline to run multiple threads while the CPU would otherwise be stalled.

At least I think that's what it is; it's been a while since I saw the presentation.

Intel's got a tutorial here:

Chris Tavares
Wednesday, October 1, 2003

The first link is to Intel's website about Hyperthreading.

Wednesday, October 1, 2003

jan Derk
Wednesday, October 1, 2003

It's where an Intel CPU pretends to be two CPUs. (as far as the OS is concerned, one Hyperthreaded CPU is exactly like two normal CPUs).

You don't quite get twice the performance of a single CPU; I've found it to be more like 120% - 140%. Still pretty good. (of course you have to be running software that uses >1 CPU to see any difference)

Dan Maas
Thursday, October 2, 2003

5% technology
95% advertising hype

Common Sense Guy
Thursday, October 2, 2003

If you engineer highly scalable applications written to specifically to spawn 2-8 separate process/threads to use each of these processors, it's actually really useful for blocking calls and could eliminate one of the big reasons people buy dual processors.

Li-fan Chen
Thursday, October 2, 2003

If you have a dual cpu machine and use hyper threading you will then have 4 cpus in Windows XP. I took this question I had for our video editing guy who is selling these things. By having 4 cpus does that mean you need to buy a licence for not 1-2 cpu for the machine but for the 4 that it is seeing. As usual I got a blank stare and saw into the void that is his understanding of such things. I also asked him if Windows XP if only licensed for 1-2 cpus would use the other 2. Once again an empty stare.

Anyone know what the deal is with this? I have never had to deal with windows licenseing before. Thanks.

Thursday, October 2, 2003

<Empty stare...>

Grumpy Old-Timer
Thursday, October 2, 2003

My question is : you have 2 hyperthreading CPU on a dual motherboard. Will windows XP pro reports 4 CPUs because hyperthreading is on ? It does report 2 CPUs when you have 1 hyperthreading CPU. I have a 10 seats license. Am I using 1 license, 2 licenses or 4 ? What's my age ?

Application Specialist
Thursday, October 2, 2003

Windows XP and 2003 deal with hyperthreading correctly and will only count "real" processors as part of your licence rights, not the virtual ones that hyperthreading creates. You get these "for free".

So a computer with one hyperthreading processor inside is only using one processor for licencing terms even if the task manager sees 2 processors.

Rob Moir
Microsoft MVP for Windows Servers Technology

Robert Moir
Thursday, October 2, 2003

"5% technology
95% advertising hype "

Not really.

No doubt that there is plenty of hype around Hyperthreading, but for well written software designed for multiple CPUs it generates a noticeable performance increase.

Mark Hoffman
Thursday, October 2, 2003

A way to get you to pay for twice the number of physical processors in your server when buying enterprise software on a per processor basis.  Some vendors, but not all have stopped screwing people that bad. 

Plus it looks really cool in perfmon to see your single processor box show you two processors.

"5% technology
95% advertising hype "

Correct, although you may giving the technology too much credit.  More intel hype.  By the way the Itanium has edged out the AMD opteron as the worst selling processor last quarter, although Intel won't publicize that.

Thursday, October 2, 2003

I think the previous poster owns a lot of AMD stock...

They don't charge for the additional 'processor', so you'll have to come up with a new conspiracy theory.

And the performance benchmarks that you could do yourself would demonstrate that it's more technology than hype.

But..Hey..don't let the facts get in the way with your opinion.

Go Linux Go!
Thursday, October 2, 2003

"I think the previous poster owns a lot of AMD stock..."  I see all the linux guys that want the cheapest possible box and don't want to pay the "intel tax" bang their heads cause mother board x, y, or z are not completely compatible with their AMD junk.    I happen to think the Pentium 4's are fine and are what I'd use if I was building a personal computer.

I'm no fan of AMD either.  Just iterating what a joke I think Itanium is.  Your name fits you.

"And the performance benchmarks that you could do yourself would demonstrate that it's more technology than hype."  You mean the ones from Intel?

"They don't charge for the additional 'processor', so you'll have to come up with a new conspiracy theory."  Yes a lot of software did when hyperthreading first hit the market.  There was talk on how the pricing would work with SQL Server at a vldb conference I was at given by them and Unisys.  Unisys basically said on the best day, with all the planets aligned, the sun at your back and with the glass half full, you could expect a 20% performance gain over a normal processor. 

I guess you are probably of the opinion that processor clock rate is the MOST important indicator of a fast pc. 

Thursday, October 2, 2003

No Mike, not the ones from Intel. The ones that are all over the web. If you are incapable of using Google, well...then nevermind. There are plenty of web sites that have done benchmarks that show the performance increase.

Let's just say that you get a maximum of 15% increase, which is a reasonably conservative number. How exactly does a 15% performance increase equate to "marketing hype"?

I'm a performance guy. The chip runs faster. Period. That ain't marketing hype, that's called speed. I don't let some silly hatred of Intel, MS or even SCO blind me to what works the best for what I need.

Go Linux Go!
Thursday, October 2, 2003

I have no silly hatred of anything.

Thursday, October 2, 2003

Well, you do talk about how hyperthreading is all hype, without any meaningful data to back you up.  Furthermore, you brought up Itanium which is totally and completely irrelevant to this thread.  So what exactly are we supposed to think?

Mike McNertney
Thursday, October 2, 2003

That his hatred isn't silly?

Friday, October 3, 2003

I just thought the reference to the Itanium was relevant to prove the point that Intel blows a lot of smoke at times. 

Monday, October 6, 2003

Well this doesn't help me  in my decision about weather or not Hyperthreading is the way to go for my upgrade...thanks for wasting my time with useless arguements.

Wednesday, February 25, 2004

The way I see it is, I'm no fan of either, I'm a simple man on a machine at home for every day common use. HT doesnt have any noticable power increase for me, and it does nothing but stop my old favourite games from running (even though thats not Intel's fault)

Still it sounds kinda cool when comparing to AMD people :) 800mhz bus all teh way baby ;)

Home guy
Wednesday, May 19, 2004

*  Recent Topics

*  Fog Creek Home