Home Knowledge Base Simultaneous Multithreading (SMT / Hyper-Threading)

Simultaneous Multithreading (SMT / Hyper-Threading) is the CPU hardware technique of executing instructions from multiple software threads on a single physical core in the same clock cycle — sharing the core's execution units, caches, and functional resources between 2-8 hardware threads to improve utilization of otherwise-idle resources, typically increasing throughput by 20-30% with near-zero additional silicon area.

How SMT Works

SMT Implementations

ProcessorSMT WidthThreads/CoreName
Intel Core (most)2-way2Hyper-Threading (HT)
Intel Xeon (some)2-way2Hyper-Threading
AMD Zen 1-52-way2SMT
IBM POWER94/8-way4 or 8SMT4/SMT8
Oracle SPARC M88-way8
ARM (most)None1No SMT in most ARM designs

Performance Impact

Workload TypeSMT BenefitWhy
Memory-bound server+25-40%Thread A stalls on cache miss, Thread B fills pipeline
Compute-bound (math)+5-15%Both threads compete for the same ALUs
Latency-sensitiveVariableMay hurt latency of individual threads
HPC (vectorized)0 to -5%Threads compete for vector units — sometimes slower

SMT Concerns

When to Disable SMT

SMT is one of the most cost-effective ways to improve CPU throughput — by adding only 5-10% more silicon area for duplicated thread state, it extracts 20-30% more useful work from the expensive execution resources that would otherwise sit idle during pipeline stalls.

smt hyperthreadingsimultaneous multithreadinghardware threadinglogical corethread level parallelism

Explore 500+ Semiconductor & AI Topics

From EUV lithography to CUDA optimization — search the full knowledge base or chat with our AI assistant.