Elf CPUs von Athlon bis Phenom im Test: Vier Kerne für ein Halleluja?
5/32Das TLB-Dilemma
Kein Wort, vielmehr nur ein Kürzel, sorgte seit dem Start des neuen Prozessors für mehr Aufsehen: TLB. Genauer gesagt ist die Rede vom „TLB-Erratum 298“. Dies ist ein Fehler in der Speicherverwaltung des Prozessors, der zu Datenverlusten führen kann. Traditionell wird in einem Prozessor jede angeforderte virtuelle Adresse zuerst durch die „Memory Management Unit“ in eine physische Adresse umgerechnet, bevor sie auf den Adressbus geschrieben wird. Die MMU verfügt über spezielle Cache-Speicher, den Translation Lookaside Buffer (TLB), welcher jeweils die letzten Adressübersetzungen in Form einer Tabelle abspeichert. Dabei wird die virtuelle (logische) Adresse in mehreren Arbeitsschritten zu einer meist baumartig organisierten Seitentabelle zur physischen Adresse umgerechnet. Dieser zeitintensive Vorgang wird aus Performancegründen im TLB gepuffert. Der TLB kann eine begrenzte Menge dieser Einträge halten und dadurch Ausführung von Speicherzugriffen deutlich beschleunigen. Durch den Fehler in diesem Bereich war AMD gezwungen, Teile davon komplett zu deaktivieren – der sogenannte TLB-Fix war geboren.
AMD hat nach dem Bekanntwerden des Fehlers die Auslieferung der Server-Prozessoren des Typs Opteron auf Basis des gleichen Barcelona-Kerns eingefroren, bis ein neues Stepping zur Verfügung steht, da dort dieser Fehler eher auftreten könnte als bei den Desktop-Modellen. Trotzdem hat AMD auch Mainboardherstellern der neuen Platinen eine Weisung mit auf den Weg gegeben, einen Fix in ihre Platinen zu integrieren, der das Problem behebt. Dies hat aber zur Folge, dass teilweise massive Einbrüche in der Performance zu sehen sind, während AMD großzügig von maximal 10 Prozent weniger Leistung spricht.
Ende Februar, der Artikel war eigentlich schon fertig, hat es AMD endlich geschafft, den Fehler offiziell in ihren Revisionsguide aufzunehmen. Seite 39 des besagten PDF-Dokuments zeigt die genaue Fehlerbeschreibung, die wir an der Stelle einfügen möchten. Wirklich schlauer ist man nach dem Lesen dieser Informationen aber auch nicht.
Das besagte Dokument offenbart zudem weitere kleine Fehler, die in einem kommenden Stepping behoben werden, was nicht zwangsläufig bedeutet, dass dies alles im B3-Stepping geschieht. So liefern die internen Sensoren der neuen Prozessoren widersprüchliche Temperaturwerte, so dass AMD sogar empfiehlt, diese nicht zu nutzen. Dieses Erratum 319 wiegt dabei sicherlich weniger schwer als der Fehler 309, der von Abstürzen unter bestimmten Bedingungen berichtet. All diese kleinen Fehler hat jedoch jeder Prozessor unabhängig des Herstellers, so dass wir darauf nicht näher eingehen. Interessierte finden das komplette Dokument zum AMD Phenom direkt bei AMD.
Das kleine Tool AMD OverDrive (AOD) erlaubt es, im laufenden Betrieb unter Windows den TLB-Fix auszuschalten. Als Status-Anzeige, aber auch als zu verstellendes Element dient dabei die kleine grüne Lampe in der rechten oberen Ecke. Ist diese lediglich grün, heißt es, dass der TLB-Patch initialisiert ist und das System „absolut sicher“ läuft. Wird die grüne Lampe jedoch von einer gelben Umrandung geschmückt, ist der TLB-Patch aus, was eine höhere Performance verspricht. Die dritte, rote Umrandung setzt zudem einige Register in einen schnelleren Modus, welches an besonderen Stellen noch einmal einige Prozent Leistungszuwachs versprechen soll. Da die Unterlagen und Beschreibung der drei Modi sehr zu wünschen übrig lassen, sind genaue Details leider Mangelware.
In den ersten Gehversuchen mit dem Tool wurde schnell klar, was dieses von den Mainboardeinstellungen im BIOS übernimmt. War der TLB-Fix im BIOS eingeschaltet, leuchtet in Windows die Lampe grün, war er aus wurde bei Start des Tools eine gelbe Umrandung gezeigt. Wollte man diesen aber in die eine oder andere Richtung zurückstellen, kam es zu merkwürdigen Ergebnissen. In der Praxis bedeutet dies, dass mit einem eingeschalteten TLB-Fix das System stabil lief und man diesen in Windows auch (theoretisch) ausschalten konnte. Nimmt man dieses aber in Angriff, kommen nicht die gleichen Ergebnisse zum Vorschein, als wenn man den TLB-Fix gleich im BIOS aus gelassen hätte. Auch anders herum zeigt sich ein ähnliches, manchmal aber auch skurriles Bild – TLB-Fix im BIOS aus, dann unter Windows an, ist manchmal nochmals leicht langsamer als eine Aktivierung direkt im BIOS, manchmal aber auch leicht schneller, wie die folgenden Diagramme zeigen. Dies mag ein Grund sein, warum das Tool von AMD seit Monaten immer noch im Beta-Status verharrt und vom Hersteller bisher nur über Dritt-Anbieter – selbst auch auf der eigenen Seite – publiziert wird.
Einige Testergebnisse wollen wir aber doch aufzeigen, in denen wir den „sicheren Modus“ von AMD nutzen. Dazu ist der TLB-Fix im BIOS eingeschaltet, alle anderen Optionen werden nur über OverDrive gesteuert. Parallel dazu zeigen wir aber gleich auch das Ergebnis auf, welches zustande kommt, wenn man den TLB-Fix ausschaltet und dann in OverDrive herumspielt.
Die Ergebnisse in den theoretischen Tests wie der Speicherlatenz von Sciencemark oder SiSoft Sandra sind zum Teil erschreckend. Wie stark der TLB-Bug doch einschränkt, ist am besten an den Latenzzeiten zu erkennen. Die Schwankungen von AOD werden aber wie bereit beschrieben auch noch einmal aufgezeigt. Zwar sind diese nicht besonders groß, Cinebench legt diese jedoch dar. Lässt man beispielsweise den TLB-Fix aus, schaltet ihn unter Windows dann aber ein, ist das System immer noch schneller, als wenn man den TLB-Fix im BIOS direkt einstellt. Eine Differenz von 200 Punkten im Multi-Core-Test von einem zum anderen Modus ist zwar kein hoher Prozentsatz, jedoch liegt er weitab, um als Schwankung im Messergebnis durchzugehen. Andererseits liefert Cinebench jedoch auch merkwürdige Ergebnisse. So ist der Single-Core-Test im grünen und gelben Modus gleich schnell, legt im roten Bereich aber um 200 Punkte zu. Parallel dazu ist der Multi-Core-Test in identischen Bedingungen nur im grünen Modus 200 Punkte langsamer, während der gelbe und rote Modus gleich schnell arbeiten. Ist der TLB-Fix bereits im BIOS festgelegt, lassen sich einige Anwendungen auch im gelben oder roten Modus nicht zu einer Leistungssteigerung bewegen, wie der Speichertest von Sandra eindrucksvoll unter Beweis stellt. Die Anwendung einer Software unter Windows, die die Hardware verändern soll, bleibt also in diesem Falle ein sehr zweischneidiges Schwert.
Zusammenfassend lässt sich deshalb sagen, dass der rote Modus durchweg der schnellste ist und an AMD OverDrive auf dem Weg zur maximalen Performance kaum ein Weg vorbei führen dürfte. Eine Variante bleibt aber weiterhin verfügbar, wenn man nicht so sehr auf Software im Beta-Status steht. Cool’n’Quiet einfach im BIOS deaktivieren und dazu den TLB-Fix ausschalten (sofern es denn möglich ist) – schon ist für die maximal mögliche Performance der Grundstein gelegt, da man sich auch ohne die Software AMD OverDrive ganz allein durch die hardwareseitigen Einstellungen durchweg auf Höhe des ersten und zweiten Platzes unseres Ratings bewegt.
In den letzten Tagen des Tests vermehrten sich die Meldungen in Foren, dass das Service Pack 1 für Windows Vista den TLB-Fix auf jeden Fall in Betrieb nimmt, egal was vorher im BIOS eingestellt wurde. Tests in der Redaktion können diese Einstellungen unter Windows Vista Ultimate x64 bestätigen. Der TLB-Fix kann mit dem Service Pack 1 nur mit AMD OverDrive in Windows direkt wieder zurückgeschaltet werden. Dadurch würde man in unserer Performance-Tabelle auf den dritten Platz abrutschen. An dieser Stelle können dann nur noch Einträge direkt in das Register helfen, was jedoch nur Profis empfohlen ist, oder das Warten auf das B3-Stepping, das diesen gesamten Abschnitt des Artikel ad acta legt. Wer genau wissen möchte, wie das Deaktivieren des TLB-Patches auch unter Vista mit dem SP1 gelingt, dem sei der ausführliche Bericht unserer Kollegen von Planet3DNow! ans Herz gelegt, der zeigt, wie mit dem Tool CrystalCPUID der Patch im Autostart von Windows Vista deaktiviert wird.
Northbridge-Takt & HT-Link
Der Unterschied in den einzelnen Phenom-Prozessoren liegt im Detail. Dieses ist zum einen für jedermann gleich sichtbar, zum Beispiel in Form der Taktfrequenz, steckt aber auch weitergehend in tieferen Gefilden. Die Versionen Phenom 9500 und 9600 besitzen eine Northbridge-Frequenz von 1,8 GHz. Genau diese Taktung schließt aber auch die Frequenz mit ein, mit der sowohl L3-Cache als auch der HyperTransport-Link (HT-Link) betrieben werden. Bei den Varianten ab 2,5 GHz, genauer gesagt bei den Modellen Phenom 9850 und 9950, wird dieser auf 2 GHz erhöht. Der Phenom 9750 wurde in letzter Sekunde auf den gleichen HT-Link von 1,8 GHz herunter gestuft, den die aktuellen Phenom 9500 und 9600 haben. Im Gegensatz dazu sollte ursprünglich der Phenom 9100e/9150 mit einem nochmals zurechtgestutzten HT-Link von 1,6 GHz arbeiten – die Frequenzen von Northbridge und L3-Cache natürlich inbegriffen. Dieses wurde jedoch am 26. März widerrufen – der Phenom 9100e wird wie fast alle anderen Modelle auch einen HT-Link von 1,8 GHz besitzen. Da dieser Abschnitt aber bereits fertig getestet und geschrieben war, wollen wir ihn nicht vorenthalten.
Um die Unterschiede zwischen den verschiedenen Taktfrequenzen der Northbridge und seiner zwei Verbündeten zu analysieren, haben wir einige Tests nur darauf bezogen durchgeführt. Als Grundlage dient ein Phenom mit 2,3 GHz, der im BIOS auf 1.600 MHz Northbridge und ebenfalls 1.600 MHz HT-Link getrimmt wird. Anders herum gestaltet sich das Ganze jedoch ein wenig schwieriger. Zwar kann man die Northbridge-Frequenz im BIOS auch auf 2.000 MHz anheben und dem HT-Link sagen, dass er dies übernehmen soll, jedoch ist dies nicht der Fall. Alle Anwendungen, die diese Daten in Windows auslesen können, bestätigen, dass lediglich der NB-Takt 2 GHz beträgt, während der HT-Link unabhängig davon weiter mit einem kleineren Multiplikator auf 1,8 GHz arbeitet – trotz eingestellter 2 GHz im BIOS. Abhilfe schafft an der Stelle aber das Tool AMD OverDrive, mit dem sich der HT-Link-Multiplikator auf 10 erhöhen lässt und so endlich die gewünschten 2 GHz zur Verfügung stehen.
Für den Nachweis haben wir aus jeder großen Kategorie in unserem Testfeld ein oder zwei Programme heraus gepickt und die Werte aufgenommen. Aus diesen Applikationen haben wir dann ein kleines Performancerating erstellt, um die Unterschiede zwischen den drei Varianten des Northbridge-Takts und dazu passender HT-Link-Frequenz zu ermitteln. Basierend auf den Tests 3DMark06, PCMark05, Cinebench R10, WinRAR, SuperPi, OGG, TMGEnc, Fear und Quake 4 kamen wir zu folgendem Ergebnis:
Dass es keinen Vorteil, insbesondere wenn man die Abweichung von 1.600 auf 2.000 MHz berücksichtigt, für eine schnellere Ansteuerung der Northbridge inklusive dem HT-Link gibt, wollen wir nicht behaupten. Jedoch fällt er prozentual sehr gering aus, dass man zu dem Schluss kommt, dass im alltäglichen Einsatz kein Unterschied bzw. Vor- oder Nachteil festzustellen ist. Da diese Änderungen so aber nie in Prozessoren mit gleichem Takt anzutreffen sind, bleiben dies theoretische Aussagen. Eine Ausnahme bildet dabei jedoch das Overclocking. Für das Übertakten ist der Punkt deshalb so interessant, da dort meist der HT-Link und auch die Northbridge-Frequenz zur Sicherheit lieber mit einigen MHz weniger an den Start gehen (sollten), um den Prozessor nicht zu beschädigen. Das kleine Rating liefert einmal mehr den Beweis, dass man in diesem Punkt auch weiterhin lieber auf Nummer sicher gehen kann/sollte und vor dem Übertakten, sei es mittels Erhöhung des Frontside-Bus oder Multiplikators, die beiden Frequenzen in der Nähe des Referenztakts belässt. Vielmehr sollte der Overclocker den Fokus auf die Speichereinstellungen und deren Modi Ganged bzw. Unganged legen, da dort deutlich mehr Potential zur Optimierung des eigenen Systems besteht und eine Beschädigung des Prozessors umgangen wird.