Hyper-Threading
Neil Chakrabarty
William May
To Be Tackled
Review of Threading Algorithms
Hyper-Threading Concepts
Hyper-Threading Architecture
Advantages/Disadvantages
Applications
2
Threading Algorithms
Time-slicing
A processor switches between threads in
fixed time intervals.
High expenses, especially if one of the
processes is in the wait state.
Switch-on-event
Task switching in case of long pauses
Waiting for data coming from a relatively slow
source, CPU resources are given to other
processes
3
Threading Algorithms (cont.)
Multiprocessing
Distribute
the load over many processors
Adds extra cost
Simultaneous multi-threading
Multiple threads execute on a single
processor without switching.
Basis of Intel’s Hyper-Threading technology.
4
Hyper-Threading Concept
At each point of time only a part of
processor resources is used for execution
of the program code.
Unused resources can also be loaded, for
example, with parallel execution of another
thread/application.
Extremely useful in desktop and server
applications where many threads are
used.
5
6
Hyper-Threading Architecture
First used in Intel Xeon MP processor
Makes a single physical processor appear as
multiple logical processors.
Each logical processor has a copy of
architecture state.
Logical processors share a single set of physical
execution resources
7
Hyper-Threading Architecture
Operating systems and user programs can
schedule processes or threads to logical
processors as if they were in a
multiprocessing system with physical
processors.
From an architecture perspective we have
to worry about the logical processors using
shared resources.
Caches, execution units, branch predictors,
control logic, and buses.
8
Advantages
Extra architecture only
adds about 5% to the
total die area.
No performance loss if
only one thread is active.
Increased performance
with multiple threads
Better resource
utilization.
9
Disadvantages
To take advantage of hyper-threading
performance, serial execution can not be
used.
Threads are non-deterministic and involve
extra design
Threads have increased overhead
Shared resource conflicts
10
Applications
Video Watermark Detection
Two stages
Video Decoding
Image-domain watermark detection
Video Processing
3 stages
Reading Video information
Processing Video information
Writing Video information
11
Video Watermarking
12
Performance Results
13
Video Processing
Most time is spent in processing.
Divide the video processing into threads
4 Threads in this example
Have to worry about waiting until all
processing threads are done before writing
back the data out.
14
Video Processing (cont.)
15
To Be Tackled
Review of Threads
Hyper-Threading Concepts
Hyper-Threading Architecture
Advantages/Disadvantages
Applications
16
References
Intel Technology Journal. Volume 6 Issue 1. February
14, 2002
Intel Hyper-Threading Technology Review
www.digit-life.com/articles/pentium4xeonhyperthreading/
HyperThreading Threads Its Way into Application
http://www.tomshardware.com/cpu/20021227/
Introduction to Multithreading, Superthreading and
Hyperthreading
http://www.arstechnica.com/paedia/h/hyperthreading/hyperthrea
ding-1.html
17