How Hyper Threading Technology Works?

While I was going through one of the forums, I found out that someone had a difficulty in understanding how exactly a processor works as a multi-core processor. I will try to elucidate this in a simpler manner.

Intel has the propriety of hyper-threading technology. In this system, we can make a single core processor to virtually work as a multi-core processor. That is, the single processor gets split into two and then both share the workload simultaneously as instructed by the operating system. Now for this to work, the operating system which can command two processors should be present on the machine. Thus, they need operating systems which are specially designed for commanding two cores and if not present, using HTT should be avoided. Not all the processors of Intel are HTT implemented but here are the few which are – Atom, Pantium4, Titanium, Xenon, i3, i5, and i7.

[​IMG]
Image Credits: HP

How does it actually work? In this process, certain sections of the processor are duplicated or virtually reproduced but at the same time, the main execution resources are maintained the same. Thus, the processor appears as not one but ‘two’ logical processors. What this helps in is that, now the operating system can schedule two tasks or programs or processes knows as ‘threads’ simultaneously. Thus when the main execution resources (which are common to both) are not being used by one processor, then they might be used by other. This increases the overall performance of the machine.

The tool that OS uses to deal with hyper-threaded processors is the scheduler. And if the scheduler is not programmed accordingly, there’s practically no point in using hyper threaded processors. For instance, lets assume that a machine has two hyper threaded processors (p1 and p2), which makes it to a total of four logical processors (say, p11, p12 and p21, p22). These 4 logical processors can now share the work and act simultaneously. but an unprogrammed OS may treat both the processors to be one. In such a case, both ‘logical’ processors of the same processor (p11, p12) may be scheduled to do the entire task leaving the other processor idle. This will make the system performance poorer. So the correct OS is important.

Some of the performance characteristics of HTT enabled processors are:


    [*]Much less response and reaction time and support to multi-threaded programs
    [*]30% enhancement in the performance is seen in a HT processor compared to other identical processor without HT.
    [*]Some have said that even a P3 HT enabled processor can leave behind a P4 in execution processes.
    [*]However the tech has some issues regarding more power consumption and increase in cache thrashing and the tech being application specific.

I have tried to elucidate HTT in as simple words as I could, I hope you get your doubts cleared with this.

Replies

You are reading an archived discussion.

Related Posts

Maruti Suzuki has surpassed all the technological innovations by inventing a flying Maruti 800 car which will be featured at Aero India 2011. The fest will be commencing on 9th...
The current power scenario should be a matter of great concern to the future and present engineers. The consumer demands are increasing day by day and the rate of increase...
It looks like Research In Motion (RIM), the mobile manufacturing giant that manufactures Blackberry is not spending enough on its security measures. Crackberry, an online site unofficially meant for Blackberry...
Recently, Google demonstrated the newer version of the Android series, Android Honeycomb 3.0. The demo of the new OS was given on Motorola’s  Xoom tablet which is soon to be...
Innovations in engineering and technology address many of the world’s most complex challenges—clean water, new medicines, and safe roads. Everything we know has been touched by engineering. Thought leaders agree...