Hyper-Threading Neil Chakrabarty William May. 2 To Be Tackled Review of Threading Algorithms Hyper-Threading Concepts Hyper-Threading Architecture Advantages/Disadvantages.

Slides:



Advertisements
Similar presentations
Scheduling Algorithems
Advertisements

Scheduling Criteria CPU utilization – keep the CPU as busy as possible (from 0% to 100%) Throughput – # of processes that complete their execution per.
Multithreading processors Adapted from Bhuyan, Patterson, Eggers, probably others.
Silberschatz, Galvin and Gagne  Operating System Concepts Chapter 1: Introduction What is an Operating System? Mainframe Systems Desktop Systems.
Silberschatz, Galvin and Gagne  Operating System Concepts Chapter 1: Introduction What is an Operating System? Mainframe Systems Desktop Systems.
Hyper-Threading, Chip multiprocessors and both Zoran Jovanovic.
Instructor: Erol Sahin Hypertreading, Multi-core architectures, Amdahl’s Law and Review CENG331: Introduction to Computer Systems 14 th Lecture Acknowledgement:
Silberschatz, Galvin and Gagne  Operating System Concepts Chapter 1: Introduction What is an Operating System? Mainframe Systems Desktop Systems.
Silberschatz, Galvin and Gagne  2002 Modified for CSCI 399, Royden, Operating System Concepts Operating Systems Lecture 1 Introduction Read:
Multi-core architectures. Single-core computer Single-core CPU chip.
Multi-Core Architectures
Chapter 2 Parallel Architecture. Moore’s Law The number of transistors on a chip doubles every years. – Has been valid for over 40 years – Can’t.
المحاضرة الاولى Operating Systems. The general objectives of this decision explain the concepts and the importance of operating systems and development.
1.1 Operating System Concepts Introduction What is an Operating System? Mainframe Systems Desktop Systems Multiprocessor Systems Distributed Systems Clustered.
Hyper-Threading Technology Architecture and Micro-Architecture.
Tahir CELEBI, Istanbul, 2005 Hyper-Threading Technology Architecture and Micro-Architecture Prepared by Tahir Celebi Istanbul, 2005.
– Mehmet SEVİK – Yasin İNAĞ
Silberschatz, Galvin and Gagne  2002 Modified for CSCI 399, Royden, Operating System Concepts Operating Systems Lecture 13 Threads Read Ch 5.1.
Outline  Over view  Design  Performance  Advantages and disadvantages  Examples  Conclusion  Bibliography.
Hyper Threading Technology. Introduction Hyper-threading is a technology developed by Intel Corporation for it’s Xeon processors with a 533 MHz system.
Buddy Scheduling in Distributed Scientific Applications on SMT Processors Nikola Vouk December 20, 2004 In Fulfillment of Requirement for Master’s of Science.
Hyper-Threading Technology Architecture and Microarchitecture
Presentation 31 – Multicore, Multiprocessing, Multithreading, and Multitasking. When discussing modern PCs, the term “Multi” is thrown around a lot as.
Operating System 4 THREADS, SMP AND MICROKERNELS.
Copyright © Curt Hill Parallelism in Processors Several Approaches.
HyperThreading ● Improves processor performance under certain workloads by providing useful work for execution units that would otherwise be idle ● Duplicates.
1 OS Review Processes and Threads Chi Zhang
Intel Multimedia Extensions and Hyper-Threading Michele Co CS451.
Silberschatz, Galvin and Gagne ©2013 Operating System Concepts – 9 th Edition Chapter 4: Threads.
Advanced Computer Architecture pg 1 Embedded Computer Architecture 5SAI0 Chip Multi-Processors (ch 8) Henk Corporaal
Computer Structure 2015 – Intel ® Core TM μArch 1 Computer Structure Multi-Threading Lihu Rappoport and Adi Yoaz.
Silberschatz, Galvin and Gagne ©2009Operating System Concepts – 8 th Edition Chapter 4: Threads.
Processor Performance & Parallelism Yashwant Malaiya Colorado State University With some PH stuff.
Processor Level Parallelism 2. How We Got Here Developments in PC CPUs.
Chapter 1: Introduction What is an Operating System? Mainframe Systems Desktop Systems Multiprocessor Systems Distributed Systems Clustered System Real.
Chapter 1: Introduction What is an Operating System? Mainframe Systems Desktop Systems Multiprocessor Systems Distributed Systems Clustered System Real.
Applied Operating System Concepts
Chapter 1: Introduction
Chapter 1: Introduction
Chapter 1: Introduction
Simultaneous Multithreading
Chapter 1: Introduction
Chapter 1: Introduction
Embedded Computer Architecture 5SAI0 Chip Multi-Processors (ch 8)
/ Computer Architecture and Design
Presented by Sarath Kumar T S
Chapter 1: Introduction
Threads & multithreading
Hyperthreading Technology
Chapter 4: Threads.
CPE 631: Multithreading: Thread-Level Parallelism Within a Processor
Operating System Concepts
Chapter 1: Introduction
Introduction to Operating Systems
Operating System 4 THREADS, SMP AND MICROKERNELS
Fast Communication and User Level Parallelism
Introduction to Operating Systems
Fine-grained vs Coarse-grained multithreading
/ Computer Architecture and Design
Embedded Computer Architecture 5SAI0 Chip Multi-Processors (ch 8)
Chapter 1: Introduction
Chapter 1: Introduction
Operating System Introduction.
Chapter 1: Introduction
MULTITHREADING PROGRAMMING
Chapter 1: Introduction
Operating System Overview
Chapter 1: Introduction
Operating System Concepts
Chapter 1: Introduction
Presentation transcript:

Hyper-Threading Neil Chakrabarty William May

2 To Be Tackled Review of Threading Algorithms Hyper-Threading Concepts Hyper-Threading Architecture Advantages/Disadvantages Applications

3 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

4 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.

5 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.

6

7 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

8 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.

9 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.

10 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

11 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

12 Video Watermarking

13 Performance Results

14 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.

15 Video Processing (cont.)

16 To Be Tackled Review of Threads Hyper-Threading Concepts Hyper-Threading Architecture Advantages/Disadvantages Applications

17 References Intel Technology Journal. Volume 6 Issue 1. February 14, 2002 Intel Hyper-Threading Technology Review  HyperThreading Threads Its Way into Application  Introduction to Multithreading, Superthreading and Hyperthreading  ding-1.html ding-1.html