2011-08-30 15:24:34 +0000 2011-08-30 15:24:34 +0000
27
27

Was sind Threads, und was machen sie im Prozessor?

Ich habe mir die Statistiken für die Intel Pentium e5700 CPU angesehen.

Er hat zwei Kerne und zwei Threads. Was bewirken die Threads für den Prozessor? Gibt es einen Zusammenhang zwischen der Anzahl der Kerne und der Anzahl der Threads? Welchen Zweck erfüllen die Threads für das System insgesamt?

Antworten (3)

21
21
21
2011-08-30 15:34:16 +0000

Die Core-Anzahl ist die physikalische Anzahl der Kerne auf dem CPU-Chip selbst, während die Thread-Anzahl die Anzahl der einzelnen Anwendungs-Threads ist, die gleichzeitig auf der CPU selbst ausgeführt werden können. Ohne zusätzliche oder spezielle Hardware ist dies gleich der Core-Anzahl. Einige Prozessoren haben jedoch mehr Threads als Kerne. Einige Intel-CPUs verfügen über eine Funktion namens Hyperthreading , die es einem Betriebssystem ermöglicht, die doppelte Anzahl logischer Kerne pro physischem Kern zu sehen. Dies ermöglicht es dem Betriebssystem, die doppelte Anzahl von Threads gleichzeitig zu planen und auszuführen. Im Fall der CPU, die ich oben verlinkt habe, gibt es also vier physische Kerne, aber acht logische Kerne (so dass Sie acht Threads gleichzeitig ausführen können).

Jede einzelne Anwendung, die im Betriebssystem läuft, ist entweder Single-Thread oder Multi-Thread (betrachten Sie jeden Thread als eine “Unteranwendung”). Single-Thread-Anwendungen benötigen nur einen Thread, um auf der CPU zu laufen, während bei Multi-Thread-Anwendungen viele Sub-Threads gleichzeitig laufen. Zusätzliche Kerne oder Hyper-Threading ermöglichen es, dass mehr Anwendungs-Threads gleichzeitig ausgeführt werden können.

Dadurch können Multi-Thread- (nicht Single-Thread-) Anwendungen viel schneller laufen, da mehr als ein Thread gleichzeitig auf der CPU laufen kann.


Nur eine abschließende Anmerkung: Hyperthreading verbessert die Leistung von einigen Multithreading-Anwendungen, die speziell dafür optimiert sind (da es immer noch nur halb so viele physische wie logische Kerne gibt). In einigen verschiedenen Fällen können Anwendungen schneller laufen, wenn Hyperthreading deaktiviert ist (obwohl viele Anwendungen davon profitieren). Unabhängig von Hyperthreading ist eine Erhöhung der Anzahl der physischen Kerne immer von Vorteil für Multithreading-Anwendungen.

9
9
9
2011-08-30 15:45:22 +0000

Ein “Kern” stellt eine tatsächliche physische Teilmenge eines Prozessors dar, die für sich selbst eine Verarbeitung durchführen kann, während ein “Thread” angibt, wie viele tatsächliche Prozesse der Prozessor auf einmal bearbeiten kann. Intel hat eine Technologie entwickelt, die sie als “Hyper-Threading” bezeichnen. Diese Technik ermöglicht es, dass ein physischer Kern (der normalerweise nur einen Thread zur gleichen Zeit bearbeiten kann) nun zwei Threads gleichzeitig bearbeiten kann.

Ein Thread ist eine Aufgabe, die der Prozessor bewältigen muss. Zur einfachen Erklärung können Sie davon ausgehen, dass jede Anwendung, die Sie öffnen (z. B. Paint, Notepad, Media Player), ihren eigenen Thread hat… das bedeutet nicht, dass Sie nur zwei Anwendungen gleichzeitig öffnen können, einfach weil der Prozessor und das Betriebssystem so schnell beim “Umschalten von Threads” arbeiten, um die Anforderungen jeder geöffneten Anwendung zu erfüllen. Sie werden einfach eine bessere Leistung mit mehr Kernen erleben, weil Sie jetzt die ganze Arbeit auf mehr Prozessorkerne verteilen können.

Mein Arbeitsrechner hat zum Beispiel einen i7 eingebaut. Der i7 hat 4 physische Kerne, aber jeder Kern kann “Hyper-Threading” betreiben, was diesem Prozessor erlaubt, 8 Threads gleichzeitig zu bearbeiten. Wenn ich also den Task-Manager öffne, sehe ich 8 Kästchen für die Prozessorleistungsskala.

Eine allgemeine Faustregel besagt, dass mehr physische Kerne besser sind als mehr Threads. Wenn Sie also einen Prozessor vergleichen, der 4 Kerne und 4 Threads hat, wäre das besser als 2 Kerne und 4 Threads. Aber je mehr Threads Ihr Prozessor bewältigen kann, desto besser ist die Leistung beim Multitasking und bei einigen sehr intensiven Anwendungen (Videobearbeitung, CAD, CAM, Komprimierung, Verschlüsselung usw.) wird er mehr als einen Kern gleichzeitig nutzen.

-1
-1
-1
2019-07-18 22:54:39 +0000

Klicken Sie auf Links in einem Artikel in IE oder Chrome, jedes Mal, wenn Sie klicken, machen Sie einen Thread. je mehr Sie auf Links klicken, desto mehr Threads. haben eine 4-Kern-CPU, die Sie bis zu 8 Threads haben, können Sie 8 Links öffnen, bevor Sie beginnen, ein Problem zu haben. ohne Rücksicht auf Ihre Internetverbindung. so deckt jeder Kern zwei dieser Links (Threads), die Sie geöffnet haben. das ist die Idee IMO. wenn dies irgendeinen Sinn für jemanden macht.

Verwandte Fragen

14
15
19
9
6