Ich habe mir die Statistiken für die Intel Pentium e5700- CPU angesehen.
Es hat zwei Kerne und zwei Threads. Was tun die Threads für den Prozessor? Gibt es einen Zusammenhang zwischen der Anzahl der Kerne und der Anzahl der Threads? Welchen Zweck erfüllen Threads für das System insgesamt?
Antworten:
Die Anzahl der Kerne ist die physische Anzahl der Kerne auf dem CPU-Chip selbst, während die Anzahl der Threads die Anzahl der einzelnen Anwendungsthreads ist, die gleichzeitig auf der CPU selbst ausgeführt werden können. Ohne zusätzliche oder spezielle Hardware entspricht dies der Kernanzahl. Einige Prozessoren haben jedoch mehr Threads als Kerne.
Einige Intel-CPUs verfügen über eine Funktion namens Hyperthreading , mit der ein Betriebssystem die doppelte Anzahl logischer Kerne pro physischem Kern erkennen kann. Auf diese Weise kann das Betriebssystem die doppelte Anzahl von Threads gleichzeitig planen und ausführen. Bei der oben verknüpften CPU gibt es also vier physische Kerne, aber acht logische (Sie können also acht Threads gleichzeitig ausführen).
Jede einzelne Anwendung, die im Betriebssystem ausgeführt wird, ist entweder ein oder mehrere Threads (stellen Sie sich jeden Thread als "Unteranwendung" vor). Single-Threaded-Anwendungen benötigen nur einen Thread, um auf der CPU ausgeführt zu werden, wohingegen bei Multi-Threaded-Anwendungen viele Sub-Threads gleichzeitig ausgeführt werden. Durch zusätzliche Kerne oder Hyper-Threading können mehrere Anwendungsthreads gleichzeitig ausgeführt werden.
Auf diese Weise können Anwendungen mit mehreren Threads ( nicht mit einem einzigen Thread) viel schneller ausgeführt werden, da auf der CPU mehrere Threads gleichzeitig ausgeführt werden können.
Nur eine letzte Anmerkung: Hyperthreading verbessert die Leistung einiger speziell dafür optimierter Multithread-Anwendungen (da logisch immer noch nur die Hälfte der physischen Kerne vorhanden ist). In einigen verschiedenen Fällen können Anwendungen schneller laufen mit Hyperthreading deaktiviert (obwohl viele Anwendungen nicht von ihnen profitieren). Unabhängig vom Hyperthreading kommt eine Erhöhung der Anzahl der physischen Kerne immer Multithread-Anwendungen zugute.
quelle
Ein "Kern" stellt eine tatsächliche physische Teilmenge eines Prozessors dar, der die Verarbeitung selbst erledigen kann, wohingegen ein "Thread" angibt, wie viele tatsächliche Prozesse der Prozessor auf einmal erledigen kann. Intel hat eine Technologie entwickelt, die als "Hyper-Threading" bezeichnet wird. Diese Technik ermöglicht, dass ein physischer Kern (der normalerweise nur einen Thread gleichzeitig verarbeiten kann) jetzt zwei Threads gleichzeitig verarbeiten kann.
Ein Thread ist eine Aufgabe, die der Prozessor erledigen muss. Für eine einfache Erklärung können Sie davon ausgehen, dass jede Anwendung, die Sie öffnen (z. B. Paint, Editor, Media Player), einen eigenen Thread hat. Dies bedeutet jedoch nicht, dass Sie nur öffnen können 2 Anwendungen auf einmal, einfach weil der Prozessor und das Betriebssystem beim "Wechseln von Threads" so schnell arbeiten, um die Anforderungen jeder Anwendung zu erfüllen, die Sie geöffnet haben. Sie werden einfach eine bessere Leistung mit mehr Kernen erzielen, da Sie jetzt die gesamte Arbeit auf mehr Kernprozessoren verteilen können.
Auf meinem Arbeitscomputer befindet sich beispielsweise ein i7. Der i7 verfügt über 4 physische Kerne, aber jeder Kern kann Hyper-Threading ausführen, wodurch dieser Prozessor 8 Threads gleichzeitig verarbeiten kann. Wenn ich den Task-Manager öffne, werden 8 Felder für die Prozessorleistungsskala angezeigt.
Eine allgemeine Faustregel lautet, dass mehr physische Kerne besser sind als mehr Threads. Wenn Sie also einen Prozessor mit 4 Kernen und 4 Threads vergleichen, wären 4 Threads besser als 2 Kerne. Je mehr Threads Ihr Prozessor verarbeiten kann, desto besser ist die Leistung beim Multitasking. Bei einigen sehr intensiven Anwendungen (Videobearbeitung, CAD, CAM, Komprimierung, Verschlüsselung usw.) wird jeweils mehr als ein Kern gleichzeitig verwendet.
quelle
Klicken auf Links in einem Artikel in IE oder Chrome, jedes Mal, wenn Sie klicken, erstellen Sie einen Thread. Je mehr Sie auf Links klicken, desto mehr Threads. Bei einer 4-Kern-CPU haben Sie bis zu 8 Threads. Sie können 8 Links öffnen, bevor Sie ein Problem haben. Missachtung Ihrer Internetverbindung. Jeder Kern deckt also zwei der von Ihnen geöffneten Links (Threads) ab. Das ist die Idee, IMO. ob dies für irgendjemanden einen Sinn ergibt.
quelle