SMT

From RCS Wiki
Revision as of 12:04, 19 December 2017 by SiteAdmin (talk | contribs) (Created page with "Simultaneous Multi-Threading (SMT) allows for maximally efficient use of execution blocks inside a given core for workloads with more than one thread or process. It works by...")
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

Simultaneous Multi-Threading (SMT) allows for maximally efficient use of execution blocks inside a given core for workloads with more than one thread or process. It works by dynamically scheduling each thread to execute on internal resources when the other threads running on the same core would otherwise leave those resources idle, increasing overall processor resource utilization and therefore overall processor speed.

In effect, SMT allows programs that would otherwise be unable to saturate a core (due to internal barriers or inefficient coding) to be combined in order to saturate the core's computing resources. As such, it is mainly useful for compute-heavy tasks that do not already saturate other key metrics of the processor, such as cache bandwidth.

Wikipedia has an excellent article on SMT for those wishing to know more about how it works.