Update: Multi-Core-CPU

Multi-Core bedeutet, dass in einem Prozessor mehrere Prozessor-Kerne eingebaut sind. Man bezeichnet diese Prozessoren als Multi-Core- oder Mehrkern-Prozessoren.

Eine Alternative zu immer höheren Taktraten sind mehrere Rechenkerne. Das bedeutet mehr Leistung bei gleichzeitig geringerer Leistungsaufnahme.

Grundsätzlich kann man die Rechenleistung mehrerer Kerne nicht „addieren“. Das würde voraussetzen, dass sich die vorliegenden Rechenaufgaben parallelisieren lassen.


Update: Multicore-Prozessor

Vom Takt-orientierten Prozessor zum Mehr-Kern-Prozessor

Prozessoren mit mehr als zwei Kernen haben es jedoch schwer sich bei der normalen Nutzung zu beweisen. Denn mehr als zwei Kerne bedarf Anwendungen, die ihre Berechnungen selber auf mehrere Prozessorkerne verteilen können. Während ein Dualcore-Prozessor noch durch das Betriebssystem bedient wird, bedarf es bei mehr als zwei Kernen die Unterstützung durch die Anwendungen.

Zwei oder mehr Prozessorkerne in einem Prozessor unterzubringen ist in etwa so, wie in ein Auto mehrere Motoren einzubauen. Ob das Sinn macht, hängt eben stark von der Nutzung und Anwendung ab. Wer nur in der Stadt herum fährt wird nie die Leistung von zwei Motoren brauchen.


Update: Virtualisierung

Virtualisierung ist eine Hardware-Unterstützung, die den Betrieb virtueller Computer auf einem Computer erleichtert oder beschleunigt. Mit der Virtualisierung kann man mehrere Software-Systeme auf einer Hardware laufen lassen. Das können zum Beispiel unterschiedliche Betriebssysteme sein. Virtualisierung macht dann Sinn, wenn ein Hardware-System nicht ausgelastet ist und die Ressourcen parallel für andere Systeme genutzt werden sollen.


Parallelisierung

Die Entwickler von Prozessoren haben im Laufe der Zeit festgestellt, dass sich die Verarbeitungsgeschwindigkeit eines Prozessors nicht nur durch die Erhöhung der Taktrate beschleunigen lässt.

So kommt es bei der Abarbeitung des Programmcodes immer wieder zu Verzögerungen. Zum Beispiel beim Zugriff auf den Speicher oder die Peripherie. In so einem Fall ist der Prozessor mit Warten beschäftigt. Er macht erst dann im Programmcode weiter, wenn die Daten aus dem Speicher oder von der Peripherie in die Register geladen wurde. Diese Wartezeit führt dazu, dass ein Großteil der zur Verfügung stehenden Rechenleistung überhaupt nicht genutzt wird.

Deshalb haben sich die Prozessor-Entwickler schon sehr früh überlegt, wie sie einen Prozessor intern so strukturieren müssen, dass er im Programmcode weitermachen kann, während Daten von außen geladen werden. Das hat dazu geführt, dass moderne Prozessoren die anstehenden Aufgaben auf viele parallel arbeitende Einheiten verteilen.