EMZETT.
Login

Prozessorkerne, logische Prozessoren und Threads

Kurz: Ein physischer Prozessorkern ist eine echte Recheneinheit. Ein logischer Prozessor ist das, was das Betriebssystem als Recheneinheit sieht (bei SMT zwei pro Kern). Ein Thread ist der Ausführungsstrang eines Programms, der auf einem logischen Prozessor läuft. Ein Prozessor (CPU, Package) ist der ganze Chip.

Genauer: Die Begriffe liegen auf drei Ebenen: Hardware (Chip, Kerne), Betriebssystem (logische Prozessoren) und Software (Threads). Das Betriebssystem verteilt die Threads auf die logischen Prozessoren.

Im Detail

BegriffEbeneBedeutung
Prozessor/CPU (Package)HardwareDer Chip im Sockel
Physischer Kern (Core)HardwareVollständige Recheneinheit mit eigener ALU, L1/L2
Logischer ProzessorBetriebssystemWas der Task-Manager als „Kern” zählt. Mit SMT 2 je Physikalischem
ThreadSoftwareAblauf innerhalb eines Prozesses
ProzessSoftwareLaufendes Programm mit eigenem Speicher, enthält 1 oder viele Threads

Beispiel: Ein Ryzen 7 mit 8 Kernen und SMT zeigt im Task-Manager „8 Kerne, 16 logische Prozessoren”. Es können 16 Threads gleichzeitig laufen, aber nicht doppelt so schnell wie 8.

  • Unterschied zwischen Kern und Thread: Der Kern ist Hardware, der Thread ein Stück Programmablauf. Ein Kern kann viele Threads nacheinander (Zeitscheiben) oder bei SMT zwei gleichzeitig ausführen.
  • Mehr Threads als logische Prozessoren: Normal. Das Betriebssystem schaltet im Millisekundentakt um (Scheduling).
  • Hybridkerne: P-Kerne (mit SMT) und E-Kerne (ohne SMT) auf einem Chip.
  • Vorteile mehrerer Kerne: Programme, die in mehrere Threads aufgeteilt sind, nutzen sie. Ein Einzelthread nutzt immer nur einen Kern.
  • Grenzen: Amdahls Gesetz: Der nicht parallele Anteil bestimmt das Maximum. Synchronisation (Sperren) kostet Zeit.
  • Anzeigen: Windows Task-Manager → Leistung → CPU. Linux lscpu, nproc.
  • Einsatz: Server und Rendern profitieren von vielen Kernen, Spiele eher von hohem Einzelkern-Tempo.

Siehe auch: Simultaneous Multithreading (SMT), Cores, Threads