Ask Ars: what is a CPU thread? | Ars Technica


** /Ars/Technica **

Register Log in

· Home
· Main Menu

· Information Technology Technology Lab
· Product News & Reviews Gear & Gadgets
· Business of Technology Ministry of Innovation
· Security & Hacktivism Risk Assessment
· Civilization & Discontents Law & Disorder
· The Apple Ecosystem Infinite Loop
· Gaming & Entertainment Opposable Thumbs
· Science & Exploration The Scientific Method

Feature Series Interop 2014 Develop your IT strategy.

*Site Theme*

· Dark on light
· Light on dark

*Explore Ars*

· Reviews
· Video
· Staff Blogs
· Feature Archive
· Staff Directory
· Contact Us

*Featured Disciplines*

· Photography
· Productivity
· Cloud
· Gadgets
· Tablets

· My Stories:

*New Since Last Visit *

See more news stories

*We Recommend*

*My Discussions*

Log in to track your discussions.

· Forums
· Subscribe
· Jobs

** Ministry of Innovation / Business of Technology **

** Ask Ars: what is a CPU thread? **

*You've heard the term "simultaneous multithreading" applied to CPUs, but
maybe …*

by Jon Stokes - Apr 12, 2011 11:45 am UTC


/ In 1998, Ask Ars was an early feature of the newly-launched Ars Technica.
Now, as then, it's all about your questions and our community's answers.
Each week, we'll dig into our question bag, provide our own take, then tap
the wisdom of our readers. To submit your own question, see our helpful
tips page./

*Question: What is a CPU thread (as in "multithreaded CPU," "simultaneous
multithreading," etc.)?*

Tech pundits, analysts, and reviewers often speak of "multithreaded"
programs, or even "multithreaded processors," without ever defining what,
exactly, a "thread" is. Truth be told, some of those using the term
probably don't really


what are cpu threads

Thread (computing) - Wikipedia, the free encyclopedia


** Thread (computing) **

From Wikipedia, the free encyclopedia
Jump to: navigation, search
This article is about the concurrency concept. For the multithreading in
hardware, see Multithreading (computer architecture). For the form of code
consisting entirely of subroutine calls, see Threaded code. For other uses,
see Thread (disambiguation).

This article includes a list of references, but *its sources remain
unclear because it has insufficient inline citations*. Please help to
improve this article by introducing more precise citations. /(December

A process with two threads of execution on a single processor

In computer science, a *thread* of execution is the smallest sequence of
programmed instructions that can be managed independently by an operating
system scheduler. The scheduler itself is a light-weight process. The
implementation of threads and processes differs from one operating system
to another, but in most cases, a thread is contained inside a process.
Multiple threads can exist within the same process and share resources such
as memory, while different processes do not share these resources. In
particular, the threads of a process share the latter's instructions (its
code) and its context (the values that its variables reference at any given

On a single processor, multithreading is generally implemented by
time-division multiplexing (as in multitasking): the processor switches
between different threads. This context switching generally happens
frequently enough that the user perceives the threads or tasks as running
at the same time. On a multiprocessor or multi-core system, threads can be
truly concurrent, with every processor or core executing a separate thread

Many modern operating systems directly support both time-sliced and
multiprocessor threading with a process scheduler. The kernel of an
operating system allows programmers to manipulate threads via the system
call interface. Some implementations are called a /kernel


© 2005-2019