Anonim

Als Personal Computer erfunden wurden, stand ihre Zentraleinheit (CPU) allein und hatte nur einen Prozessorkern. Der Prozessor selbst war der Kern; Die Idee, einen Mehrkernprozessor zu haben, war bisher unbekannt. Heutzutage ist es nicht ungewöhnlich, Computer, Telefone und andere Geräte mit mehreren Kernen zu sehen - tatsächlich hat so ziemlich jeder im Handel erhältliche Computer jeglicher Art mehrere Kerne. Diese Kerne befinden sich in derselben CPU oder Zentraleinheit.

Es ist ein großer Vorteil, mehrere Kerne zu haben. Mit nur einem Kern kann ein Computer immer nur eine Aufgabe gleichzeitig bearbeiten und muss eine Aufgabe abschließen, bevor er auf eine andere wechselt. Mit mehr Kernen kann ein Computer jedoch mehrere Aufgaben gleichzeitig ausführen. Dies ist besonders nützlich für diejenigen, die viel Multitasking betreiben.

Bevor wir uns genauer mit der Funktionsweise von Multi-Core-Prozessoren befassen, ist es wichtig, ein wenig über den Hintergrund der Verarbeitungstechnologie zu sprechen. Anschließend werden wir uns mit der Funktionsweise von Multi-Core-Prozessoren befassen.

Einige Geschichten

Bevor Prozessoren mit mehreren Kernen gebaut wurden, versuchten Personen und Unternehmen wie Intel und AMD, Computer mit mehreren CPUs zu bauen. Dies bedeutete, dass ein Motherboard mit mehr als einem CPU-Sockel benötigt wurde. Dies war nicht nur aufgrund der für einen anderen CPU-Sockel erforderlichen physischen Hardware teurer, sondern auch aufgrund der erhöhten Kommunikation, die zwischen den beiden Prozessoren stattfinden musste, länger. Ein Motherboard musste die Daten auf zwei völlig getrennte Stellen in einem Computer aufteilen, anstatt sie einfach alle an den Prozessor zu senden. Physische Distanz bedeutet in der Tat, dass ein Prozess langsamer ist. Wenn Sie diese Prozesse mit mehreren Kernen auf einen einzigen Chip übertragen, haben Sie nicht nur eine geringere Entfernung, sondern auch die Möglichkeit, Ressourcen für besonders schwere Aufgaben gemeinsam zu nutzen. Beispielsweise wurden die Intel Pentium II- und Pentium III-Chips in Versionen mit zwei Prozessoren auf einem Motherboard implementiert.

Nach einer Weile mussten Prozessoren leistungsfähiger werden, und die Computerhersteller entwickelten das Konzept des Hyper-Threading. Das Konzept selbst stammte von Intel und wurde erstmals 2002 auf den Xeon-Serverprozessoren des Unternehmens und später auf den Pentium 4-Desktopprozessoren entwickelt. Hyper-Threading wird bis heute in Prozessoren verwendet und ist sogar der Hauptunterschied zwischen den i5-Chips von Intel und den i7-Chips. Grundsätzlich wird die Tatsache ausgenutzt, dass ein Prozessor häufig ungenutzte Ressourcen enthält, insbesondere wenn Aufgaben nicht viel Rechenleistung erfordern, die für andere Programme verwendet werden könnten. Ein Prozessor, der Hyper-Threading verwendet, präsentiert sich einem Betriebssystem grundsätzlich so, als ob er zwei Kerne hätte. Natürlich hat es nicht wirklich zwei Kerne, aber für zwei Programme, die die Hälfte der verfügbaren Rechenleistung oder weniger verbrauchen, können es auch zwei Kerne sein, da sie zusammen die gesamte Leistung des Computers nutzen können Prozessor hat zu bieten. Hyper-Threading ist jedoch etwas langsamer als ein Prozessor mit zwei Kernen, wenn nicht genügend Rechenleistung zur Verfügung steht, um die beiden Programme, die den Kern verwenden, gemeinsam zu nutzen.

Hier finden Sie ein aufschlussreiches Video mit einer kurzen, detaillierteren Erläuterung des Hyper-Threading.

Multi-Prozessoren

Nach langem Experimentieren konnten endlich CPUs mit mehreren Kernen gebaut werden. Dies bedeutete, dass ein einzelner Prozessor im Grunde mehr als eine Prozessoreinheit hatte. Ein Dual-Core-Prozessor verfügt beispielsweise über zwei Verarbeitungseinheiten, ein Quad-Core-Prozessor über vier usw.

Warum entwickelten Unternehmen Prozessoren mit mehreren Kernen? Nun, der Bedarf an schnelleren Prozessoren wurde immer offensichtlicher, jedoch verlangsamten sich die Entwicklungen bei Einkernprozessoren. Von den 1980er bis 2000er Jahren konnten die Ingenieure die Verarbeitungsgeschwindigkeit von mehreren Megahertz auf mehrere Gigahertz steigern. Unternehmen wie Intel und AMD haben dazu die Größe der Transistoren verringert, wodurch mehr Transistoren auf der gleichen Fläche Platz fanden und die Leistung verbessert wurde.

Aufgrund der Tatsache, dass die Prozessortaktrate sehr stark davon abhängt, wie viele Transistoren auf einen Chip passen, verlangsamte sich mit dem Verlangsamen der Transistorschrumpftechnologie auch die Entwicklung höherer Prozessortaktraten. Während dies nicht der Fall war, als Unternehmen zum ersten Mal über Multi-Core-Prozessoren Bescheid wussten, begann das Experimentieren mit Multi-Core-Prozessoren für kommerzielle Zwecke. Während Multi-Core-Prozessoren Mitte der 1980er Jahre zum ersten Mal entwickelt wurden, wurden sie für große Unternehmen entwickelt und erst dann wirklich überarbeitet, wenn die Single-Core-Technologie langsamer wurde. Der erste Mehrkernprozessor wurde von Rockwell International entwickelt und war eine Version des 6501-Chips mit zwei 6502-Prozessoren auf einem Chip (weitere Informationen finden Sie hier in diesem Wikipedia-Eintrag).

Was macht ein Multi-Core-Prozessor?

Nun, es ist wirklich alles ziemlich einfach. Mit mehreren Kernen können mehrere Dinge gleichzeitig erledigt werden. Wenn Sie beispielsweise an E-Mails arbeiten, einen Internetbrowser geöffnet haben, an einer Excel-Tabelle arbeiten und in iTunes Musik hören, kann ein Quad-Core-Prozessor all diese Aufgaben gleichzeitig ausführen. Wenn ein Benutzer eine Aufgabe hat, die sofort erledigt werden muss, kann sie in kleinere, leichter zu verarbeitende Aufgaben aufgeteilt werden.

Die Verwendung mehrerer Kerne ist nicht nur auf mehrere Programme beschränkt. Beispielsweise rendert Google Chrome jede neue Seite mit einem anderen Prozess, sodass mehrere Kerne gleichzeitig genutzt werden können. Bei einigen Programmen handelt es sich jedoch um Single-Thread-Programme. Dies bedeutet, dass sie nicht für die Verwendung mehrerer Kerne geschrieben wurden und dies daher nicht können. Hier kommt erneut Hyper-Threading ins Spiel, sodass Chrome mehrere Seiten an zwei „logische Kerne“ auf einem tatsächlichen Kern senden kann.

Das Zusammenspiel von Multi-Core-Prozessoren und Hyper-Threading wird als Multithreading bezeichnet. Multithreading ist im Wesentlichen die Fähigkeit eines Betriebssystems, mehrere Kerne zu nutzen, indem Code in seine grundlegendste Form oder Threads aufgeteilt und gleichzeitig an verschiedene Kerne weitergeleitet wird. Dies ist natürlich sowohl bei Multiprozessoren als auch bei Multi-Core-Prozessoren wichtig. Multithreading ist etwas komplizierter als es sich anhört, da Betriebssysteme Code so ordnen müssen, dass das Programm weiterhin effizient ausgeführt werden kann.

Betriebssysteme selbst machen ähnliche Dinge mit ihren eigenen Prozessen - es ist nicht nur auf Anwendungen beschränkt. Betriebssystemprozesse sind Dinge, die das Betriebssystem immer im Hintergrund ausführt, ohne dass der Benutzer es unbedingt weiß. Aufgrund der Tatsache, dass diese Prozesse immer ablaufen, kann Hyper-Threading und / oder das Vorhandensein mehrerer Kerne sehr hilfreich sein, da der Prozessor dadurch in der Lage ist, an anderen Dingen wie dem, was in Apps geschieht, zu arbeiten.

Wie funktionieren Multi-Core-Prozessoren?

Zunächst müssen das Motherboard und das Betriebssystem den Prozessor erkennen und sicherstellen, dass mehrere Kerne vorhanden sind. Ältere Computer hatten nur einen Kern, sodass ein älteres Betriebssystem möglicherweise nicht gut funktioniert, wenn ein Benutzer versucht, es auf einem neueren Computer mit mehreren Kernen zu installieren. Windows 95 unterstützt beispielsweise kein Hyper-Threading oder mehrere Kerne. Alle neueren Betriebssysteme unterstützen Multi-Core-Prozessoren, einschließlich Windows 7, 8, 10 und Apples OS X 10.10.

Grundsätzlich teilt das Betriebssystem dem Motherboard dann mit, dass ein Prozess durchgeführt werden muss. Das Motherboard teilt dem Prozessor dann mit. In einem Multi-Core-Prozessor kann das Betriebssystem den Prozessor anweisen, mehrere Dinge gleichzeitig auszuführen. Im Wesentlichen werden Daten durch die Richtung des Betriebssystems von der Festplatte oder dem RAM über die Hauptplatine zum Prozessor übertragen.

Multi-Core-Prozessor

Innerhalb eines Prozessors gibt es mehrere Ebenen des Cache-Speichers, die Daten für die nächste Operation oder Operationen des Prozessors enthalten. Diese Ebenen des Cache-Speichers stellen sicher, dass der Prozessor nicht lange suchen muss, um den nächsten Prozess zu finden, was viel Zeit spart. Die erste Ebene des Cache-Speichers ist der L1-Cache. Wenn der Prozessor die Daten, die er für seinen nächsten Prozess benötigt, nicht im L1-Cache finden kann, sucht er im L2-Cache. Der L2-Cache ist im Speicher größer, aber langsamer als der L1-Cache.

Single Core Prozessor

Wenn ein Prozessor nicht finden kann, wonach er im L2-Cache sucht, geht er weiter bis L3, und wenn ein Prozessor es hat, L4. Danach wird im Hauptspeicher oder im RAM eines Computers gesucht.

Es gibt auch verschiedene Arten, wie verschiedene Prozessoren mit den unterschiedlichen Caches umgehen. Einige duplizieren beispielsweise die Daten im L1-Cache im L2-Cache, um sicherzustellen, dass der Prozessor das findet, wonach er sucht. Dies belegt natürlich mehr Speicher im L2-Cache.

Bei Multi-Core-Prozessoren spielen auch unterschiedliche Cache-Ebenen eine Rolle. Normalerweise hat jeder Kern seinen eigenen L1-Cache, aber er teilt sich den L2-Cache. Dies unterscheidet sich von der Verwendung mehrerer Prozessoren, da jeder Prozessor über einen eigenen L1-, L2- und einen Cache auf einer anderen Ebene verfügt. Bei mehreren Single-Core-Prozessoren ist eine gemeinsame Cache-Nutzung einfach nicht möglich. Einer der Hauptvorteile eines gemeinsam genutzten Caches ist die Möglichkeit, einen Cache in vollem Umfang zu nutzen, da der andere den Cache nicht nutzt, wenn der eine Kern dies tut.

Bei einem Multi-Core-Prozessor kann ein Core bei der Suche nach Daten seinen eigenen eindeutigen L1-Cache durchsuchen und verzweigt dann zum gemeinsam genutzten L2-Cache, zum RAM und schließlich zur Festplatte.

Es ist wahrscheinlich, dass wir weiterhin die Entwicklung weiterer Kerne sehen werden. Die Taktraten des Prozessors werden sicherlich weiter steigen, wenn auch langsamer als zuvor. Während es heute nicht ungewöhnlich ist, Octa-Core-Prozessoren in Dingen wie Smartphones zu sehen, konnten wir schon bald Prozessoren mit Dutzenden von Kernen sehen.

Wie geht es Ihrer Meinung nach mit der Multi-Core-Verarbeitungstechnologie weiter? Lass es uns in den Kommentaren unten wissen oder indem du einen neuen Thread in unserem Community-Forum startest.

Alles über Multi-Core-Prozessoren: Was sie sind, wie sie funktionieren und woher sie kommen