EMZETT.
Login

Processor cores, logical processors and threads

In short: A physical processor core is a real computing unit. A logical processor is what the operating system sees as a computing unit (with SMT two per core). A thread is a program’s execution strand running on a logical processor. A processor (CPU, package) is the whole chip.

In more detail: The terms lie on three levels: hardware (chip, cores), operating system (logical processors) and software (threads). The operating system distributes threads onto the logical processors.

In Depth

TermLevelMeaning
Processor/CPU (package)HardwareThe chip in the socket
Physical coreHardwareComplete computing unit with its own ALU, L1/L2
Logical processorOperating systemWhat Task Manager counts as a “core”. With SMT 2 per physical one
ThreadSoftwareFlow within a process
ProcessSoftwareRunning program with its own memory, contains 1 or many threads

Example: A Ryzen 7 with 8 cores and SMT shows “8 cores, 16 logical processors” in Task Manager. 16 threads can run at once, but not twice as fast as 8.

  • Difference between core and thread: The core is hardware, the thread a piece of program flow. One core can run many threads in turn (time slices) or, with SMT, two simultaneously.
  • More threads than logical processors: Normal. The operating system switches every millisecond (scheduling).
  • Hybrid cores: P cores (with SMT) and E cores (without SMT) on one chip.
  • Benefits of several cores: Programs split into several threads use them. A single thread always uses only one core.
  • Limits: Amdahl’s law: the non-parallel share determines the maximum. Synchronization (locks) costs time.
  • Showing: Windows Task Manager → Performance → CPU. Linux lscpu, nproc.
  • Use: Servers and rendering benefit from many cores, games rather from high single-core speed.

See also: Simultaneous multithreading (SMT), Cores, Threads