A good proportion of Intel CPUs offer a feature called hyper-threading which is an Intel brand name for Simultaneous Multi-Threading, or SMT. Hyperthreading is a process that can allow for increased CPU performance in heavily multi-threaded tasks.
Tip: Threads are sequences of instructions for a process. If a process is broken down into multiple smaller parts that can be run simultaneously, it is called multithreaded.
What is hyperthreading and how does it work?
Hyperthreading is marketed as a tool that allows a single CPU core to run two processes at once. In most operating systems, hyperthreaded cores are shown as a second logical core, alongside the main physical core and as having the sam
This isn’t a particularly realistic representation of how hyperthreading actually works. In reality, hyperthreading is a smart scheduling process that allows a CPU core to queue two threads. If the first thread stalls, for example, if it’s waiting for data, then the second thread can be smoothly swapped in. This design allows the second thread to take advantage of any idle CPU time that would otherwise be wasted, to perform useful calculations.
What is the performance impact?
Depending on the type of workload, such as for heavily multithreaded processes, such as video editing, hyperthreading can provide up to a 30% performance boost. In other tasks, however, such as single-threaded applications, hyperthreading can result in no performance gains at all.
Hyperthreading does mean that the CPU uses more power and generates more heat than a non-hyperthreaded CPU would. This is caused by the higher utilisation levels of the CPU.
Hyperthreaded cores vs physical cores
In reality, hyperthreading is a nice extra, providing a bit of extra free performance for multithreaded tasks. Physical CPU cores, however, are able to provide a much greater performance boost for multithreaded workloads. If you have a choice between a dual-core CPU with hyperthreading, and a quad-core CPU without hyperthreading, the quad-core will outperform the hyperthreaded dual-core. The physical core count is the most important part of multithreaded performance, supporting hyperthreading is a bit of a boost.