Auf dem Prüfstand: Prescott 2,8-3,2 GHz


Erschienen: 01.02.2004, Autor: Pascal Heller
Die neue Architektur

Mit dem Prescott hat Intel einige neue Verbesserungen eingebracht, beginnen wir hierbei bei dem von Intel erneut verbesserten Prefetch und Branch Predictor (Sprungvorhersage): Das schon seit längerem immer wieder verbesserte Feature wurde scheinbar nennenswert überholt und soll den Befehlsnachschub zur Recheneinheit steigern bzw. aufrecht erhalten, um schon vor dem Beendigen des Arbeitszyklus die Daten bereitzustellen, die am wahrscheinlichsten als nächstes benötigt werden. Dadurch kann eine größere Befehlsmenge abgearbeitet werden. Nötig wird das, da der Prescott eine nochmals um 11 Stufen erweiterte Pipeline bekam, die schon bei den Vorgängern eigentlich zu lang war, um ein effektives Takt/Leistungs-Verhältnis herzustellen. Die jetzt mit 31 Stufen extrem lange Pipeline bedeutet, dass der Takt zwar sehr leicht erhöht werden kann und auch sehr hohe Taktraten ohne Probleme fahrbar sind, doch werden die ersten Prescott Prozessoren mit 2,8 GHz und 3,0 GHz wohl mit den alten Northwood-Vorgängern zu kämpfen haben. Vor allem wenn keine Unterstützung der neuen Befehlserweiterungen besteht. Mehr zu den Benchmarks im Laufe des Artikels.

Auch beim erst vor weniger als etwa einem Jahr richtig bekannt gewordenen HyperThreading wurden Verbesserungen vorgenommen, die vor allem mit der Synchronisation beider Threads zusammenhängen. Hierfür hat man 2 neue Befehle hinzugefügt - MONITOR und MWAIT - die nur für die Synchronisation zuständig sind. Um zu verstehen, wieso diese Befehle von Nutzen sind, muss man etwas weiter ausholen: Durch HT laufen zwei Threads parallel und haben eigentliche differenzierte Aufgaben zu bewältigen. Es gibt aber genug Anwendungsgebiete und Szenarien bei denen die zwei Threads nicht unabhängig voneinader Arbeiten, sondern gegenseitig Daten des anderen Threads benötigen, was wiederrum heißt, dass der eine Thread wissen muss, wie weit die Berechnung des anderen Threads fortgeschritten ist. Im Fall, dass ein Thread schneller als der andere das zugewiesene Paket abarbeitet oder zwei Threads gleichzeitig auf Speicheradressen zugreifen, enstehen Probleme. Diese Probleme erfordern ein gewisses Umdenken in der Programmierung und macht es wie schon erwähnt, nötig Threads zu synchronisieren.

Möglich ist dies dadurch, dass man einen Thread in eine Warteschleife setzt, wobei der zweite Thread seine Aufgabe abarbeitet. Ist Thread 1 fertig, wird dem zweiten Thread über eine gesetzte Variable migeteilt, dass Thread 1 am Ende angekommen ist und Thread 2 wird aus seiner Warteschleife gerufen. Problem der vermeintlich so guten Lösung: HyperThreading Prozessoren haben nur virtuell zwei CPUs, die dem Programm zur Verfügung stehen, in Wirklichkeit teilen sich die zwei Threads aber immer die begrenzten Ressourcen. Somit wird Leistung verschwendet, indem einer der beiden Threads sinnlos Warterunden in einer Schleife rennt. Der Pause-Befehl des Northwood kann zwar einen Thread schlafen schicken, und somit dem anderen Thread die vollen Ressourcen bereitstellen, allerdings geht dies, um auf den Prescott zurückzukommen, noch deutlich besser.

Was steckt also hinter den zwei neuen Befehlen MWAIT und MONITOR? Durch den MONITOR-Befehl wird eine Speicheradresse von einem Thread gesetzt. Die Adresse wird überwacht während sich Thread 1 durch MWAIT abschaltet und somit keine Ressourcen verbrät. Somit kann Thread 2 wie im non-HT Betrieb frei arbeiten. Wird auf die von Thread 1 festgelegten Speicheradresse zugegriffen, erweckt sich Thread 1 wieder zum Leben, sprich die CPU arbeitet wieder HyperThreaded.

Eine andere interessante und gleichfalls sehr umstrittene Technologie, die für den Prescott als Erweiterung vorgesehen ist, dürfte für erneute Diskussionen sorgen. Die Rede ist von der La Grande Technology. Diese Erweiterung macht es möglich ein Programm völlig abzuschotten und damit einen sicheren Betrieb zu ermöglichen. Diese Idee dürfte den meisten als TCPA bekannt sein, welches Teils für viel Aufrur sorgte. La Grande bewirkt aber nicht nur einen sicheren Ablauf der Programme, sondern schützt Programme und deren Code gleichzeitig vor anderen Anwendungen. Dies wird ermöglicht, indem Programmcode in einem komplett abgetrennten CPU Teil abläuft und somit zur Runtime von keinem Programm verändert werden kann. Gerade bei bösartigen Programmen, deren Zugriff auf Programme unerwünscht ist, wird ein Riegel vorgeschoben, der auf Softwareebene nicht zu umgehen ist.

Da der TCPA-Gedanke von vielen Usern kategorisch und prinzipiell abgelehnt wird, sollte man erwähnen, dass zwar La Grande für den Prescott vorgesehen ist, aber solche Prescott-Modelle erstmal nicht in den Handel kommen werden. La Grande wird erst einige Zeit später in Prozessoren für den Endkunden erhältlich sein und auch dann keinesfalls Pflicht sein, sondern vielmehr freiwilllig zu Aktivieren und später auch wieder zu Deaktivieren sein. Somit dürfte die Sorge aller TCPA-Gegner nicht begründet sein, zumal La Grande vor allem für den Einsatz in Firmen PCs und im Geschäftsbereich entwickelt wurde, wo Sicherheit auf Hardwareebene großen Sinn macht.


Vor scrollenWeitere Artikel aus der Kategorie ProzessorenZurück scrollen
Bewerten Sie diesen Artikel!

Bewertung nur durch Mitglieder möglich!

Bewertungen: 337 (Ø 3,48)