Illustrated Hyper-Threading Technology (Hyper-threading Technology)

Source: Internet
Author: User

In the operating system, there is the concept of multi-threading (multi-threading), which is well understood, because a thread is the smallest scheduling unit of a process, and a process contains at least one thread. This article describes the CPU-specific hyper-Threading technology. In short, multithreading is softer, hyper-threading is hard, and both are inherently virtualized .

1. What is Hyper-threading (hyper-threading)?

Hyper-Threading (hyper-threading) is a simultaneous multithreading (simultaneous multi-theading), a technique that allows a single CPU to perform multiple control flows. Its principle is simple, is to use a CPU as two, a hyper-threading function of the physical CPU into two logical CPUs, and the logical CPU to the operating system, and the physical CPU is no different. Therefore, the operating system assigns the worker thread to the two (logical) CPUs to execute, allowing multiple threads (multiple or single) of the application to be executed simultaneously on the same CPU. Note: The two logical CPUs share all the execution resources of a single physical CPU. Therefore, we can assume that Hyper-Threading technology is the virtualization of CPUs .

2. The origin of Hyper-Threading Technology ( Source: https://en.wikipedia.org/wiki/Hyper-threading)

Intel Sun Microsystems.

Hyper-Threading technology is a form of implementation of simultaneous multithreading technology, proposed by Intel Corporation, and the concept behind the technology is Sun's patent. Although Sun has fallen, it is always a great company.

Throughout the history of computers, there are two requirements that drive the progress of computer technology.

    • First, humans want to make computers do more;
    • Second, humans want to make computers run faster.

In this sense, the thugs who put the engineers in the machine as capitalists or capitalists are constantly pursuing these two demands when they extract the surplus value of the programmer. The invention of Hyper-Threading technology is based on the consideration that the last drop of oil that does not squeeze dry processors will never stop.

3. Single thread v.s. Hyper-Threading ( image source: http://www.gethow.org/what-is-hyper-threading-technology-in-processors)

Regular CPUs require about 20,000 clock cycles to switch between different threads, whereas hyper-threaded CPUs can determine which thread to execute on a single clock cycle. This allows the CPU to make better use of its processing resources. For example, suppose a thread must wait until some data is loaded into the cache, then the CPU can continue to execute another thread.

O Intel Company's Hyper-Threading technology

Image source: Http://www.slideshare.net/am_sharifian/intel-hyper-threading-technology

HT allows single processor to fetch and execute separate code streams simultaneously. Hyper-Threading allows a single processor to crawl and execute two separate code streams in parallel at the same time.

4. How Hyper-Threading works

Image source: http://argentows.blogspot.com/2011/05/hyperthreading.html

Wikipedia explains the following:

In this high-level depiction of HTT, instructions is  fetched  fromram (differently colored boxes represent the INS Tructions   of fourdifferent programs), decoded and reordered by the front end   (whiteboxes represent pipeline B Ubbles), and passed to the execution corecapable of executing instructions from the different programs duringthe same  Clock cycle.

Image source: Https://en.wikipedia.org/wiki/Hyper-threading#/media/File:Hyper-threaded_CPU.png

5. Benefits of Hyper-Threading Technology

Source: What is hyper-threading technology?

6. Prerequisites for implementing Hyper-Threading Technology

    • CPU Support Required
    • Motherboard chipset support Required
    • Requires BIOS support
    • Requires operating system support
    • Requires application software support

This shows that, although hyper-threading technology is cool, but need all aspects of support, otherwise it will not play. If you are a capitalist (or a capitalist's thug) who wants to extract the greatest possible value from the programmer, think about whether or not to give programmers the hardware and software environment to run Hyper-threading, otherwise it is not a good idea to let them work overtime, because people are not machines, people only need to rest good to be creative, Most of the tired people are in the blind toss, often inefficient.

Summary: Hyper-Threading (hyper-threading) is essentially CPU-supported simultaneous multithreading (simultaneous multi-threading) technology, simple to understand is the CPU virtualization, A physical CPU can be used by the operating system as multiple CPUs.

Illustrated Hyper-Threading Technology (Hyper-threading Technology)

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.