was bedeutet 2 core 4 threads, bedeutet cpu?

Ich wollte wissen, was 2 Kerne 4 Threads über eine CPU bedeuten? Ich spreche über diese cpu die ich habe

Http://ark.intel.com/products/47341/Intel-Core-i5-520M-Processor-3M-Cache-2_40-GHz

Ich dachte anfangs, i5 hätte 4 Kerne, aber ich glaube, ich irre mich. Mein Verständnis eines Threads ist, dass es sich um einen Codeblock handelt, der gleichzeitig(gleichzeitig) mit anderen Threads ausgeführt werden kann. Also, was bedeuten 4 Threads in diesem Datenblatt? Ist es anders als die programmatische threads. Unterscheidet sich die Anzahl der Threads dort von dem Programmthread, den wir erstellen? Wenn es nur 2 Kerne hat, ist es dann richtig, dass Sie nur 2 parallele Programme ausführen können, obwohl es 4 Threads hat?

Author: user734861, 2014-01-12

4 answers

Ihr i5 hat zwei Kerne, jeder Kern kann zwei Threads ausführen, da intels Hyperthreading 4 Threads erzeugt und darüber hinaus mit hohen Geschwindigkeiten zwischen Prozessen wechselt. Hier ist eine nette Erklärung für Multithreading, wenn Sie mehr wissen möchten, aber im Wesentlichen kann Ihre CPU 4 Prozesse gleichzeitig ausführen und mit hoher Geschwindigkeit zwischen Prozessen wechseln.

 17
Author: ,
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
2014-01-12 00:17:20

Ich bin mir über Ihr Fachwissen in der Computerarchitektur nicht sicher, aber der Core i5, den Sie hier erwähnt haben, implementiert eine Form von Multithreading, die als simultanes Multithreading (SMT) bezeichnet wird. Intels Markenzeichen für die Implementierung von SMT ist Hyperthreading.

Abgesehen von SMT gibt es andere Formen des Multithreading, wobei das zeitliche Multithreading eins ist. Zum Beispiel feinkörniges temporales Multithreading, bei dem der Prozessor jeden Zyklus zwischen verschiedenen Threads wechseln kann und ermöglichen Sie somit die pseudo-parallele Ausführung mehrerer Programme. Ebenso kann es grobkörniges temporales Multithreading geben, bei dem ein Prozessor zwischen Threads wechseln kann, wenn er auf eine Operation mit hoher Latenz trifft, z. B. einen Hauptspeicherzugriff auf den aktuellen Thread. Die genauen Schaltpunkte können je nach Implementierung und Anforderungen wie Fairness oder Echtzeit-Fristen variieren.

SMT weicht von der Kontextwechselphilosophie für Multithreading dadurch ab, dass es tatsächlich zwei oder mehr Threads hat ausführung auf einem Prozessor gleichzeitig. Während die Implementierung variieren kann, besteht das primäre Ziel darin, die Funktionseinheiten im Prozessor auszunutzen, die im Leerlauf sind, wenn nur ein Thread ausgeführt wird, und auch die breite problemsuperskalare Natur des Prozessors auszunutzen. Sie können sich zeitliches Multithreading als zeitliches Schneiden der Prozessorressourcen vorstellen, während SMT als räumliches Schneiden der Ressourcen.

Eine detaillierte Analyse finden Sie in Tullsens 1995 Papier:

Http://dl.acm.org/citation.cfm?id=224449

 4
Author: Rev,
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
2015-01-20 19:33:01

" Wenn es nur 2 Kerne hat, ist es dann richtig, dass Sie nur 2 parallele Programme ausführen können, obwohl es 4 Threads hat?" Wenn es 2 Kerne hat, wird die Berechnung durch 2 = Parallelität dividiert Wenn Ihr System jedoch über Hyper-Threading verfügt, kann es die 2-Berechnung im selben Kern durchführen, weshalb derselbe Kern dem Betriebssystem als 2-Kerne angezeigt wird...logische Kerne.

 0
Author: tizoc,
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
2014-10-31 17:42:12

Nimm die Anzahl der Threads und dividiere sie durch die Anzahl der Kerne, und das gibt dir die Anzahl der Threads, die gleichzeitig pro Prozessorkern ausgeführt werden können.

In früheren Zeiten [bei früheren Intel-Modellen] war das Hyperthreading auf 1 Kern beschränkt, auf dem 2 Threads gleichzeitig ODER mehrere Kerne mit 1 Befehlssatz (auch bekannt als Thread) pro Kern ausgeführt wurden (ziemlich ineffizient, wenn Sie mich fragen). Aber mit besserer Rechenleistung und späteren Entwicklungen wie Ihrem i5-Prozessor haben Sie das, was ich mag um aufzurufen, ein Multi-Core-Hyperthread-Prozessor, der über mehrere Kerne verfügt, auf denen mehrere Befehlssätze (auch Threads genannt) pro Kern ausgeführt werden.

In Ihrem Fall erhält 1 Kern 2 Threads, wenn Sie also rechnen, haben Sie insgesamt = 4 Befehlssätze (Threads).

Ein weiteres Beispiel: # of Cores = 4, # of Threads = 8 / 8/4 = 2, sodass jeder Core 2 Threads gleichzeitig verarbeitet (nicht sicher, welches Prozessormodell dies tut, aber ich bin mir fast sicher, dass einer existiert).

Hoffe das hilft mir freund! Happy computing!

Quelle: PEARSON IT Zertifizierung CompTIA A+ Si Cram Cert. Manual

 0
Author: khoreyrs,
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
2015-07-20 15:58:18