Linked by David Adams on Wed 4th Aug 2010 18:28 UTC, submitted by estherschindler
Hardware, Embedded Systems Anyone contemplating a new computer purchase (for personal use or business) is confronted with new (and confusing) hardware choices. Intel and AMD have done their best to differentiate the x86 architecture as much as possible while retaining compatibility between the two CPUs, but the differences between the two are growing. One key differentiator is hyperthreading; Intel does it, AMD does not. This article explains what that really means, with particular attention to the way different server OSes take advantage (or don't). Plenty of meaty tech stuff.
Permalink for comment 435421
To read all comments associated with this story, please click here.
Comment by another_sam
by another_sam on Wed 4th Aug 2010 19:52 UTC
another_sam
Member since:
2009-08-19

"At some point, the pipeline may stall. It has to wait for data, or for another hardware component in the computer, whatever. We’re not talking about a hung application; this is a delay of a few milliseconds while data is fetched from RAM. Still, other threads have to wait in a non-hyperthreaded pipeline, so it looks like:
thread1— thread1— (delay)— thread1—- thread2— (delay)— thread2— thread3— thread3— thread3—"

I don't get a clear picture of this added to what they told me about OS scheduling at college. I remember that was something like "when waiting for resources, the process is kicked from the CPU and put in the 'Blocked' list". See this beauty:
http://en.wikipedia.org/wiki/File:Process_states.svg

Now, according to the article, Hyperthreading is an invention for dumb OSes who are not able to put blocked processes into a 'Blocked list' out of the CPU or what?

Reply Score: 3