Caseking ShopKontaktnoblechairsCaseking B2B
Blogbild SMT

Bei Prozessoren begegnen dir Angaben wie 8 Kerne und 16 Threads oder 16 Kerne und 32 Threads. Doch was sind diese Threads eigentlich? Und warum kann eine CPU manchmal mehr Threads gleichzeitig bearbeiten, als sie physische Prozessorkerne besitzt?



Dahinter steckt Multi-Threading. Vereinfacht gesagt hilft die Technik dabei, Rechenarbeit auf mehrere Arbeitsstränge zu verteilen und die vorhandene CPU-Leistung besser auszunutzen.

Aber ein Thread ist kein zusätzlicher Prozessorkern – und mehr Threads bedeuten auch nicht automatisch mehr FPS. 

Wir erklären dir Schritt für Schritt, wie Multi-Threading funktioniert, was SMT und Hyper-Threading damit zu tun haben und wann zusätzliche CPU-Threads wirklich etwas bringen.

Was ist Multi-Threading?

Um Multi-Threading zu verstehen, müssen wir zuerst klären, was überhaupt ein Thread ist.

Ein Programm besteht aus verschiedenen Arbeitsschritten. Diese Arbeit kann wiederum in kleinere Abläufe aufgeteilt werden. Einen solchen Ablauf bezeichnet man als Thread.

Ein Spiel könnte seine Arbeit beispielsweise auf verschiedene Bereiche verteilen:

  • Spiellogik berechnen
  • Physik berechnen
  • Gegner und NPCs steuern
  • Audiodaten verarbeiten
  • Daten von der SSD nachladen
  • Informationen für die Grafikkarte vorbereiten

Statt sämtliche Aufgaben nacheinander über einen einzigen Arbeitsstrang abzuarbeiten, kann eine entsprechend programmierte Anwendung mehrere Threads verwenden.

Genau hier kommt Multi-Threading ins Spiel: Mehrere Threads können parallel oder zumindest zeitlich überlappend verarbeitet werden.

Was ist ein Thread einfach erklärt?

Stell dir einen CPU-Kern wie eine Werkbank vor.

Auf dieser Werkbank werden verschiedene Aufträge bearbeitet. Ein Thread entspricht dabei einer Auftragsliste mit Arbeitsschritten, die abgearbeitet werden soll.

Hat ein Programm nur einen Thread, gibt es eine große Auftragsliste. Nutzt das Programm mehrere Threads, entstehen mehrere Listen, deren Aufgaben auf verschiedene CPU-Kerne verteilt werden können.

Das Betriebssystem übernimmt dabei einen wichtigen Teil der Organisation. Ein sogenannter Scheduler entscheidet, welcher Thread wann Rechenzeit auf welchem verfügbaren Prozessor beziehungsweise logischen Prozessor erhält. Ein Scheduler ist also vereinfacht gesagt der Arbeitsverteiler des Betriebssystems.

CPU-Kerne und Threads: Was ist der Unterschied?

Einer der häufigsten Fehler beim Vergleich von Prozessoren besteht darin, Kerne und Threads gleichzusetzen.

Ein CPU-Kern ist eine physisch vorhandene Recheneinheit innerhalb des Prozessors.

Ein Thread ist dagegen ein Arbeitsstrang, dessen Befehle von einem CPU-Kern verarbeitet werden.

BegriffEinfach erklärtBeispiel
CPU-KernPhysische Recheneinheit des ProzessorsEine CPU besitzt 8 Kerne
ThreadArbeits- beziehungsweise Befehlsstrang eines ProgrammsEin Spiel verteilt Berechnungen auf mehrere Threads
Logischer ProzessorRechenmöglichkeit, die das Betriebssystem ansprechen kannEin SMT-Kern kann dem Betriebssystem zwei logische Prozessoren bereitstellen
Multi-ThreadingVerarbeitung mehrerer ThreadsEin Programm verteilt Arbeit auf mehrere Threads
SMTMehrere Threads werden auf einem physischen CPU-Kern gleichzeitig verarbeitetHäufig zwei Threads pro Kern
Hyper-ThreadingIntels Bezeichnung für eine SMT-ImplementierungBekannt von zahlreichen Intel-Core-Prozessoren

Zwei physische Kerne besitzen deutlich mehr eigene Hardware-Ressourcen. Zwei Threads auf einem SMT-Kern müssen sich dagegen zahlreiche Ressourcen dieses einen Kerns teilen.

Wie funktioniert Multi-Threading?

In einem PC greifen Software, Betriebssystem und Prozessor ineinander.

Eine Anwendung muss ihre Aufgaben zunächst so aufteilen, dass mehrere Threads entstehen können. Das Betriebssystem verteilt diese Threads anschließend auf die verfügbaren CPU-Ressourcen.

Der Ablauf sieht vereinfacht folgendermaßen aus:

  1. Ein Programm erzeugt mehrere Threads.
    Beispielsweise können unterschiedliche Berechnungen eines Spiels getrennt voneinander vorbereitet werden.
  2. Das Betriebssystem verwaltet die Threads.
    Der Scheduler entscheidet, wann und wo die einzelnen Threads ausgeführt werden.
  3. Die CPU verarbeitet die Threads.
    Besitzt der Prozessor mehrere Kerne, können verschiedene Threads gleichzeitig auf verschiedenen physischen Kernen laufen.
  4. SMT kann zusätzliche Möglichkeiten schaffen.
    Unterstützt ein CPU-Kern Simultaneous Multithreading, kann er mehr als einen Thread gleichzeitig aufnehmen.
  5. Die Ergebnisse werden wieder zusammengeführt.
    Viele Aufgaben eines Programms hängen voneinander ab und müssen deshalb an bestimmten Stellen auf andere Berechnungen warten.

Und genau dieser letzte Punkt erklärt, warum die Leistung nicht einfach mit der Anzahl der Threads steigt.

Was ist SMT bei einer CPU?

SMT steht für Simultaneous Multithreading, also simultanes Multi-Threading.

Hierbei handelt es sich um eine Hardware-Technik der CPU. Ein einzelner physischer Prozessorkern kann dadurch mehrere Threads gleichzeitig bearbeiten. 

Bei Desktop-Prozessoren ist vor allem 2-Wege-SMT vertreten, bei dem ein Kern zwei Threads zur Verfügung stellt. Doch wie kann ein Kern plötzlich zwei Threads bearbeiten? Dafür müssen wir kurz einen Blick in einen CPU-Kern werfen.

Ein Prozessorkern besteht aus unterschiedlichen Bereichen, die jeweils bestimmte Aufgaben übernehmen. Während eines Programms sind nicht zwangsläufig alle diese Bereiche jederzeit vollständig beschäftigt. Manchmal muss ein Thread beispielsweise darauf warten, dass benötigte Daten aus dem Arbeitsspeicher eintreffen.

Ohne SMT könnten Teile des CPU-Kerns in diesem Moment ungenutzt bleiben. Mit SMT kann der Prozessor freie Kapazitäten stattdessen für Befehle eines zweiten Threads verwenden. Dadurch soll der Kern insgesamt besser ausgelastet werden.

Ein CPU-Kern mit SMT ist trotzdem nur ein CPU-Kern

Unsere Werkbank eignet sich auch hier wieder als Vergleich.

Ohne SMT arbeitet eine Person an einer Werkbank einen Auftrag ab. Muss sie auf ein benötigtes Teil warten, bleiben einige Werkzeuge ungenutzt.

Mit SMT liegt bereits ein zweiter Auftrag bereit. Während der erste Auftrag gerade auf etwas wartet, können freie Werkzeuge für Teile des zweiten Auftrags verwendet werden. Es gibt dadurch aber weder eine zweite Person noch eine zweite Werkbank.

Genau deshalb verdoppelt SMT nicht automatisch die Leistung eines Prozessorkerns. Beide Threads teilen sich weiterhin große Teile derselben Rechenressourcen.

Was ist Hyper-Threading?

Hyper-Threading ist ein Begriff, der besonders häufig im Zusammenhang mit Intel-Prozessoren auftaucht.

Dabei handelt es sich nicht um eine komplett andere Technik. Hyper-Threading ist Intels Bezeichnung für eine Umsetzung von Simultaneous Multithreading.

Bei AMD wird dagegen üblicherweise direkt von SMT gesprochen. AMDs Zen-Architekturen setzen ebenfalls auf die parallele Verarbeitung von zwei Threads pro entsprechendem CPU-Kern.

Was bedeuten 8 Kerne und 16 Threads?

Findest du bei einer CPU beispielsweise die Angabe 8 Kerne / 16 Threads, bedeutet das zunächst:

Der Prozessor besitzt acht physische CPU-Kerne und kann dem Betriebssystem insgesamt 16 logische Prozessoren zur Verfügung stellen.

Bei einem 2-Wege-SMT-Aufbau kann jeder physische Kern zwei Threads aufnehmen.

Die zusätzlichen logischen Prozessoren teilen sich Ressourcen mit dem jeweiligen physischen Kern. Ein echter zusätzlicher CPU-Kern bietet deshalb deutlich mehr zusätzliche Rechenleistung als ein zweiter SMT-Thread.

Bei Prozessoren mit unterschiedlichen Kernarten wie der Core-Ultra-Serie von Intel, kann die Rechnung außerdem anders aussehen. Deshalb solltest du dich im Zweifel immer an den vom Hersteller angegebenen Werten für Cores und Threads orientieren.

Single-Thread vs. Multi-Thread: Was bedeutet das?

Bei CPU-Benchmarks findest du häufig Begriffe wie Single-Thread-Leistung und Multi-Thread-Leistung.

Die Single-Thread-Leistung beschreibt vereinfacht, wie schnell ein Prozessor einen einzelnen Arbeitsstrang bearbeiten kann.

Die Multi-Thread-Leistung zeigt dagegen, wie schnell die CPU eine Aufgabe bewältigt, die sich effektiv über viele Threads verteilen lässt.

Das ist ein wichtiger Unterschied, da nicht jedes Programm beliebig viele Threads sinnvoll nutzen kann. Eine Aufgabe, bei der Schritt B zwingend auf das Ergebnis von Schritt A warten muss, lässt sich beispielsweise nicht einfach gleichzeitig berechnen.

Welche Vorteile hat Multi-Threading?

Gut umgesetztes Multi-Threading kann die vorhandenen CPU-Ressourcen deutlich besser nutzen. Besonders bei Anwendungen, die ihre Arbeit gut aufteilen können, ergeben sich mehrere Vorteile:

  • Mehr Rechenaufgaben können parallel verarbeitet werden
  • Mehrkern-Prozessoren werden besser ausgelastet
  • Programme können bei passenden Aufgaben schneller arbeiten
  • Mehrere rechenintensive Anwendungen lassen sich leichter gleichzeitig verwenden
  • Streaming, Rendering oder Videobearbeitung können von vielen Threads profitieren
  • SMT kann Leerlauf innerhalb eines CPU-Kerns reduzieren

Der Vorteil hängt allerdings immer von der jeweiligen Software und der CPU-Architektur ab. Mehr Threads allein garantieren deshalb keine höhere Leistung.

Bringen mehr Threads mehr Leistung?

Nein. Damit zusätzliche Threads helfen können, muss zunächst genügend parallelisierbare Arbeit vorhanden sein.

Ein Programm mit nur wenigen wichtigen Threads wird durch eine CPU mit 32 oder 64 verfügbaren Threads nicht automatisch schneller. Die zusätzlichen Rechenmöglichkeiten warten dann schlicht auf Arbeit.

Bei SMT kommt ein weiterer Punkt hinzu: Zwei Threads auf einem physischen Kern teilen sich die Ressourcen. Benötigen beide Threads gerade dieselben Bereiche des CPU-Kerns besonders stark, können sie sich gegenseitig ausbremsen. 

Auch Cache-Speicher – besonders schneller Speicher direkt in beziehungsweise nahe an der CPU – muss teilweise gemeinsam genutzt werden. Daher gilt:

Mehr Threads erhöhen das Leistungspotenzial, aber Software und CPU müssen dieses Potenzial auch nutzen können.

Was bringt Multi-Threading beim Gaming?

Auch Games bestehen längst nicht nur aus einer einzigen Berechnung.

Eine Game-Engine muss unter anderem Spiellogik, Animationen, Physik, Audio, Gegnerverhalten, Netzwerkberechnungen und die Vorbereitung der Bildausgabe verarbeiten.

Viele dieser Aufgaben können auf unterschiedliche Threads verteilt werden. Dadurch können Spiele mehrere CPU-Kerne nutzen. Allerdings lassen sich Spiele nicht unbegrenzt parallelisieren.

Manche Berechnungen hängen direkt voneinander ab. Ein neuer Frame kann beispielsweise Informationen benötigen, die zunächst von einem anderen Teil der Engine berechnet werden müssen. Ein besonders wichtiger Thread kann dadurch zum Flaschenhals werden, obwohl andere CPU-Kerne noch nicht vollständig ausgelastet sind.

SMT kann beim Gaming helfen – muss es aber nicht

Simultaneous Multithreading kann einem Spiel zusätzliche Rechenmöglichkeiten geben und gleichzeitig Hintergrundprogramme wie Discord, Browser, Aufnahme-Software oder andere Anwendungen bedienen.

Wie groß der Vorteil ausfällt, hängt stark vom jeweiligen Spiel, der Engine und dem verwendeten Prozessor ab.

Ist ein physischer Kern ohnehin bereits stark ausgelastet, kann ein zweiter SMT-Thread wenig zusätzliche Leistung freisetzen. In ungünstigen Fällen können zusätzlicher Verwaltungsaufwand und gemeinsam genutzte CPU-Ressourcen die Performance sogar leicht verschlechtern.

Wie sehe ich, wie viele Kerne und Threads meine CPU hat?

Unter Windows kannst du das schnell über den Task-Manager überprüfen.

Öffne den Task-Manager, wechsle auf den Reiter Leistung und anschließend auf CPU. Klicke mit Rechtsklick auf den Graphen und ändere ihn auf Logische Prozessoren.

Wie wichtig sind CPU-Threads beim Prozessor-Kauf?

Die Thread-Anzahl des Prozessors ist eine hilfreiche Angabe – sie sollte aber niemals allein über den Kauf einer CPU entscheiden.

Zwei Prozessoren mit jeweils 16 Threads können völlig unterschiedliche Leistungen erreichen. Entscheidend sind zusätzlich unter anderem die Architektur der einzelnen Kerne, Taktraten, Cache, Speicheranbindung sowie die jeweilige Anwendung.

Für Gaming kommt außerdem die Grafikkarte hinzu. Wenn ein Spiel bereits durch die GPU begrenzt wird, bringen zusätzliche CPU-Threads kaum zusätzliche FPS.

Für Rendering, Video-Encoding, Softwareentwicklung oder andere stark parallelisierte Anwendungen können zusätzliche Kerne und Threads dagegen deutlich stärker ins Gewicht fallen.

Beim CPU-Vergleich lohnt sich deshalb immer der Blick auf reale Benchmarks für den Einsatzzweck, statt nur Kern- und Thread-Zahlen miteinander zu vergleichen.

Häufige Fragen zu Multi-Threading

Nein. Ein CPU-Kern ist eine physische Recheneinheit innerhalb des Prozessors. Ein Thread ist ein Arbeits- beziehungsweise Ausführungsstrang. Durch SMT kann ein physischer Kern mehrere Threads gleichzeitig bearbeiten.

Bei ansonsten identischen Voraussetzungen bietet eine CPU mit zusätzlichen SMT-Threads mehr Potenzial für stark parallelisierte Aufgaben. Wie groß der Vorteil tatsächlich ausfällt, hängt jedoch von Software und CPU-Architektur ab. Zwei SMT-Threads besitzen nicht die Rechenleistung zweier separater Kerne.

Nicht ganz. Multi-Threading ist der übergeordnete Begriff für die Verarbeitung mehrerer Threads. Hyper-Threading bezeichnet eine Intel-Technik für Simultaneous Multithreading, bei der mehrere Threads auf einem physischen CPU-Kern verarbeitet werden können.

SMT steht für Simultaneous Multithreading und beschreibt das technische Prinzip. Hyper-Threading ist Intels Markenbezeichnung für eine eigene Umsetzung dieses Prinzips. AMD bezeichnet seine entsprechende Technik üblicherweise einfach als SMT.

Viele aktuelle Spiele nutzen mehrere Threads und können deshalb von Prozessoren mit mehreren leistungsfähigen Kernen profitieren. Zusätzliche SMT-Threads können ebenfalls helfen, garantieren aber keine höheren FPS. Wie gut ein Spiel skaliert, hängt stark von seiner Engine und der Verteilung der Rechenarbeit ab.

Mehr Threads holen mehr aus der CPU – wenn die Software mitspielt

Siehst du beim nächsten CPU-Vergleich Angaben wie 8C/16T, weißt du jetzt, was dahintersteckt: Die CPU besitzt acht echte Kerne, kann aber bis zu 16 Hardware-Threads bearbeiten.

Der Vorteil von Multi-Threading liegt nicht in einer magischen Verdoppelung der Rechenleistung. Stattdessen kann Arbeit besser verteilt und vorhandene Hardware effizienter genutzt werden.

Welche Hardware-Technik sollen wir als Nächstes genauer erklären? Schreib es uns gerne in die Kommentare!

0 0 votes
Artikelbewertung
Abonnieren
Benachrichtige mich bei
guest
0 Kommentare
Newest
Oldest Most Voted