SlideShare una empresa de Scribd logo
1 de 22
Descargar para leer sin conexión
INTRODUCTION
Hyper-threading or Hyper-Threading Technology(HTT), is actually Intel’s
trademark for their multi-threading, but has become a common name for all
processors of this type. It is essentially a cut down version of dual version of dual
core. Execution units on a hyper-threaded CPU share certain elements, such as cache
and pipelines.
The operating system sees a single hyper-threaded processor as two separate
logical CPUs. Threads can be scheduled to execute on any of these logical
processors. The main strength of hyper-threading is that it allows for flexible
scheduling of all available execution slots, which increases efficiency by keeping the
execution core as busy as possible. All that is required to take advantage of this
technology is symmetric multiprocessing support in the operating system .Hyper-
threaded processors still share the same cache; it is possible for applications
performance to actually degrade if both threads are contending for the CPU cache at
the same time.
Microprocessor designers mainly give emphasis to two main factors-SPEED
and PARALLELISM in their quest towards efficiency. Notion of thread and process
are used by computer programmers and hardware designers in varying contexts.
Various operating systems and architecture give different definitions to them. A
process is a program in execution which has a memory associated with it and a
thread is an actual running component of a process, a process can be a multi-
threaded.
1
Parallelism- initial microprocessors in the 80x86 series supported one
instruction at a time. Also, the pre-dominant operating system during those days –
MS DOS – supported only one process at a time. Pentium and Pentium –Pro series
had increased number of execution cores. Their super-scalar architecture and
pipelining resulted in a certain degree of parallelism. But no processor had the
capability to execute two instructions from different threads simultaneously.
Intel Hyper-Threading technology allows multithreaded operating systems to
view a single physical processor as if it were two logical processors. A processor that
in cooperates this technology shares CPU resources among multiple threads, thereby
enabling faster enterprise-server response times and providing additional CPU
processing power to handle larger workloads. As a result server performance can
improve.
The amazing growth of the internet and telecommunications is powered by
ever-faster systems demanding increasingly higher levels of processor performance.
To keep up with this demand we cannot rely entirely on traditional approaches to
processor design. Microarchitecture techniques used to achieve past processor
performance improvement –super-pipelining, branch prediction, super scalar
execution, out-of order execution, caches-have made microprocessors increasingly
more complex, have more transistor counts and power are increasing at rates greater
than processor performance. Processor architects are therefore looking foe ways to
improve performance at a greater rate than transistor counts and power dissipation.
Hyper-Threading Technology is form of simultaneously multithreading
technology(SMT) introduced by intel. Architecturally, a processor with Hyper-
Threading Technology consist of two logical processors, each of which has its own
processor architectural state. After power-up and initialization, each logical
2
processor can be individually halted, interrupted or directed to execute a specified
thread, independently from the other logical processor on the chip. Unlike a
traditional dual processor(DP) configuration that uses two separated physical
processors, the logical processors in a processor with Hyper-Threading
Technology share the execution resources of the processor core. These resources
include the execution engine, the caches, the system-bus interface and the firmware
Hyper-Threading Technology represents a new approach to improving the
instruction throughput of processors that are targeted for servers, high performance
workstations and desktops . It also provides a view into the future of microprocessor
design where the performance of a processor when executing a specific type of
application or the space and power requirements of a physical processor within a
server may be as important as its raw processing speed.
3
Hyper-Threading Technology is feasible for platforms ranging from mobile
processors to servers. Its introduction into market segments other than servers is
gated only by the availability and prevalence of threaded applications and workloads
in these markets.
Although existing operating systems and application codes will run correctly
on a processor with Hyper-Threading Technology, some relatively simple code
practices are recommended to get the optimum benefit from Hyper-Threading
Technology.
Hyper-Threading Technology does not deliver multiprocessor scaling,
Typically applications make use of about 35% of the internal processor execution
resources. The ideas behind Hyper-Threading Technology is to enable better
processor usage and to achieve about 50 percent utilization of resources.
4
ARCHITECTURE OF PROCESSOR WITH HYPER-THREADING TECHNOLOGY
A Processor with Hyper-Threading Technology may provide a performance
gain of 30 percent when executing multi-threaded operating system and application
code over that of a comparable Intel architecture processor without Hyper-Threading
Technology. When placed in a multiprocessor based system, the increase in
computing power generally scales linearly as the number of physical processors in a
system is increased; although as in any multiprocessor system, the scalability of
performance is highly dependent on the nature of the application.
Two logical processors do not provide the same level of performance as a dual
processor-based system.
Each logical processor has:-
 Its own architecture state.
 Executes its own code stream concurrently.
 Can be interred and halted independently.
Two logical processors share the same
• Execution engine and catches, and Firmware and system bus interfaces.
5
Why Hyper threading???
Even with the optimised pipelining architecture and increased number of
execution units available with modern microprocessors like Pentium and athlon,only
one-third of the resources’ were being used at a time. This is because of the inability
of the processor to execute more than one thread at a time. Even after applying the
intricacies of out of order Execution and advanced branch prediction logic,
instruction from a single thread are far below the maximum utilisation potential of a
processor resulting in wastage of resources.
Single Threaded CPU
6
In this figure-The processor has seven execution paths in the execution core.
Red colour indicates executing threads and white spaces are blank slots. Processor
uses just one-third of its available potential.
Superthreading
An alternative mechanism called Super threading, implemented in some
microprocessors provided some capability to execute multiple threads at a time.
But it also had its limitations. All instructions in one pipeline stage of a
superthreaded processor have to be from the same thread. Superthreading involved
limited amount of context switching too. This technology also didn’t eliminate the
wastage of resources completely.
Super threaded CPU
The Red and Yellow colours indicate executing threads. Each of the six pipeline
stages has one thread.
7
Multiprocessor systems
Using more than one processor in a system directly provided thread
level parallelism. But this was a costly solution and required special on
board support for multiple processors. These systems also required some
type of synchronising mechanism so that both processors function in
unison. The overhead for this synchronization and the frequent collision
for the need of resources slowed down such implementation considerably.
Due to these reasons, multiprocessor systems remain confined to special
purpose implementations and dedicated systems. Hyperthreading,
introduced by Intel provided the solution for this problem.
8
What is Hyper Threading ???
Hyperthreding is super threading without the restriction that each pipeline
stage or clock cycle must contain instructions from the same thread. Vacant
execution slots in each pipeline stage is filled by instructions from another thread
,enabling thread level parallelism. This can be done as long as there is no collision of
resources required by two threads.
Inside the processor
Since more than one thread is being run at the same time, certain architectural
features are replicated, some are shared and some are partitioned. The replicated
resources are instructions pointer ,return stack pointer etc...Caches and execution
units are shared. Partitioned resources include scheduling queues, load-store and
reorder buffers. Another subtle feature is that when only one thread is executing, all
shared and partitioned resources are combined to give maximum throughput. These
additional resources in a hyper threaded Pentium 4 or Xenon processors increased
the processor die area by just five percent. Hyperthreading’s strength is that it allows
the scheduling logic maximum flexibility to fill the execution slots, thereby making
more efficient use of available execution resources by keeping the execution core
busier.
9
From Operating System’s View
When viewed from OS or user level, the hyper threaded processor is split up
into two or more logical processors and threads can be scheduled to execute on any
of the two logical processors and threads can be scheduled to execute on any of the
two logical processors as they are free.
Operating system schedules the threads approximately into the available
logical processors. Scheduling is done in such a way that two running threads won’t
request for a resources simultaneously as far as possible. It is a must that operating
system support hyper threading. Presently the number of logical processors
supported by most operating systems and underlying hardware is two. Latest
operating systems like Windows XP and Red Hat Linux 9 support hyper threading.
10
Multithreading and Message-passing Applications
In general, processors enabled with Hyper-Threading technology can improve the
performance of applications with high degree of parallelism. Previous studies have
shown that the Hyper-Threading technology improves multi-threaded applications’
performance by the range of 10 to 30 percentages depending on the characteristics of
the applications. These studies also suggest that the potential gain is only obtained if
the application is multi-threaded by any means of parallelization techniques. A
multithreading program is capable of creating multiple processes, or threads, at a
time without having to have multiple copies of the program running in the computer.
With the addition of Hyper-Threading support in Linux kernels 2.4.9-31 and above,
Linux cluster practitioners have started to assess its performance impact on their
applications. In our area of interest, high performance computing (HPC) clusters,
applications are commonly implemented by using standard message-passing
Perfomance
Hyperthreading technology improves overall performance in two ways, First in
speeds up applications that are already multithreaded. In this case, each logical
processor will run software threads from the application. Second, It speeds up a
workload consisiting of multiple applications by multitasking.In this case, each
logical processor will likely run threads from different applications.
With a resource sharing policy matched to the traffic and performance requirements
of each recource, hyperthreading technology can increase resource utilisation and
improve performance. Intel is committed to this new and challenging
microarchitecture direction.
11
HYPER-THREADING TECHNOLOGY ARCHITECTURE
Hyper-threading technology makes a single physical processor appear as multiple
logical processors. 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 the user programs can schedule processes or threads to logical processors as they
would on conventional physical processors as they would on conventional physical
processors in a multiprocessor system .From a micro architecture perspective, this
means that instructions from logical processors will persist and execute
simultaneously on shared execution resources.
Processor with Hyper technology
12
Multiprocessor system with two physical processors that are not Hyper-
Threading capable, but 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.
13
The hyperthreading technology implementation on the Netburst
microarchitecture has two logical processors on each physical processor.
Each logical processor maintains a complete sat of the architectural state. The
architectural state consists of registers, including general purpose registers, and those
for control, the advanced programmable interrupt controller (APIC), and some for
machine state. From a software perspective ,duplication of the architectural state
makes each physical processor has its own interrupt controller, or APIC, which
handles just the interrupts sent to its specific logical processor.
Hyperthreading Technology is fully compatible with existing software and hardware.
14
DIFFERENCE BETWEEN HYPERTHREADING AND MULTITHREADING
Hyper-Threading Technology uses the process- and thread-level parallelism
found in contemporary operating systems and high-performance applications by
implementing two logical processors on a single chip. This configuration allows a
thread to be executed on each logical processor. Instructions from both threads are
simultaneously dispatched for execution by the processor core. The processor core
executes these two threads concurrently, using out-of-order instruction scheduling to
keep as many of its execution units as possible busy during each clock cycle.
15
IMPLEMENTATION Of HYPER THREADING TECHNOLOGY
The first implementation of Hyper-Threading Technology is being made
available on intel Xenon processor family for dual and multiprocessor servers, with
two logical processors per physical processor. By more efficiently using exiting
processor resources resources, the intel Xenon processor family can significantly
improve performance at virtually the same system cost. This implementation of
Hyper-Threading Technology added lees 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 processor 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.
16
SOFTWARE ON A HYPERTHREADED PROCESSOR
To get full advantage out of hyper threaded processor, an application must not
only be multithreaded, but the individual threads must be coded in such a way that
they should not raise the request for one resource simultaneously. For example, if
two threads of an application request disk access at the same time, hyperthreading
won’t be of much help Of course no sensible programmer will write a code having
such conflicts. But to write optimised code on a hyper threaded processor,
programmer must have a clear knowledge about the shared resources and possible
conflicts.
Logical view of Hyper-Threading.
17
Threads from different processes
It is not possible to write optimised hyperthreaded code considering the other
applications that will be running on the system. Programmer of one application will
be oblivious to the internals and resources requirements of another application. And
in normal case,it will be difficult to anticipate the applications running in tandem.
For example, coder of a text editor will not be aware of the antivirus tool or
messenger system running on a computer. So in the of threads from different
processors, it is possible only to hope for the best. But some improvements are likely
in this scenario. This is because the processor is unaware of the process-thread
relation. It is does not take care or does not know, which thread is from which
process. It tries to execute the threads presented to it as fast as possible, inducing
into the hyper threading mechanism.
Programmer’s Challenge
Full benefits of hyper threading will be available only when some general
purpose code library supporting hyper threading becomes available. Also there will
be some security issues with this new methodology. This hyper threaded
programming style is yet to be popular. And it is written in the assembly level. If
some high level language or paradigm supports this new style, coding will be easier
and benefits will come along.
18
Operating system and applications.
A system with processors that use Hyper-Threading Technology appears to
the Operating System and applicaton software as having twice the number of
processors than it physically has operating systems manage logical processors as
they do physical processors, scheduling runnable tasks or threads to logical
processors. However, for best performance,the operating system should implement
two optimizations.
The first is to use the HALT instruction if one logical processor is active and
the other is not. HALT will allow the processor to transition to either the STO- or
ST1-mode. An operating system that does not use this optimization would execute
on the idle logical processor a sequence of instruction that repeatedly checks for
work to do. This so-called “idle loop” can consume significant execution resources
that could otherwise be used to make faster progress on the other active logical
processor.
The second optimization is in scheduling software threads to logical
processors. In general, for best performance, the operating system should schedule
threads to logical processors on different physical processors before scheduling
multiple threads to the same physical processor. This optimization allows software
threads to use different physical execution resources when possible.
19
Exploring the impact of Hyper-Threading on Web Workloads
Intel Hyper-Threading technology allows multithreaded operating systems to view a
single physical processor as if it were two logical processors. A processor that
incorporates this technology shares CPU resources among multi threads,thereby
enabling faster enterprise-server response times and providing additional CPU
processing power to handle larger workloads. As a result,server performance can
improve.
If using Hyper-Threading technology ,a dell PowerEdge 6600 server with four CPUs
would expose eight logical CPUs to operating system. Hyperthreading must be
enabled in the BIOS for the operating system to recognize the logical processors.
Microsoft Windows 2000 Server and Windows .Net server operating systems
support Hyper-Threading with no modifications. Recent versions of the Red Hat
Linux Operating System,including versions 7.3 and Advanced Server 2.1,also auto-
detect and enable Hyper-Threading Support.
For Red Hat Linux 7.1 and 7.2,administrators should first
upgrade the kernel to the latest errata package. They can then enable Hyper-
Threading by passing the acpismp=force flag through the boot loader to determine
whether Hyper-Threading is enable under Linux,check/proc/cpuinfo; it should show
twice the number of physical CPUs in the server.
20
Conclusion
Intel’s Hyper –Threading Technology brings the concept of simultaneous
multi-threading to the Intel Architecture. This is a significant new technology
direction for Intel’s Future processors. It will become increasingly important going
forward as it adds a new techniques for obtaining additional performance for lower
transistor and power costs.
This promising technology has the potential to influence the computing
world in a big way. But for that, software support is essential. Also, owing to the
pitfalls of this technology, it is quite possible that another innovation providing
enhanced parallelism come along and displace this altogether.
The potential for Hyper-Threading Technology is tremendous; our current
implementation has only just begun to tap into this potential. Hyper-Threading
Technology is expected to be viable from mobile processors to servers ;its
introduction into market segments other than servers is only gated by the availability
and prevalence of threaded applications and workloads in those market.
21
References
[1] Tau Leng, Ph.D. , “Intel Hyperthreading technology to Achieve Computational
Efficiency ”, November 2003.
[2] Onur Celebioglu , “Intel Hyperthreading technology to Achieve Computational
Efficiency” , November 2003.
[3] Rizwan Ali, “Intel Hyperthreading technology to Achieve Computational Efficiency ”,
November 2003.
[4] Jenwei Hsieh, Ph.D. , “Intel Hyperthreading technology to Achieve Computational
Efficiency” , November 2003.
[5] Tau Leng, Rizwan Ali, Jenwei Hsieh, Victor Mashayekhi, Reza Rooholamini , “ An
Empirical Study of Hyper-Threading in High Performance Computing Clusters ”, Dell
Computer Corp, May 2012.
[6] Decipher Information Systems ,”Hyper-threaded and Dual-Core CPU Technology
”,June 2006 .
[7] Intel, “Intel® Hyper-Threading Technology ”,May 2012.
[8] Intel, “Intel Hyper-Threading Technology -Technical User’s Guide ”, Januvary 2003.
[9] Deborah T. Marr, Desktop Products Group, Intel Corp, “Hyper-Threading Technology
Architecture and Microarchitecture ” Januvary 2002.
[10] Lin Chao, “Intel Technology Journal ”,February 2002 .
[11] Introduction to Hyperthreading-Jon “Hannibal” stokes.
[12] Intel Corp., Ultrabook,SmartPhone,Laptop,Desktop,Server and Embedded,
Available URL: “http://developer.intel.com”
22

Más contenido relacionado

La actualidad más candente

parallel language and compiler
parallel language and compilerparallel language and compiler
parallel language and compilerVignesh Tamil
 
Intel core i7 processors
Intel core i7 processorsIntel core i7 processors
Intel core i7 processorsSelf employed
 
Multi core processors
Multi core processorsMulti core processors
Multi core processorsAdithya Bhat
 
Profiling your Applications using the Linux Perf Tools
Profiling your Applications using the Linux Perf ToolsProfiling your Applications using the Linux Perf Tools
Profiling your Applications using the Linux Perf ToolsemBO_Conference
 
Storage Requirements and Options for Running Spark on Kubernetes
Storage Requirements and Options for Running Spark on KubernetesStorage Requirements and Options for Running Spark on Kubernetes
Storage Requirements and Options for Running Spark on KubernetesDataWorks Summit
 
Computer architecture multi processor
Computer architecture multi processorComputer architecture multi processor
Computer architecture multi processorMazin Alwaaly
 
program partitioning and scheduling IN Advanced Computer Architecture
program partitioning and scheduling  IN Advanced Computer Architectureprogram partitioning and scheduling  IN Advanced Computer Architecture
program partitioning and scheduling IN Advanced Computer ArchitecturePankaj Kumar Jain
 
Heterogeneous computing
Heterogeneous computingHeterogeneous computing
Heterogeneous computingRashid Ansari
 
Computer architecture virtual memory
Computer architecture virtual memoryComputer architecture virtual memory
Computer architecture virtual memoryMazin Alwaaly
 
Introduction to MapReduce | MapReduce Architecture | MapReduce Fundamentals
Introduction to MapReduce | MapReduce Architecture | MapReduce FundamentalsIntroduction to MapReduce | MapReduce Architecture | MapReduce Fundamentals
Introduction to MapReduce | MapReduce Architecture | MapReduce FundamentalsSkillspeed
 
Multithreaded processors ppt
Multithreaded processors pptMultithreaded processors ppt
Multithreaded processors pptSiddhartha Anand
 
Symmetric Multi Processor Multiprocessors
Symmetric Multi Processor MultiprocessorsSymmetric Multi Processor Multiprocessors
Symmetric Multi Processor MultiprocessorsSaad Tanvir
 
Timeline of Processors
Timeline of ProcessorsTimeline of Processors
Timeline of ProcessorsDevraj Goswami
 
RISC - Reduced Instruction Set Computing
RISC - Reduced Instruction Set ComputingRISC - Reduced Instruction Set Computing
RISC - Reduced Instruction Set ComputingTushar Swami
 

La actualidad más candente (20)

parallel language and compiler
parallel language and compilerparallel language and compiler
parallel language and compiler
 
Intel core i7 processors
Intel core i7 processorsIntel core i7 processors
Intel core i7 processors
 
CPU vs GPU Comparison
CPU  vs GPU ComparisonCPU  vs GPU Comparison
CPU vs GPU Comparison
 
Multi core processors
Multi core processorsMulti core processors
Multi core processors
 
Profiling your Applications using the Linux Perf Tools
Profiling your Applications using the Linux Perf ToolsProfiling your Applications using the Linux Perf Tools
Profiling your Applications using the Linux Perf Tools
 
1.prallelism
1.prallelism1.prallelism
1.prallelism
 
Storage Requirements and Options for Running Spark on Kubernetes
Storage Requirements and Options for Running Spark on KubernetesStorage Requirements and Options for Running Spark on Kubernetes
Storage Requirements and Options for Running Spark on Kubernetes
 
Superscalar Processor
Superscalar ProcessorSuperscalar Processor
Superscalar Processor
 
Computer architecture multi processor
Computer architecture multi processorComputer architecture multi processor
Computer architecture multi processor
 
Parallelism
ParallelismParallelism
Parallelism
 
program partitioning and scheduling IN Advanced Computer Architecture
program partitioning and scheduling  IN Advanced Computer Architectureprogram partitioning and scheduling  IN Advanced Computer Architecture
program partitioning and scheduling IN Advanced Computer Architecture
 
Heterogeneous computing
Heterogeneous computingHeterogeneous computing
Heterogeneous computing
 
Computer architecture virtual memory
Computer architecture virtual memoryComputer architecture virtual memory
Computer architecture virtual memory
 
Introduction to MapReduce | MapReduce Architecture | MapReduce Fundamentals
Introduction to MapReduce | MapReduce Architecture | MapReduce FundamentalsIntroduction to MapReduce | MapReduce Architecture | MapReduce Fundamentals
Introduction to MapReduce | MapReduce Architecture | MapReduce Fundamentals
 
Multithreaded processors ppt
Multithreaded processors pptMultithreaded processors ppt
Multithreaded processors ppt
 
Multicore computers
Multicore computersMulticore computers
Multicore computers
 
Symmetric Multi Processor Multiprocessors
Symmetric Multi Processor MultiprocessorsSymmetric Multi Processor Multiprocessors
Symmetric Multi Processor Multiprocessors
 
Timeline of Processors
Timeline of ProcessorsTimeline of Processors
Timeline of Processors
 
RISC - Reduced Instruction Set Computing
RISC - Reduced Instruction Set ComputingRISC - Reduced Instruction Set Computing
RISC - Reduced Instruction Set Computing
 
Unit5
Unit5Unit5
Unit5
 

Destacado

Destacado (20)

Hyper threading technology
Hyper threading technologyHyper threading technology
Hyper threading technology
 
H T T1
H T T1H T T1
H T T1
 
Hyper thread technology
Hyper thread technologyHyper thread technology
Hyper thread technology
 
TRANSMEDIA STORYTELLING
TRANSMEDIA STORYTELLINGTRANSMEDIA STORYTELLING
TRANSMEDIA STORYTELLING
 
Ppt on 3rd generation computers
Ppt on 3rd generation computersPpt on 3rd generation computers
Ppt on 3rd generation computers
 
Intel core i7 processor
Intel core i7 processorIntel core i7 processor
Intel core i7 processor
 
abstract on skinput technology
abstract on skinput technologyabstract on skinput technology
abstract on skinput technology
 
spyware
spywarespyware
spyware
 
IT Industry in India
IT Industry in IndiaIT Industry in India
IT Industry in India
 
Real time image processing ppt
Real time image processing pptReal time image processing ppt
Real time image processing ppt
 
Introduction to Information Technology (IT)
Introduction to Information Technology (IT)Introduction to Information Technology (IT)
Introduction to Information Technology (IT)
 
Basic IT knowledge
Basic IT knowledgeBasic IT knowledge
Basic IT knowledge
 
Pipelining and vector processing
Pipelining and vector processingPipelining and vector processing
Pipelining and vector processing
 
Soft computing
Soft computingSoft computing
Soft computing
 
Information Technology
Information TechnologyInformation Technology
Information Technology
 
Basic Concepts Of Information Technology (It)
Basic Concepts Of Information Technology (It)Basic Concepts Of Information Technology (It)
Basic Concepts Of Information Technology (It)
 
IT ppt
IT pptIT ppt
IT ppt
 
Information technology ppt
Information technology ppt Information technology ppt
Information technology ppt
 
Virtual Reality
Virtual RealityVirtual Reality
Virtual Reality
 
Artificial neural network
Artificial neural networkArtificial neural network
Artificial neural network
 

Similar a Hyper threading technology

Study of various factors affecting performance of multi core processors
Study of various factors affecting performance of multi core processorsStudy of various factors affecting performance of multi core processors
Study of various factors affecting performance of multi core processorsateeq ateeq
 
1.multicore processors
1.multicore processors1.multicore processors
1.multicore processorsHebeon1
 
Multicore Computers
Multicore ComputersMulticore Computers
Multicore ComputersA B Shinde
 
Intel new processors
Intel new processorsIntel new processors
Intel new processorszaid_b
 
Implementation of RISC-Based Architecture for Low power applications
Implementation of RISC-Based Architecture for Low power applicationsImplementation of RISC-Based Architecture for Low power applications
Implementation of RISC-Based Architecture for Low power applicationsIOSR Journals
 
mech_Hyper_Threading_ppt[1].pptx Computer engineering
mech_Hyper_Threading_ppt[1].pptx Computer engineeringmech_Hyper_Threading_ppt[1].pptx Computer engineering
mech_Hyper_Threading_ppt[1].pptx Computer engineeringshahajahanemmigenur
 
Multicore processor by Ankit Raj and Akash Prajapati
Multicore processor by Ankit Raj and Akash PrajapatiMulticore processor by Ankit Raj and Akash Prajapati
Multicore processor by Ankit Raj and Akash PrajapatiAnkit Raj
 
What is simultaneous multithreading
What is simultaneous multithreadingWhat is simultaneous multithreading
What is simultaneous multithreadingFraboni Ec
 
Modern processor art
Modern processor artModern processor art
Modern processor artwaqasjadoon11
 
Network Processing on an SPE Core in Cell Broadband EngineTM
Network Processing on an SPE Core in Cell Broadband EngineTMNetwork Processing on an SPE Core in Cell Broadband EngineTM
Network Processing on an SPE Core in Cell Broadband EngineTMSlide_N
 
Modern processor art
Modern processor artModern processor art
Modern processor artwaqasjadoon11
 
Cache performance-x86-2009
Cache performance-x86-2009Cache performance-x86-2009
Cache performance-x86-2009Léia de Sousa
 
Symmetric multiprocessing and Microkernel
Symmetric multiprocessing and MicrokernelSymmetric multiprocessing and Microkernel
Symmetric multiprocessing and MicrokernelManoraj Pannerselum
 
STUDY OF VARIOUS FACTORS AFFECTING PERFORMANCE OF MULTI-CORE PROCESSORS
STUDY OF VARIOUS FACTORS AFFECTING PERFORMANCE OF MULTI-CORE PROCESSORSSTUDY OF VARIOUS FACTORS AFFECTING PERFORMANCE OF MULTI-CORE PROCESSORS
STUDY OF VARIOUS FACTORS AFFECTING PERFORMANCE OF MULTI-CORE PROCESSORSijdpsjournal
 
Area Optimized Implementation For Mips Processor
Area Optimized Implementation For Mips ProcessorArea Optimized Implementation For Mips Processor
Area Optimized Implementation For Mips ProcessorIOSR Journals
 
Intel Core i7
Intel Core i7Intel Core i7
Intel Core i7Md Ajmat
 

Similar a Hyper threading technology (20)

Study of various factors affecting performance of multi core processors
Study of various factors affecting performance of multi core processorsStudy of various factors affecting performance of multi core processors
Study of various factors affecting performance of multi core processors
 
1.multicore processors
1.multicore processors1.multicore processors
1.multicore processors
 
Multicore Computers
Multicore ComputersMulticore Computers
Multicore Computers
 
Intel new processors
Intel new processorsIntel new processors
Intel new processors
 
Implementation of RISC-Based Architecture for Low power applications
Implementation of RISC-Based Architecture for Low power applicationsImplementation of RISC-Based Architecture for Low power applications
Implementation of RISC-Based Architecture for Low power applications
 
mech_Hyper_Threading_ppt[1].pptx Computer engineering
mech_Hyper_Threading_ppt[1].pptx Computer engineeringmech_Hyper_Threading_ppt[1].pptx Computer engineering
mech_Hyper_Threading_ppt[1].pptx Computer engineering
 
Multicore processor by Ankit Raj and Akash Prajapati
Multicore processor by Ankit Raj and Akash PrajapatiMulticore processor by Ankit Raj and Akash Prajapati
Multicore processor by Ankit Raj and Akash Prajapati
 
What is simultaneous multithreading
What is simultaneous multithreadingWhat is simultaneous multithreading
What is simultaneous multithreading
 
Modern processor art
Modern processor artModern processor art
Modern processor art
 
processor struct
processor structprocessor struct
processor struct
 
Network Processing on an SPE Core in Cell Broadband EngineTM
Network Processing on an SPE Core in Cell Broadband EngineTMNetwork Processing on an SPE Core in Cell Broadband EngineTM
Network Processing on an SPE Core in Cell Broadband EngineTM
 
Modern processor art
Modern processor artModern processor art
Modern processor art
 
Danish presentation
Danish presentationDanish presentation
Danish presentation
 
Multi-Core on Chip Architecture *doc - IK
Multi-Core on Chip Architecture *doc - IKMulti-Core on Chip Architecture *doc - IK
Multi-Core on Chip Architecture *doc - IK
 
Cache performance-x86-2009
Cache performance-x86-2009Cache performance-x86-2009
Cache performance-x86-2009
 
Ef35745749
Ef35745749Ef35745749
Ef35745749
 
Symmetric multiprocessing and Microkernel
Symmetric multiprocessing and MicrokernelSymmetric multiprocessing and Microkernel
Symmetric multiprocessing and Microkernel
 
STUDY OF VARIOUS FACTORS AFFECTING PERFORMANCE OF MULTI-CORE PROCESSORS
STUDY OF VARIOUS FACTORS AFFECTING PERFORMANCE OF MULTI-CORE PROCESSORSSTUDY OF VARIOUS FACTORS AFFECTING PERFORMANCE OF MULTI-CORE PROCESSORS
STUDY OF VARIOUS FACTORS AFFECTING PERFORMANCE OF MULTI-CORE PROCESSORS
 
Area Optimized Implementation For Mips Processor
Area Optimized Implementation For Mips ProcessorArea Optimized Implementation For Mips Processor
Area Optimized Implementation For Mips Processor
 
Intel Core i7
Intel Core i7Intel Core i7
Intel Core i7
 

Último

WhatsApp 📞 8448380779 ✅Call Girls In Mamura Sector 66 ( Noida)
WhatsApp 📞 8448380779 ✅Call Girls In Mamura Sector 66 ( Noida)WhatsApp 📞 8448380779 ✅Call Girls In Mamura Sector 66 ( Noida)
WhatsApp 📞 8448380779 ✅Call Girls In Mamura Sector 66 ( Noida)Delhi Call girls
 
Busty Desi⚡Call Girls in Vasundhara Ghaziabad >༒8448380779 Escort Service
Busty Desi⚡Call Girls in Vasundhara Ghaziabad >༒8448380779 Escort ServiceBusty Desi⚡Call Girls in Vasundhara Ghaziabad >༒8448380779 Escort Service
Busty Desi⚡Call Girls in Vasundhara Ghaziabad >༒8448380779 Escort ServiceDelhi Call girls
 
Call Now ☎ 8264348440 !! Call Girls in Sarai Rohilla Escort Service Delhi N.C.R.
Call Now ☎ 8264348440 !! Call Girls in Sarai Rohilla Escort Service Delhi N.C.R.Call Now ☎ 8264348440 !! Call Girls in Sarai Rohilla Escort Service Delhi N.C.R.
Call Now ☎ 8264348440 !! Call Girls in Sarai Rohilla Escort Service Delhi N.C.R.soniya singh
 
Call Girls In Ashram Chowk Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Ashram Chowk Delhi 💯Call Us 🔝8264348440🔝Call Girls In Ashram Chowk Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Ashram Chowk Delhi 💯Call Us 🔝8264348440🔝soniya singh
 
GDG Cloud Southlake 32: Kyle Hettinger: Demystifying the Dark Web
GDG Cloud Southlake 32: Kyle Hettinger: Demystifying the Dark WebGDG Cloud Southlake 32: Kyle Hettinger: Demystifying the Dark Web
GDG Cloud Southlake 32: Kyle Hettinger: Demystifying the Dark WebJames Anderson
 
Call Girls In Sukhdev Vihar Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Sukhdev Vihar Delhi 💯Call Us 🔝8264348440🔝Call Girls In Sukhdev Vihar Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Sukhdev Vihar Delhi 💯Call Us 🔝8264348440🔝soniya singh
 
Russian Call girl in Ajman +971563133746 Ajman Call girl Service
Russian Call girl in Ajman +971563133746 Ajman Call girl ServiceRussian Call girl in Ajman +971563133746 Ajman Call girl Service
Russian Call girl in Ajman +971563133746 Ajman Call girl Servicegwenoracqe6
 
Real Men Wear Diapers T Shirts sweatshirt
Real Men Wear Diapers T Shirts sweatshirtReal Men Wear Diapers T Shirts sweatshirt
Real Men Wear Diapers T Shirts sweatshirtrahman018755
 
Call Girls In Defence Colony Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Defence Colony Delhi 💯Call Us 🔝8264348440🔝Call Girls In Defence Colony Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Defence Colony Delhi 💯Call Us 🔝8264348440🔝soniya singh
 
Russian Call Girls Pune (Adult Only) 8005736733 Escort Service 24x7 Cash Pay...
Russian Call Girls Pune  (Adult Only) 8005736733 Escort Service 24x7 Cash Pay...Russian Call Girls Pune  (Adult Only) 8005736733 Escort Service 24x7 Cash Pay...
Russian Call Girls Pune (Adult Only) 8005736733 Escort Service 24x7 Cash Pay...SUHANI PANDEY
 
Al Barsha Night Partner +0567686026 Call Girls Dubai
Al Barsha Night Partner +0567686026 Call Girls  DubaiAl Barsha Night Partner +0567686026 Call Girls  Dubai
Al Barsha Night Partner +0567686026 Call Girls DubaiEscorts Call Girls
 
All Time Service Available Call Girls Mg Road 👌 ⏭️ 6378878445
All Time Service Available Call Girls Mg Road 👌 ⏭️ 6378878445All Time Service Available Call Girls Mg Road 👌 ⏭️ 6378878445
All Time Service Available Call Girls Mg Road 👌 ⏭️ 6378878445ruhi
 
DDoS In Oceania and the Pacific, presented by Dave Phelan at NZNOG 2024
DDoS In Oceania and the Pacific, presented by Dave Phelan at NZNOG 2024DDoS In Oceania and the Pacific, presented by Dave Phelan at NZNOG 2024
DDoS In Oceania and the Pacific, presented by Dave Phelan at NZNOG 2024APNIC
 
Hire↠Young Call Girls in Tilak nagar (Delhi) ☎️ 9205541914 ☎️ Independent Esc...
Hire↠Young Call Girls in Tilak nagar (Delhi) ☎️ 9205541914 ☎️ Independent Esc...Hire↠Young Call Girls in Tilak nagar (Delhi) ☎️ 9205541914 ☎️ Independent Esc...
Hire↠Young Call Girls in Tilak nagar (Delhi) ☎️ 9205541914 ☎️ Independent Esc...Delhi Call girls
 
Hot Call Girls |Delhi |Hauz Khas ☎ 9711199171 Book Your One night Stand
Hot Call Girls |Delhi |Hauz Khas ☎ 9711199171 Book Your One night StandHot Call Girls |Delhi |Hauz Khas ☎ 9711199171 Book Your One night Stand
Hot Call Girls |Delhi |Hauz Khas ☎ 9711199171 Book Your One night Standkumarajju5765
 
'Future Evolution of the Internet' delivered by Geoff Huston at Everything Op...
'Future Evolution of the Internet' delivered by Geoff Huston at Everything Op...'Future Evolution of the Internet' delivered by Geoff Huston at Everything Op...
'Future Evolution of the Internet' delivered by Geoff Huston at Everything Op...APNIC
 

Último (20)

WhatsApp 📞 8448380779 ✅Call Girls In Mamura Sector 66 ( Noida)
WhatsApp 📞 8448380779 ✅Call Girls In Mamura Sector 66 ( Noida)WhatsApp 📞 8448380779 ✅Call Girls In Mamura Sector 66 ( Noida)
WhatsApp 📞 8448380779 ✅Call Girls In Mamura Sector 66 ( Noida)
 
Busty Desi⚡Call Girls in Vasundhara Ghaziabad >༒8448380779 Escort Service
Busty Desi⚡Call Girls in Vasundhara Ghaziabad >༒8448380779 Escort ServiceBusty Desi⚡Call Girls in Vasundhara Ghaziabad >༒8448380779 Escort Service
Busty Desi⚡Call Girls in Vasundhara Ghaziabad >༒8448380779 Escort Service
 
Call Now ☎ 8264348440 !! Call Girls in Sarai Rohilla Escort Service Delhi N.C.R.
Call Now ☎ 8264348440 !! Call Girls in Sarai Rohilla Escort Service Delhi N.C.R.Call Now ☎ 8264348440 !! Call Girls in Sarai Rohilla Escort Service Delhi N.C.R.
Call Now ☎ 8264348440 !! Call Girls in Sarai Rohilla Escort Service Delhi N.C.R.
 
Call Girls In Ashram Chowk Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Ashram Chowk Delhi 💯Call Us 🔝8264348440🔝Call Girls In Ashram Chowk Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Ashram Chowk Delhi 💯Call Us 🔝8264348440🔝
 
GDG Cloud Southlake 32: Kyle Hettinger: Demystifying the Dark Web
GDG Cloud Southlake 32: Kyle Hettinger: Demystifying the Dark WebGDG Cloud Southlake 32: Kyle Hettinger: Demystifying the Dark Web
GDG Cloud Southlake 32: Kyle Hettinger: Demystifying the Dark Web
 
Call Girls In Sukhdev Vihar Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Sukhdev Vihar Delhi 💯Call Us 🔝8264348440🔝Call Girls In Sukhdev Vihar Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Sukhdev Vihar Delhi 💯Call Us 🔝8264348440🔝
 
Russian Call girl in Ajman +971563133746 Ajman Call girl Service
Russian Call girl in Ajman +971563133746 Ajman Call girl ServiceRussian Call girl in Ajman +971563133746 Ajman Call girl Service
Russian Call girl in Ajman +971563133746 Ajman Call girl Service
 
Real Men Wear Diapers T Shirts sweatshirt
Real Men Wear Diapers T Shirts sweatshirtReal Men Wear Diapers T Shirts sweatshirt
Real Men Wear Diapers T Shirts sweatshirt
 
Call Girls In Defence Colony Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Defence Colony Delhi 💯Call Us 🔝8264348440🔝Call Girls In Defence Colony Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Defence Colony Delhi 💯Call Us 🔝8264348440🔝
 
Russian Call Girls Pune (Adult Only) 8005736733 Escort Service 24x7 Cash Pay...
Russian Call Girls Pune  (Adult Only) 8005736733 Escort Service 24x7 Cash Pay...Russian Call Girls Pune  (Adult Only) 8005736733 Escort Service 24x7 Cash Pay...
Russian Call Girls Pune (Adult Only) 8005736733 Escort Service 24x7 Cash Pay...
 
Al Barsha Night Partner +0567686026 Call Girls Dubai
Al Barsha Night Partner +0567686026 Call Girls  DubaiAl Barsha Night Partner +0567686026 Call Girls  Dubai
Al Barsha Night Partner +0567686026 Call Girls Dubai
 
All Time Service Available Call Girls Mg Road 👌 ⏭️ 6378878445
All Time Service Available Call Girls Mg Road 👌 ⏭️ 6378878445All Time Service Available Call Girls Mg Road 👌 ⏭️ 6378878445
All Time Service Available Call Girls Mg Road 👌 ⏭️ 6378878445
 
DDoS In Oceania and the Pacific, presented by Dave Phelan at NZNOG 2024
DDoS In Oceania and the Pacific, presented by Dave Phelan at NZNOG 2024DDoS In Oceania and the Pacific, presented by Dave Phelan at NZNOG 2024
DDoS In Oceania and the Pacific, presented by Dave Phelan at NZNOG 2024
 
VVVIP Call Girls In Connaught Place ➡️ Delhi ➡️ 9999965857 🚀 No Advance 24HRS...
VVVIP Call Girls In Connaught Place ➡️ Delhi ➡️ 9999965857 🚀 No Advance 24HRS...VVVIP Call Girls In Connaught Place ➡️ Delhi ➡️ 9999965857 🚀 No Advance 24HRS...
VVVIP Call Girls In Connaught Place ➡️ Delhi ➡️ 9999965857 🚀 No Advance 24HRS...
 
Low Sexy Call Girls In Mohali 9053900678 🥵Have Save And Good Place 🥵
Low Sexy Call Girls In Mohali 9053900678 🥵Have Save And Good Place 🥵Low Sexy Call Girls In Mohali 9053900678 🥵Have Save And Good Place 🥵
Low Sexy Call Girls In Mohali 9053900678 🥵Have Save And Good Place 🥵
 
valsad Escorts Service ☎️ 6378878445 ( Sakshi Sinha ) High Profile Call Girls...
valsad Escorts Service ☎️ 6378878445 ( Sakshi Sinha ) High Profile Call Girls...valsad Escorts Service ☎️ 6378878445 ( Sakshi Sinha ) High Profile Call Girls...
valsad Escorts Service ☎️ 6378878445 ( Sakshi Sinha ) High Profile Call Girls...
 
Hire↠Young Call Girls in Tilak nagar (Delhi) ☎️ 9205541914 ☎️ Independent Esc...
Hire↠Young Call Girls in Tilak nagar (Delhi) ☎️ 9205541914 ☎️ Independent Esc...Hire↠Young Call Girls in Tilak nagar (Delhi) ☎️ 9205541914 ☎️ Independent Esc...
Hire↠Young Call Girls in Tilak nagar (Delhi) ☎️ 9205541914 ☎️ Independent Esc...
 
Hot Call Girls |Delhi |Hauz Khas ☎ 9711199171 Book Your One night Stand
Hot Call Girls |Delhi |Hauz Khas ☎ 9711199171 Book Your One night StandHot Call Girls |Delhi |Hauz Khas ☎ 9711199171 Book Your One night Stand
Hot Call Girls |Delhi |Hauz Khas ☎ 9711199171 Book Your One night Stand
 
'Future Evolution of the Internet' delivered by Geoff Huston at Everything Op...
'Future Evolution of the Internet' delivered by Geoff Huston at Everything Op...'Future Evolution of the Internet' delivered by Geoff Huston at Everything Op...
'Future Evolution of the Internet' delivered by Geoff Huston at Everything Op...
 
Russian Call Girls in %(+971524965298 )# Call Girls in Dubai
Russian Call Girls in %(+971524965298  )#  Call Girls in DubaiRussian Call Girls in %(+971524965298  )#  Call Girls in Dubai
Russian Call Girls in %(+971524965298 )# Call Girls in Dubai
 

Hyper threading technology

  • 1. INTRODUCTION Hyper-threading or Hyper-Threading Technology(HTT), is actually Intel’s trademark for their multi-threading, but has become a common name for all processors of this type. It is essentially a cut down version of dual version of dual core. Execution units on a hyper-threaded CPU share certain elements, such as cache and pipelines. The operating system sees a single hyper-threaded processor as two separate logical CPUs. Threads can be scheduled to execute on any of these logical processors. The main strength of hyper-threading is that it allows for flexible scheduling of all available execution slots, which increases efficiency by keeping the execution core as busy as possible. All that is required to take advantage of this technology is symmetric multiprocessing support in the operating system .Hyper- threaded processors still share the same cache; it is possible for applications performance to actually degrade if both threads are contending for the CPU cache at the same time. Microprocessor designers mainly give emphasis to two main factors-SPEED and PARALLELISM in their quest towards efficiency. Notion of thread and process are used by computer programmers and hardware designers in varying contexts. Various operating systems and architecture give different definitions to them. A process is a program in execution which has a memory associated with it and a thread is an actual running component of a process, a process can be a multi- threaded. 1
  • 2. Parallelism- initial microprocessors in the 80x86 series supported one instruction at a time. Also, the pre-dominant operating system during those days – MS DOS – supported only one process at a time. Pentium and Pentium –Pro series had increased number of execution cores. Their super-scalar architecture and pipelining resulted in a certain degree of parallelism. But no processor had the capability to execute two instructions from different threads simultaneously. Intel Hyper-Threading technology allows multithreaded operating systems to view a single physical processor as if it were two logical processors. A processor that in cooperates this technology shares CPU resources among multiple threads, thereby enabling faster enterprise-server response times and providing additional CPU processing power to handle larger workloads. As a result server performance can improve. The amazing growth of the internet and telecommunications is powered by ever-faster systems demanding increasingly higher levels of processor performance. To keep up with this demand we cannot rely entirely on traditional approaches to processor design. Microarchitecture techniques used to achieve past processor performance improvement –super-pipelining, branch prediction, super scalar execution, out-of order execution, caches-have made microprocessors increasingly more complex, have more transistor counts and power are increasing at rates greater than processor performance. Processor architects are therefore looking foe ways to improve performance at a greater rate than transistor counts and power dissipation. Hyper-Threading Technology is form of simultaneously multithreading technology(SMT) introduced by intel. Architecturally, a processor with Hyper- Threading Technology consist of two logical processors, each of which has its own processor architectural state. After power-up and initialization, each logical 2
  • 3. processor can be individually halted, interrupted or directed to execute a specified thread, independently from the other logical processor on the chip. Unlike a traditional dual processor(DP) configuration that uses two separated physical processors, the logical processors in a processor with Hyper-Threading Technology share the execution resources of the processor core. These resources include the execution engine, the caches, the system-bus interface and the firmware Hyper-Threading Technology represents a new approach to improving the instruction throughput of processors that are targeted for servers, high performance workstations and desktops . It also provides a view into the future of microprocessor design where the performance of a processor when executing a specific type of application or the space and power requirements of a physical processor within a server may be as important as its raw processing speed. 3
  • 4. Hyper-Threading Technology is feasible for platforms ranging from mobile processors to servers. Its introduction into market segments other than servers is gated only by the availability and prevalence of threaded applications and workloads in these markets. Although existing operating systems and application codes will run correctly on a processor with Hyper-Threading Technology, some relatively simple code practices are recommended to get the optimum benefit from Hyper-Threading Technology. Hyper-Threading Technology does not deliver multiprocessor scaling, Typically applications make use of about 35% of the internal processor execution resources. The ideas behind Hyper-Threading Technology is to enable better processor usage and to achieve about 50 percent utilization of resources. 4
  • 5. ARCHITECTURE OF PROCESSOR WITH HYPER-THREADING TECHNOLOGY A Processor with Hyper-Threading Technology may provide a performance gain of 30 percent when executing multi-threaded operating system and application code over that of a comparable Intel architecture processor without Hyper-Threading Technology. When placed in a multiprocessor based system, the increase in computing power generally scales linearly as the number of physical processors in a system is increased; although as in any multiprocessor system, the scalability of performance is highly dependent on the nature of the application. Two logical processors do not provide the same level of performance as a dual processor-based system. Each logical processor has:-  Its own architecture state.  Executes its own code stream concurrently.  Can be interred and halted independently. Two logical processors share the same • Execution engine and catches, and Firmware and system bus interfaces. 5
  • 6. Why Hyper threading??? Even with the optimised pipelining architecture and increased number of execution units available with modern microprocessors like Pentium and athlon,only one-third of the resources’ were being used at a time. This is because of the inability of the processor to execute more than one thread at a time. Even after applying the intricacies of out of order Execution and advanced branch prediction logic, instruction from a single thread are far below the maximum utilisation potential of a processor resulting in wastage of resources. Single Threaded CPU 6
  • 7. In this figure-The processor has seven execution paths in the execution core. Red colour indicates executing threads and white spaces are blank slots. Processor uses just one-third of its available potential. Superthreading An alternative mechanism called Super threading, implemented in some microprocessors provided some capability to execute multiple threads at a time. But it also had its limitations. All instructions in one pipeline stage of a superthreaded processor have to be from the same thread. Superthreading involved limited amount of context switching too. This technology also didn’t eliminate the wastage of resources completely. Super threaded CPU The Red and Yellow colours indicate executing threads. Each of the six pipeline stages has one thread. 7
  • 8. Multiprocessor systems Using more than one processor in a system directly provided thread level parallelism. But this was a costly solution and required special on board support for multiple processors. These systems also required some type of synchronising mechanism so that both processors function in unison. The overhead for this synchronization and the frequent collision for the need of resources slowed down such implementation considerably. Due to these reasons, multiprocessor systems remain confined to special purpose implementations and dedicated systems. Hyperthreading, introduced by Intel provided the solution for this problem. 8
  • 9. What is Hyper Threading ??? Hyperthreding is super threading without the restriction that each pipeline stage or clock cycle must contain instructions from the same thread. Vacant execution slots in each pipeline stage is filled by instructions from another thread ,enabling thread level parallelism. This can be done as long as there is no collision of resources required by two threads. Inside the processor Since more than one thread is being run at the same time, certain architectural features are replicated, some are shared and some are partitioned. The replicated resources are instructions pointer ,return stack pointer etc...Caches and execution units are shared. Partitioned resources include scheduling queues, load-store and reorder buffers. Another subtle feature is that when only one thread is executing, all shared and partitioned resources are combined to give maximum throughput. These additional resources in a hyper threaded Pentium 4 or Xenon processors increased the processor die area by just five percent. Hyperthreading’s strength is that it allows the scheduling logic maximum flexibility to fill the execution slots, thereby making more efficient use of available execution resources by keeping the execution core busier. 9
  • 10. From Operating System’s View When viewed from OS or user level, the hyper threaded processor is split up into two or more logical processors and threads can be scheduled to execute on any of the two logical processors and threads can be scheduled to execute on any of the two logical processors as they are free. Operating system schedules the threads approximately into the available logical processors. Scheduling is done in such a way that two running threads won’t request for a resources simultaneously as far as possible. It is a must that operating system support hyper threading. Presently the number of logical processors supported by most operating systems and underlying hardware is two. Latest operating systems like Windows XP and Red Hat Linux 9 support hyper threading. 10
  • 11. Multithreading and Message-passing Applications In general, processors enabled with Hyper-Threading technology can improve the performance of applications with high degree of parallelism. Previous studies have shown that the Hyper-Threading technology improves multi-threaded applications’ performance by the range of 10 to 30 percentages depending on the characteristics of the applications. These studies also suggest that the potential gain is only obtained if the application is multi-threaded by any means of parallelization techniques. A multithreading program is capable of creating multiple processes, or threads, at a time without having to have multiple copies of the program running in the computer. With the addition of Hyper-Threading support in Linux kernels 2.4.9-31 and above, Linux cluster practitioners have started to assess its performance impact on their applications. In our area of interest, high performance computing (HPC) clusters, applications are commonly implemented by using standard message-passing Perfomance Hyperthreading technology improves overall performance in two ways, First in speeds up applications that are already multithreaded. In this case, each logical processor will run software threads from the application. Second, It speeds up a workload consisiting of multiple applications by multitasking.In this case, each logical processor will likely run threads from different applications. With a resource sharing policy matched to the traffic and performance requirements of each recource, hyperthreading technology can increase resource utilisation and improve performance. Intel is committed to this new and challenging microarchitecture direction. 11
  • 12. HYPER-THREADING TECHNOLOGY ARCHITECTURE Hyper-threading technology makes a single physical processor appear as multiple logical processors. 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 the user programs can schedule processes or threads to logical processors as they would on conventional physical processors as they would on conventional physical processors in a multiprocessor system .From a micro architecture perspective, this means that instructions from logical processors will persist and execute simultaneously on shared execution resources. Processor with Hyper technology 12
  • 13. Multiprocessor system with two physical processors that are not Hyper- Threading capable, but 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. 13
  • 14. The hyperthreading technology implementation on the Netburst microarchitecture has two logical processors on each physical processor. Each logical processor maintains a complete sat of the architectural state. The architectural state consists of registers, including general purpose registers, and those for control, the advanced programmable interrupt controller (APIC), and some for machine state. From a software perspective ,duplication of the architectural state makes each physical processor has its own interrupt controller, or APIC, which handles just the interrupts sent to its specific logical processor. Hyperthreading Technology is fully compatible with existing software and hardware. 14
  • 15. DIFFERENCE BETWEEN HYPERTHREADING AND MULTITHREADING Hyper-Threading Technology uses the process- and thread-level parallelism found in contemporary operating systems and high-performance applications by implementing two logical processors on a single chip. This configuration allows a thread to be executed on each logical processor. Instructions from both threads are simultaneously dispatched for execution by the processor core. The processor core executes these two threads concurrently, using out-of-order instruction scheduling to keep as many of its execution units as possible busy during each clock cycle. 15
  • 16. IMPLEMENTATION Of HYPER THREADING TECHNOLOGY The first implementation of Hyper-Threading Technology is being made available on intel Xenon processor family for dual and multiprocessor servers, with two logical processors per physical processor. By more efficiently using exiting processor resources resources, the intel Xenon processor family can significantly improve performance at virtually the same system cost. This implementation of Hyper-Threading Technology added lees 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 processor 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. 16
  • 17. SOFTWARE ON A HYPERTHREADED PROCESSOR To get full advantage out of hyper threaded processor, an application must not only be multithreaded, but the individual threads must be coded in such a way that they should not raise the request for one resource simultaneously. For example, if two threads of an application request disk access at the same time, hyperthreading won’t be of much help Of course no sensible programmer will write a code having such conflicts. But to write optimised code on a hyper threaded processor, programmer must have a clear knowledge about the shared resources and possible conflicts. Logical view of Hyper-Threading. 17
  • 18. Threads from different processes It is not possible to write optimised hyperthreaded code considering the other applications that will be running on the system. Programmer of one application will be oblivious to the internals and resources requirements of another application. And in normal case,it will be difficult to anticipate the applications running in tandem. For example, coder of a text editor will not be aware of the antivirus tool or messenger system running on a computer. So in the of threads from different processors, it is possible only to hope for the best. But some improvements are likely in this scenario. This is because the processor is unaware of the process-thread relation. It is does not take care or does not know, which thread is from which process. It tries to execute the threads presented to it as fast as possible, inducing into the hyper threading mechanism. Programmer’s Challenge Full benefits of hyper threading will be available only when some general purpose code library supporting hyper threading becomes available. Also there will be some security issues with this new methodology. This hyper threaded programming style is yet to be popular. And it is written in the assembly level. If some high level language or paradigm supports this new style, coding will be easier and benefits will come along. 18
  • 19. Operating system and applications. A system with processors that use Hyper-Threading Technology appears to the Operating System and applicaton software as having twice the number of processors than it physically has operating systems manage logical processors as they do physical processors, scheduling runnable tasks or threads to logical processors. However, for best performance,the operating system should implement two optimizations. The first is to use the HALT instruction if one logical processor is active and the other is not. HALT will allow the processor to transition to either the STO- or ST1-mode. An operating system that does not use this optimization would execute on the idle logical processor a sequence of instruction that repeatedly checks for work to do. This so-called “idle loop” can consume significant execution resources that could otherwise be used to make faster progress on the other active logical processor. The second optimization is in scheduling software threads to logical processors. In general, for best performance, the operating system should schedule threads to logical processors on different physical processors before scheduling multiple threads to the same physical processor. This optimization allows software threads to use different physical execution resources when possible. 19
  • 20. Exploring the impact of Hyper-Threading on Web Workloads Intel Hyper-Threading technology allows multithreaded operating systems to view a single physical processor as if it were two logical processors. A processor that incorporates this technology shares CPU resources among multi threads,thereby enabling faster enterprise-server response times and providing additional CPU processing power to handle larger workloads. As a result,server performance can improve. If using Hyper-Threading technology ,a dell PowerEdge 6600 server with four CPUs would expose eight logical CPUs to operating system. Hyperthreading must be enabled in the BIOS for the operating system to recognize the logical processors. Microsoft Windows 2000 Server and Windows .Net server operating systems support Hyper-Threading with no modifications. Recent versions of the Red Hat Linux Operating System,including versions 7.3 and Advanced Server 2.1,also auto- detect and enable Hyper-Threading Support. For Red Hat Linux 7.1 and 7.2,administrators should first upgrade the kernel to the latest errata package. They can then enable Hyper- Threading by passing the acpismp=force flag through the boot loader to determine whether Hyper-Threading is enable under Linux,check/proc/cpuinfo; it should show twice the number of physical CPUs in the server. 20
  • 21. Conclusion Intel’s Hyper –Threading Technology brings the concept of simultaneous multi-threading to the Intel Architecture. This is a significant new technology direction for Intel’s Future processors. It will become increasingly important going forward as it adds a new techniques for obtaining additional performance for lower transistor and power costs. This promising technology has the potential to influence the computing world in a big way. But for that, software support is essential. Also, owing to the pitfalls of this technology, it is quite possible that another innovation providing enhanced parallelism come along and displace this altogether. The potential for Hyper-Threading Technology is tremendous; our current implementation has only just begun to tap into this potential. Hyper-Threading Technology is expected to be viable from mobile processors to servers ;its introduction into market segments other than servers is only gated by the availability and prevalence of threaded applications and workloads in those market. 21
  • 22. References [1] Tau Leng, Ph.D. , “Intel Hyperthreading technology to Achieve Computational Efficiency ”, November 2003. [2] Onur Celebioglu , “Intel Hyperthreading technology to Achieve Computational Efficiency” , November 2003. [3] Rizwan Ali, “Intel Hyperthreading technology to Achieve Computational Efficiency ”, November 2003. [4] Jenwei Hsieh, Ph.D. , “Intel Hyperthreading technology to Achieve Computational Efficiency” , November 2003. [5] Tau Leng, Rizwan Ali, Jenwei Hsieh, Victor Mashayekhi, Reza Rooholamini , “ An Empirical Study of Hyper-Threading in High Performance Computing Clusters ”, Dell Computer Corp, May 2012. [6] Decipher Information Systems ,”Hyper-threaded and Dual-Core CPU Technology ”,June 2006 . [7] Intel, “Intel® Hyper-Threading Technology ”,May 2012. [8] Intel, “Intel Hyper-Threading Technology -Technical User’s Guide ”, Januvary 2003. [9] Deborah T. Marr, Desktop Products Group, Intel Corp, “Hyper-Threading Technology Architecture and Microarchitecture ” Januvary 2002. [10] Lin Chao, “Intel Technology Journal ”,February 2002 . [11] Introduction to Hyperthreading-Jon “Hannibal” stokes. [12] Intel Corp., Ultrabook,SmartPhone,Laptop,Desktop,Server and Embedded, Available URL: “http://developer.intel.com” 22