

This allows a hyper-threading processor to appear as the usual "physical" processor and an extra " logical" processor to the host operating system (HTT-unaware operating systems see two "physical" processors), allowing the operating system to schedule two threads or processes simultaneously and appropriately. Hyper-threading works by duplicating certain sections of the processor-those that store the architectural state-but not duplicating the main execution resources.

The degree of benefit seen when using a hyper-threaded or multi core processor depends on the needs of the software, and how well it and the operating system are written to manage the processor efficiently. A processor stalls when it is waiting for data it has sent for so it can finish processing the present thread. These resources include the execution engine, caches, and system bus interface the sharing of resources allows two logical processors to work with each other more efficiently, and allows a logical processor to borrow resources from a stalled logical core (assuming both logical cores are associated with the same physical core). Unlike a traditional dual-processor configuration that uses two separate physical processors, the logical processors in a hyper-threaded core share the execution resources. Each logical processor can be individually halted, interrupted or directed to execute a specified thread, independently from the other logical processor sharing the same physical core. Architecturally, a processor with Hyper-Threading Technology consists of two logical processors per core, each of which has its own processor architectural state. Hyper-Threading Technology is a form of simultaneous multithreading technology introduced by Intel, while the concept behind the technology has been patented by Sun Microsystems. Ī 3 GHz model of the Intel Pentium 4 processor that incorporates Hyper-Threading Technology In addition to requiring simultaneous multithreading support in the operating system, hyper-threading can be properly utilized only with an operating system specifically optimized for it. In addition, two or more processes can use the same resources: If resources for one process are not available, then another process can continue if its resources are available.


With HTT, one physical core appears as two processors to the operating system, allowing concurrent scheduling of two processes per core. The main function of hyper-threading is to increase the number of independent instructions in the pipeline it takes advantage of superscalar architecture, in which multiple instructions operate on separate data in parallel. įor each processor core that is physically present, the operating system addresses two virtual (logical) cores and shares the workload between them when possible.
See your logical prossesers for mac series#
Since then, Intel has included this technology in Itanium, Atom, and Core 'i' Series CPUs, among others. It was introduced on Xeon server processors in February 2002 and on Pentium 4 desktop processors in November 2002. Hyper-threading (officially called Hyper-Threading Technology or HT Technology and abbreviated as HTT or HT) is Intel's proprietary simultaneous multithreading (SMT) implementation used to improve parallelization of computations (doing multiple tasks at once) performed on x86 microprocessors. In this high-level depiction of HTT, instructions are fetched from RAM (differently colored boxes represent the instructions of four different processes), decoded and reordered by the front end (white boxes represent pipeline bubbles), and passed to the execution core capable of executing instructions from two different programs during the same clock cycle.
