TweakPC



Intel Pentium 4 3,06 GHz mit Hyperthreading

/Hardware/CPU

Was ist Hyper-Threading?

Aus eins mach zwei !

Nun gibt es an dem Dual- oder Multiprozessor System auch einen kleine Haken. Man muss zwei Prozessoren haben und das geht auf den Geldbeutel. Außerdem ist die Anzahl der Anwendungen, die wirklich ein Dual-Prozessor System vollständig ausnutzen noch eher gering. Wie gesagt handelt es sich hierbei hauptsächlich um Programme aus der Grafikabteilung, die immer wiederkehrende mathematische Berechnungen durchführen (Rendering, MPEG-Kompression, etc.) Nicht gerade "Allerwelts-Applikationen". Die Kosten für ein solches System lohnen also nicht unbedingt. Vor allem dann, wenn man jeden der zwei Prozessoren nur zu 50% auslasten würde.

Es gibt allerdings noch den Aspekt, den wir zu Beginn schon einmal erwähnt hatten. Der Prozessor in einem System wird nur selten wirklich zu 100% ausgelastet. Es gibt immer wieder einmal Phasen, in denen der Prozessor quasi wartet, Ressourcen also ungenutzt bleiben.

Man müsste also einen Weg finden, den Prozessor wirklich zu 100% auszulasten. Sollte es wirklich einmal Wartezeiten geben, in denen der Prozessor nicht an einem Thread weiterarbeiten kann, so sollte er in dieser Zeit möglichst sofort Arbeiten an einem Thread übernehmen.

Die Idee beim Hyper-Threading ist nun die Ressourcen eines einzigen Prozessors so zu nutzen, dass er in der Lage ist mehrere Threads, wenn auch mit Einschränkungen, simultan zu bearbeiten. Dazu wird der Prozessor in zwei virtuelle Prozessoren aufgeteilt. Um dies zu erreichen gibt es in solch einem Prozessor eine architecture state (Umsetz-Einheit) für jeden virtuellen Prozessor. Diese teilen sich aber eine einzige Ausführungseinheit (physical execution resource). Die Umsetz-Einheit inklusive aller Register (general-purpose registers, control registersund, machine state registers) und  APIC (advanced programmable interrupt controller) ist also doppelt vorhanden. Die nur einmal vorhandenen Ressourcen der CPU werden so gleichmäßig auf die beiden Umsetz-Einheiten verteilt. Sollte eine der Einheiten einmal keine Ressourcen benötigen, so werden diese in einigen Fällen komplett der anderen zur Verfügung gestellt. Teilweise darf eine Einheit aber auch nur maximal die Hälfte der vorhandenen Ressourcen nutzen. Dennoch ist weitgehend gewährleistet, dass beide Einheiten "gleichberechtigt" sind und zusätzlich eine der anderen nicht unnötig Ressourcen "stehlen" kann. Wenn also nur eine virtuelle CPU benutzt wird ist der Prozessor nahezu genauso schnell wie ein normaler Prozessor ohne Hyper-Threading.

Das Interessante an dieser Technik ist, dass die Anzahl der Transistoren, die benötigt werden um die Umsetz-Einheit aufzubauen, im Vergleich zum Gesamtprozessor extrem klein ist (nur ca. 5% des Prozessors), da sich diese alle anderen Einheiten auf dem Prozessor wie Cache, Ausführungseinheit, Sprungvorhersage, Control-Logik und Busse teilen. Oder anders ausgedrückt, die Steigerung der Herstellungskosten ist minimal.

Aus Prozessorsicht bedeutet dies nun, das Kommandos der virtuellen Prozessoren fortdauernd und simultan auf einer gemeinsamen Ausführungseinheit ausgeführt werden. Aus Softwaresicht sind aber zwei Prozessoren vorhanden, die von Programmen parallel genutzt werden können. Die Software denkt also sie hätte ein Dual Prozessor System vor sich.

Wer sich gerne komplett in die Tiefen der Prozessortechnik einlesen möchte, was sicherlich nur wenige möchten, der kann dies direkt in den speziellen Intel Veröffentlichungen tun. Der Umfang der Erläuterungen würde hier den Rahmen sprengen.

Die Intel Webseite über den neuen Pentium 4 mit HT findet man unter:

Intel Pentium 4 Prozessor 3,06 GHz mit HT-Technologie

Dort kann man übrigens auch gleich einen Dell Komplett-PC mit dem neuen Prozessor gewinnen.

Detailinformationen zu Hyper-Threading findet man auf folgenden Seiten

Hyper-Threading Technology Architecture and Microarchitecture
PDF - Hyper-Threading Technology
 

Nächste Seite: Vorraussetzungen
 

ueber TweakPC: Impressum, Datenschutz Copyright 1999-2024 TweakPC, Alle Rechte vorbehalten, all rights reserved. Mit * gekennzeichnete Links sind Affiliates.