it-swarm.com.de

Unterschied zwischen Core und Prozessor?

Was ist der Unterschied zwischen einem Core und einem Prozessor?

Ich habe bereits bei Google danach gesucht, aber ich habe nur Multi-Core- und Multi-Prozessor-Definitionen, aber es stimmt nicht mit dem überein, wonach ich suche.

172
Saad Achemlal

Ein Kern ist in der Regel die grundlegende Recheneinheit der CPU - sie kann einen einzelnen Programmkontext (oder mehrere, wenn er Hardwarethreads wie Hyperthreading auf Intel-CPUs unterstützt) ausführen, den korrekten Programmstatus, die Register und die korrekte Ausführungsreihenfolge beibehalten Durchführen der Operationen über ALUs . Zur Optimierung kann ein Kern auch Kerncaches mit Kopien häufig verwendeter Speicherblöcke enthalten. 

Eine CPU kann einen oder mehrere Kerne haben, um Aufgaben zu einem bestimmten Zeitpunkt auszuführen. Diese Aufgaben sind normalerweise Softwareprozesse und Threads, die vom Betriebssystem geplant werden. Beachten Sie, dass das Betriebssystem viele Threads enthalten kann, die CPU jedoch nur X zu einem bestimmten Zeitpunkt ausführen kann, wobei X = Anzahl der Kerne * Anzahl der Hardwarethreads pro Kern. Der Rest müsste darauf warten, dass das Betriebssystem sie terminiert, sei es, indem er aktuell ausgeführte Aufgaben oder andere Maßnahmen vornimmt.

Zusätzlich zu den einen oder vielen Kernen enthält die CPU eine Verbindung, die die Kerne mit der Außenwelt verbindet, und normalerweise auch einen großen gemeinsam genutzten Cache der letzten Ebene. Es sind mehrere andere Schlüsselelemente erforderlich, um eine CPU zum Laufen zu bringen, ihre genaue Position kann sich jedoch je nach Design unterscheiden. Sie benötigen einen Speichercontroller, um mit dem Speicher, den E/A-Controllern (Display, PCIe, USB usw.) zu kommunizieren. In der Vergangenheit befanden sich diese Elemente außerhalb der CPU, im komplementären "Chipsatz", aber die meisten modernen Designs haben sie in die CPU integriert.

Darüber hinaus verfügt die CPU möglicherweise über eine integrierte GPU und so ziemlich alles andere, was der Designer aus Gründen der Leistung, Leistung und Fertigung berücksichtigen wollte. Das CPU-Design tendiert meistens zu dem sogenannten system on chip (SoC).

Dies ist ein "klassisches" Design, das von den meisten modernen Universalgeräten (Client-PC, Server sowie Tablet und Smartphone) verwendet wird. In der Akademie finden Sie aufwändigere Designs, bei denen die Berechnungen nicht in grundlegenden "kernähnlichen" Einheiten ausgeführt werden.

172
Leeor
105
JohnTortugo

Lassen Sie uns zunächst klären, was eine CPU ist und was ein Kern ist, eine zentrale Prozessoreinheit. CPU kann mehrere Kerneinheiten haben. Diese Kerne sind selbst ein Prozessor, der ein Programm ausführen kann, aber auf demselben Chip selbst enthalten ist.

In der Vergangenheit war eine CPU auf mehrere Chips verteilt, aber als Moore's Law fortschritt, wurde eine komplette CPU in einem Chip (Die) installiert, seit den 90er Jahren begann der Hersteller, mehr Kerne in den gleichen Chip einzubauen Das ist das Konzept von Multi-Core.

In diesen Tagen ist es möglich, Hunderte von Prozessorkernen auf derselben CPU (Chip oder Die), Intel Xeon, zu haben. Eine andere Technik, die in den 90er Jahren entwickelt wurde, war simultanes Multithreading. Grundsätzlich stellten sie fest, dass es möglich war, einen anderen Thread in derselben Single-Core-CPU zu haben, da die meisten Ressourcen bereits wie bei ALU-Registern mehrfach vorhanden waren.

Grundsätzlich kann eine CPU über mehrere Kerne verfügen, von denen jeder einen Thread oder mehrere gleichzeitig ausführen kann. In der Zukunft erwarten wir möglicherweise mehr Kerne, jedoch mit mehr Schwierigkeiten, effizient programmieren zu können.

26
Germán Alfaro

CPU ist eine zentrale Verarbeitungseinheit. Seit 2002 haben wir nur einen Core-Prozessor, d. H. Wir führen jeweils nur eine einzelne Aufgabe oder ein Programm aus.

Damit mehrere Programme gleichzeitig ausgeführt werden können, müssen wir den Multiprozessor für die gleichzeitige Ausführung mehrerer Prozesse verwenden. Daher benötigten wir ein anderes Motherboard, das sehr teuer ist.

Intel hat also das Konzept des Hyperthreading eingeführt, d. H., Es wird die einzelne CPU in zwei virtuelle CPUs umwandeln, d. H. Jetzt ist die CPU einfach, aber sie gibt nur vor, dass sie über eine Dual-CPU verfügt und mehrere Aufgaben ausführt. Mit echten Mehrfachkernen ist es jedoch besser als der, so dass die Leute einen Multi-Core-Prozessor entwickeln, d. H. Mehrere Prozessoren in einer einzelnen Box, d. Das heißt mehrere Kerne.

8
Himanshu Gupta

In der Anfangszeit ... wie schon in den 90er Jahren ... waren die Prozessoren nicht in der Lage, mehrere Aufgaben so effizient auszuführen, da ein einzelner Prozessor nur eine einzige Aufgabe erledigen konnte Antivirus, Microsoft Word, VLC, etc. Software läuft alle zur gleichen Zeit ... das ist eigentlich nicht wahr. Als ich sagte, dass ein Prozessor einen einzelnen Prozess auf einmal handhaben könnte ... habe ich es ernst gemeint. Es würde tatsächlich eine einzelne Aufgabe verarbeiten ... dann pausierte sie diese Aufgabe ... nahm eine andere Aufgabe ... vervollständigte sie, wenn es eine kurze ist, oder pausierte sie erneut und fügte sie der Warteschlange hinzu ... dann die nächste. Aber diese "Pause", die ich erwähnt habe, war so klein (ca. 1ns), dass Sie nicht verstanden haben, dass die Aufgabe angehalten wurde. Z.B. Während der Musikwiedergabe auf vlc laufen andere Apps gleichzeitig, aber wie ich Ihnen gesagt habe ... ein Programm zu einem Zeitpunkt ... also pausiert die vlc tatsächlich für ns, so dass Sie nicht untergehen und die Musik tatsächlich stoppt zwischen.

Aber es ging um die alten Prozessoren ...

Heutige Prozessoren, z. B. PCs der dritten Generation, verfügen über mehrkernige Prozessoren. Jetzt können die "Kerne" mit einem Prozessor der 1. oder 2. Generation selbst verglichen werden ... eingebettet in einen einzelnen Chip, einen einzelnen Prozessor. Nun haben wir verstanden, was Kerne sind, dh Mini-Prozessoren, die sich zu einem Prozessor zusammenfügen. Und jeder Kern kann jeweils einen einzelnen Prozess oder mehrere für das Betriebssystem vorgesehene Multi-Threads verarbeiten. Und sie folgen den gleichen Schritten, die ich oben für den einzelnen Prozessor erwähnt habe. 

Z.B. Ein i7 6gen-Prozessor verfügt über 8 Kerne ... dh 8 Mini-Prozessoren in 1 i7 ... dh die Geschwindigkeit ist 8-fach so hoch wie bei den alten Prozessoren. Und so kann Multitasking durchgeführt werden.

Es könnten hunderte von Kernen in einem einzigen Prozessor vorhanden seinEg. Intel i128.

Ich hoffe, ich habe das gut erklärt.

2

Intels Bild ist hilfreich, wie Tortugas beste Antwort zeigt. Hier ist eine Beschriftung dafür.

Prozessor : Ein Halbleiterchip, die CPU (Central Processing Unit) in einer Steckdose, ca. 1950er-2010er Jahre. Im Laufe der Zeit wurden mehr Funktionen auf den CPU-Chip gepackt. Vor den Releases der Single-Chip-Prozessoren der 1950er Jahre hatte sich ein Prozessor möglicherweise auf mehrere Chips verteilt. In der Mitte der 2010er-Jahre machten es die Chipsatz-Chips auf dem Chip ein wenig einfacher, einen Prozessor mit einem Chip gleichzusetzen, obwohl dies in der Regel unter Prozessor verstanden wird, wie in "Dieser Computer hat einen i7-Prozessor" oder "Dieses Computersystem" hat vier Prozessoren. "

Core : Ein Block einer CPU, der jeweils eine Anweisung ausführt. (Sie werden feststellen, dass die Leute einen Befehl pro Taktzyklus sagen, aber einige CPUs verwenden mehrere Taktzyklen für einige Befehle.) 

0
Bennett Brown