0% found this document useful (0 votes)
145 views

Hyper Threading Technology

Hyper-threading Technology enables the processor to execute two threads, or sets of instructions, at the same time. The technology is used in certain Pentium 4 processors and all Intel Xeon processors. It can improve processing performance, but software must support multiple processors to take advantage of the technology.

Uploaded by

khumiii
Copyright
© Attribution Non-Commercial (BY-NC)
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOC, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
145 views

Hyper Threading Technology

Hyper-threading Technology enables the processor to execute two threads, or sets of instructions, at the same time. The technology is used in certain Pentium 4 processors and all Intel Xeon processors. It can improve processing performance, but software must support multiple processors to take advantage of the technology.

Uploaded by

khumiii
Copyright
© Attribution Non-Commercial (BY-NC)
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOC, PDF, TXT or read online on Scribd
You are on page 1/ 5

Hyper Threading Technology

Hyper-threading is a technology developed by Intel Corporation. It is used in


certain Pentium 4 processors and all Intel Xeon processors. Hyper-threading technology,
commonly referred to as "HT Technology," enables the processor to execute two threads,
or sets of instructions, at the same time. Since hyper-threading allows two streams to be
executed in parallel, it is almost like having two separate processors working together. A
software program can be compiled to have two instructions processed at the same time
(as is done for dual processor systems) and runs faster using hyper-threading technology.
Intel also promises speed gains when two separate programs run at the same time in a
multitasking environment.

While hyper-threading can improve processing performance, software must


support multiple processors to take advantage of the technology. Fortunately, recent
versions of both Windows and Linux support multiple processors and therefore benefit
from hyper-threading. For example, a video playing in Windows Media Player should not
be slowed down by a Web page loading in Internet Explorer. Hyper-threading allows the
two programs to be processed as separate threads at the same time. However, individual
programs can only take advantage of Intel's HT Technology if they have been
programmed to support multiple processors.

Hyper-Threading Technology is now supported on both the Intel Pentium4


Processor with HT Technology for desktops and entry-level workstations, and notebooks
with the Mobile Intel Pentium4 processor supporting Hyper-Threading Technology
provides a significant performance boost that is particularly suited to today's business
computing climate, applications, and operating systems.

Hyper-Threading Technology Architecture

Intel's Hyper-Threading Technology brings the concept of simultaneous multi-


threading to the Intel Architecture. Hyper-Threading Technology makes a single physical
processor appear as two logical processors; the physical execution resources are shared
and the architecture state is duplicated for the two logical processors. From a software or
architecture perspective, this means operating systems and user programs can schedule
processes or threads to logical processors as they would on multiple physical processors.
From a micro-architecture perspective, this means that instructions from both logical
processors will persist and execute simultaneously on shared execution resources.

This paper describes the Hyper-Threading Technology architecture, and discusses


the micro-architecture details of Intel's first implementation on the Intel® XeonTM
processor family. Hyper-Threading Technology is an important addition to Intel's
enterprise product line and will be integrated into a wide variety of products.
Hyper-Threading Technology makes a single physical processor appear as multiple
logical processors [11, 12]. To do this, there is one copy of the architecture state for each
logical processor, and the logical processors share a single set of physical execution
resources. From a software or architecture perspective, this means operating systems and
user programs can schedule processes or threads to logical processors as they would on
conventional physical processors in a multi-processor system. From a micro-architecture
perspective, this means that instructions from logical processors will persist and execute
simultaneously on shared execution resources.

Figure 1: Processors without Hyper-Threading Technology

As an example, Figure 1 shows a multiprocessor system with two physical


processors that are not Hyper-Threading Technology-capable. Figure 2 shows a
multiprocessor system with two physical processors that are Hyper-Threading
Technology-capable. With two copies of the architectural state on each physical
processor, the system appears to have four logical processors.

Figure 2: Processors with Hyper-Threading Technology

The first implementation of Hyper-Threading Technology is being made available


on the Intel® XeonTM processor family for dual and multiprocessor servers, with two
logical processors per physical processor. By more efficiently using existing processor
resources, the Intel Xeon processor family can significantly improve performance at
virtually the same system cost. This implementation of Hyper-Threading Technology
added less than 5% to the relative chip size and maximum power requirements, but can
provide performance benefits much greater than that.

Each logical processor maintains a complete set of the architecture state. The
architecture state consists of registers including the general-purpose registers, the control
registers, the advanced programmable interrupt controller (APIC) registers, and some
machine state registers. From a software perspective, once the architecture state is
duplicated, the processor appears to be two processors. The number of transistors to store
the architecture state is an extremely small fraction of the total. Logical processors share
nearly all other resources on the physical processor, such as caches, execution units,
branch predictors, control logic, and buses.

Each logical processor has its own interrupt controller or APIC. Interrupts sent to
a specific logical processor are handled only by that logical processor.

Hyper-Threading Works

A form of simultaneous multi-threading technology (SMT), Hyper-Threading


technology allows multiple threads of software applications to be run simultaneously on
one processor by duplicating the architectural state on each processor while the same
processor execution resources is shared. The figure below represents how a Hyper-
Threading based processor differentiates a traditional multiprocessor. The left-hand
configuration shows a traditional multiprocessor system with two physical processors.
Each processor has its own independent execution resources and architectural state. The
right-hand configuration represents an Intel Hyper-Threading technology based
processor. You can see that the architectural state for each processor is duplicated, while
the execution resource is shared.

Faster clock speeds are an important way to deliver more computing power, and
Intel has led the way with industry-leading processor frequency. But clock speed is only
half the story. The other route to higher performance is to accomplish more work on each
clock cycle, and that's where Hyper-Threading Technology comes in. A single processor
supporting Hyper-Threading Technology presents itself to modern operating systems and
applications as two virtual processors. The processor can work on two sets of tasks
simultaneously, use resources that otherwise would sit idle, and get more work done in
the same amount of time.

In desktop and notebook PCs and entry-level workstations, HT Technology takes


advantage of the multithreading capability that's built in to Windows XP and many
advanced applications. Multithreaded software divides its workloads into processes and
threads that can be independently scheduled and dispatched. In a multiprocessor system,
those threads execute on different processors. HT Technology allows a single Pentium 4
processor to function as two virtual or logical processors. There's still just one physical
Pentium 4 processor in your PC — but the processor can execute two threads
simultaneously.

In servers and high-performance workstations, Hyper-Threading Technology


enables thread-level parallelism (TLP) by duplicating the architectural state on each
processor while sharing one set of processor execution resources. When scheduling
threads, the operating system treats the two distinct architectural states as separate
"logical" processors, which allows multiprocessor capable software to run unmodified on
twice as many logical processors. Although Hyper-Threading Technology will not
provide the level of performance scaling achieved by adding a second processor,
benchmark tests show some server applications can experience a 30 percent gain in
performance. While this technology can boost applications running on Microsoft
Windows 2000 Advanced Server, it will perform best with operating systems that have
been optimized for Hyper-Threading Technology, including Microsoft .NET Server,
Windows XP, and certain versions of Linux.

Benefits of Hyper-Threading Technology

Business users of Hyper-Threading enabled desktop and notebook PCs will see an
immediate performance impact and increased system responsiveness in today's
multitasking environments up to 25 percent. IT organizations benefit because system
performance is maintained while other tasks run transparently in the background. Tasks
such as virus checking, e-mail encryption, and file compression run more efficiently,
making the overall infrastructure more robust, manageable, and secure. End users enjoy
increased system responsiveness because foreground applications execute in less time
during multitasking scenarios. In addition, when HT Technology is utilized with Gigabit
Ethernet in multitasking workloads, faster networking and data throughput can be
experienced, providing greater performance. In servers and high-end workstations,
performance analyses show solid improvements in server applications that run on
processors with Hyper-Threading Technology.
The advantages of Hyper-Threading are listed as improved support for multi-
threaded code, allowing multiple threads to run simultaneously, improved reaction and
response time, and increased number of users a server can support.

Conclusion

I hope that Hyper-threading will continue to develop and form part of the
latest CPU Intel is making, like the double waffle CPU which will double its comp-
uting capacity. In addition, if hyper-threading doesn’t live long, it was a great idea
that was good while it lasted.

You might also like