Warum zeigt mein Intel i7-920 8 Kerne anstelle von 4 Kernen an?

Wenn ich zum Task-Manager gehe, sehe ich 8 Prozessoren, aber ich weiß, dass ich 4 habe. Warum?

alt-text

Author: Gaff, 2010-01-14

3 answers

Hyperthreading.

Hyper-Threading abstrahiert den Task-Wechsel von den Betriebssystemen. Normalerweise muss sich ein Betriebssystem mit der Planung von Prozessen über verschiedene CPUs befassen und sicherstellen, dass jede Aufgabe, die auf dem System ausgeführt wird, ihren gerechten Anteil hat, aber nicht zu viel (wenn etwas anderes dies wünscht) von der CPU.

Hyper-Threading ist eine Möglichkeit, diesen zweiten Prozess der Aufgabenfreigabe zumindest für ein wenig vom Betriebssystem wegzunehmen. Der Grund ist, dass der Prozessor kann Taskwechsel viel schneller als das Betriebssystem es sagen kann. Wenn also zwei logische Prozessoren präsentiert werden, wenn es tatsächlich nur einen gibt, muss das Betriebssystem nur halb so viele Taskwechselvorgänge ausführen, aber mehr CPU-Planung. Aber das Nettoergebnis ist angeblich eine schnellere Maschine in Multitasking-Operationen.

Der tatsächliche Nutzen davon hängt stark von der Arbeitsbelastung ab, die Sie ausführen. Für die meisten Menschen schadet es nicht, es an-oder auszuschalten off. 4 vs 8 Threads ist wie die Wahl zwischen einem Ferrari oder einem Lamborghini für Heimanwender.

In Serverszenarien kann dies jedoch einen großen Unterschied machen. Beispielsweise können Hypervisoren durch den Einsatz von Hyperthreading häufig eine große Geschwindigkeitssteigerung erzielen, da sie sehr strenge Anforderungen an die CPU-Planung haben.

SQL Server erhalten diesen Anstieg jedoch häufig nicht, da es oft besser ist, vier "große" Threads als 8 "mittlere" Threads zu haben.

 39
Author: Mark Henderson,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/techietown.info/template/agent.layouts/content.php on line 61
2012-07-26 20:43:25

Dass mein Freund ist Hyper-Threading.

Hyperthreading ist eine Form von simultanem Multithreading, die die superskalare Architektur nutzt. Mehrere Anweisungen, die parallel an separaten Daten arbeiten. Sie erscheinen dem Betriebssystem als zwei Prozessoren, sodass das Betriebssystem zwei Prozesse gleichzeitig planen kann. Darüber hinaus können zwei oder mehr Prozesse die gleichen Ressourcen verwenden. Wenn ein Prozess fehlschlägt, können die Ressourcen problemlos neu zugewiesen werden. Das Betriebssystem muss Unterstützung gleichzeitige multi-threading (SMT).

 11
Author: James Mertz,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/techietown.info/template/agent.layouts/content.php on line 61
2012-07-26 18:22:23

Die i7-Familie ist ein Quad-Core-Prozessor mit 8 Threads. Normale Quad-Cores haben 4 Threads, und da Hyper-Threading aktiviert ist, erkennt Ihr Computer diese 8 Threads als Prozessoren.

 7
Author: tcables,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/techietown.info/template/agent.layouts/content.php on line 61
2013-02-23 07:00:57