AM Drücker

AMDs 5K86-Prozessor (K5)

Wissen | Hintergrund

Lang, sehr lang hat es gedauert, und fast wär AMD die Luft ausgegangen, doch nun ist er anders als Godot doch noch gekommen: der K5. Zwar noch mit einigen Designschwächen und zunächst nur mit 75 und 90 MHz Takt, aber immerhin. Während Cyrix Intel werbewirksam von oben attackiert mit dem 'schnellster Windows-Prozessor',will AMD mit attraktiven Preisen den Markt von unten her aufrollen.

Sollte sich die AMD-Roadmap verwirklichen, wird spätestens im Herbst die richtige Offensive im Mainstream-Bereich (derzeit 133 MHz) beginnen. Nebenbei verkauft sich der kleine K5-Bruder, der 5x86, noch erstaunlich gut - der 486-Markt ist offenbar so tot noch nicht. Immerhin kann sich der 5x86-133 mit den 75-MHz-Typen (ob Pentium oder 5K86) durchaus messen. Doch allmählich wird es höchste Zeit, daß AMD bei der fünften Generation Fuß fäßt.

Leider hat der AMD5K86 das ursprüngliche Planziel nicht erreicht, sollte er doch 30 Prozent schneller sein als ein gleichschnell getakteter Pentium. Doch der jetzige K5 kommt trotz doppelt so großem Instruktions-Cache nur etwa auf die gleiche Performance. Aus 'Scham' wollte man ihn daher erst gar nicht als K5 bezeichnen, sondern als SSA-5. Im Inneren arbeitet aber der Original-K5-Kern. Vermutlich sind noch Abstimmungsprobleme zwischen diesem Kern und den Caches (siehe weiter unter) für die 'verlorenen' 30 Prozent verantwortlich. Spätere K5-Versionen sollen das Problem beheben . möglicherweise ist dann aber schon der deutlich leistungsfähigere K6 (NexGens 6x86) marktreif - der ebenfalls um den P54C-Sockel buhlt - so daß sich neuere K5-Versionen erübrigen.

Wir testeten den 5K86 mit 75 MHz (50 MHz Systemtakt) in einem aktuellen Board (PA2002) von FIC mit VIA-Apollo-Chipsatz. Das BIOS loggt den AMD-Prozessor schon richtig ein und zeigt ihn mit MHz-Angabe und P-Rating an. (P-Rating ist ja der Vergleichswert zum Pentium auf Basis des Winstone-96-Benchmarks). Im gleichen Board mit gleicher Peripherie mußte er sich mit dem herausgeforderten Pentium-75 messen. Außer Konkurrenz haben wir auch einen Cyrix 6x86 im selben System getestet, das auch diesen Prozessor korrekt erkennt und initialisiert. Außer Konkurrenz deshalb, weil der Cyrix-Prozessor keinen 3:2-Takt kennt und daher bei extern 50 MHz minimal intern mit 100 MHz (mit P-Rating p120+) läuft. So spielt schon der kleinste Vertreter der Cyrix-Gilde in einer anderen Liga; ein fairer Vergleich wird erst dann möglich, wenn AMD den Aufstieg zu den zwei- und dreifach getakteten Oberligen geschafft hat.

Der aktuelle 75-MHz-AMD5K86 meldet sich im CPUID als Mitglied der Familie 5, Modell 0, Step 0. Er muß nicht besonders initialisiert werden und sollte in üblichen Pentium-Boards problemlos losstarten (wir haben das im Asus T2P4-Board verifiziert, eine ausführliche Board-Kompatibilität ist für die nächste c't vorgesehen). Probleme mit der Stromversorgung hat er - anders als Cyrix - auch nicht, er schluckt nur ungefähr soviel wie der Pentium.

Unsere Messungen belegen, daß AMD vorsichtshalber sogar etwas tiefstapelt. Unter Windows 3.11 ergibt nicht nur der fürs P-Rating herangezogene Winstone-Benchmark, sondern auch die vom Konkurrenten Intel mitgestaltete BAPCo95, daß die beiden Kontrahenten bei 75 MHz gleichwertig sind. Klammert man den fließkommaintensiven Grafik-Benchmark aus (Sysint-Wert), hat der AMD-Chip sogar knapp die Nase vorn.

Unter DOS liegt AMD ebenfalls bei den meisten Benchmarks in Führung, beim MASM-Bench sogar um gut 30 Prozent. In der reinen Integer-Rechenperformance (HLPAS-Int) kann er einen Vorsprung von 50 Prozent verbuchen, da er Integer erheblich schneller multiplizieren kann als der Pentium (drei Takte statt derer 11 beim Pentium). Die Integer-Multiplikation wird übrigens intern nicht von einer speziellen Integer-Unit durchgeführt, vielmehr erfüllt die Fließkomma-Einheit (FPU) diese Aufgabe - praktisch, da hier ja eh ein Multiplizierer vorhanden ist.

In 32-Bit-Umgebungen fühlt der 5K86 noch wohler und kann unter Linux 20 Prozent und unter NT gut zehn Prozent an Boden gutmachen. Das variiert allerdings von Applikation zu Applikation, so ist er bei einem BAPCo-NT-Bench (Powerpoint) um sechs Prozent langsamer, um bei einem anderen (Maxeda) gleich um 30 Prozent schneller zu sein.

32-Bit-User profitieren somit offenbar vom P-Rating. Wenn sie demnächst ein AMD5K86-p133 erwerben, dürfte dieser im Linux/NT-Umfeld etwa einem Pentium-166 entsprechen, der nach unseren Messungen etwa 12 Prozent schneller als ein 133-MHz-Typ ist.

Die Fließkommaleistung des 5K86 hängt sehr davon ab, ob man es vornehmlich mit Grundrechenarten zu tun hat oder mit trigonometrischen und logarithmischen Aufgaben. Im ersten Fall sind AMD/Intel etwa gleichauf (HLPAS Real). Da der 5K86 besser parallelisieren kann, schafft er das fließkommaintensive c't-Apfelmännchen - läuft ohne Grafikausgabe fast nur innerhalb der FPU-Register - knapp 30 Prozent schneller als der Pentium.

Die Algorithmen für die transzendenten Funktionen sind demgegenüber von AMD etwas vernachlässigt worden. Hier hängt der Pentium den Neuling glatt um den Faktor zwei ab.

Der Cache des 5K86 erwies sich in unseren Low-Level-Messungen als ziemlich 'eigensinnig'. Die c't-Meßsoftware ctcm kam zunächst gar nicht mit dem Neuling zurecht. Die neue Version 1.5b blieb gar ganz hängen, da sie bei einem Prozessor der Familie 5 mit 'Model Specific Registern' (Bit 5 in den Feature-Flags des CPU-ID-Befehls) das vom Pentium angebotene Performance-Monitoring nutzen möchte. Der AMD 5K86 hat zwar auch maschinenspezifische Register, die aber bis auf den Timer (auslesbar mit dem Befehl RDTSC) andere Bedeutungen haben und daher zu einem Protection-Fault führen.

Das ließ sich noch leicht beheben, zwei andere 'Abweichungen' sorgen hingegen für reichlich Kopfzerbrechen.

Wie der Pentium auch, hat der AMD5K86 getrennte Instruktions- und Daten-Caches. Da in der Intel-Welt selbstmodifizierender Code verbreitet ist (bei RISC ist das schlichtweg verboten), ist viel Sorgfalt vonnöten, damit der Instruktions-Cache (I-Cache) dennoch immer konsistent bleibt. Beschreibt man ein Datum, das sich als Code im I-Cache befindet, muß der Prozessor mitlauschen (internal Snooping) und die entsprechende Zeile im I-Cache invalidieren. Nichts spricht jedoch dagegen, daß man ein Datum lediglich liest, welches sich auch im Code-Cache befindet. Der 5K86 reagiert unverständlicherweise darauf allergisch, er weigert sich, dieses Datum in den D-Cache zu laden und führt den Zugriff furchtbar langsam als 'Non Cacheable Read' aus.

Dieses Verhalten hat die c't-Meßsoftware nicht erwartet (gab's bislang auch nie), so daß die ermittelten Transferraten für den L1-Cache erheblich zu niedrig sind. Auch dieses Hindernis läßt sich beheben, mit WBINVD kann man die Caches löschen, so daß alte Code-Reste nicht mehr beim Lesen von Daten stören. Doch es gibt noch eine weitere Hürde: die ungewöhnliche Replacement-Strategie. Die bisherige Prozessoren mit mehrfachassoziativen Caches benutzten einen sogenannten LRU-Algorithmus (Least Recently Used), welcher nach der Reihenfolge der letzten Zugriffe denjenigen Kandidaten bestimmt, der aus dem Cache zu enfernen ist.

Nicht so beim AMD5K86, er bedient sich einer 'Pseudo Random Replacement Policy'. Gegenüber LRU spart man hiermit pro Eintrag zwei Bits ein, doch das wird wohl kaum der Grund sein, warum AMD diese Policy ausgewählt hat. Möglicherweise ist sie für das P-Rating von Vorteil, sie ist jedoch ein Graus für jedwede reproduzierbare Messung.

Mit viel Mühe ließ sich dann doch noch die L1-Performance des AMD-Prozessors ermitteln. Er erreicht im besten Fall knapp 150 MByte/s, also zwei Takte pro transferiertem Dword. Der Pentium hat hier seine große Stärke, er schafft es bei passender Adreßlage in nur einem Takt, also mit 300 MByte pro Sekunde. Gemittelt über verschiedene Adressen liegen beide näher zusammen, AMD: 140 MByte/s und Pentium 257 MByte/s. Bei Zugriffen auf den L2-Cache und Hauptspeicher sind beide nahezu gleichschnell. Goodies, wie sie der Cyrix-6x86 aufweist (Byte-Gathering, Fill-on Write miss, [2]), haben sie nicht, dafür aber auch nicht das Problem mit dem patentierten Burst (siehe 'Burst-Reihenfolge').

Mit dem AMD5K86-75 konnte AMD unter Beweis stellen, daß sie in der Lage sind, einen lauf- und konkurrenzfähigen Pentium-Kontrahenten auf die Beine zu stellen - auch wenn sich damit trotz günstigem Preis (67 US-$ à 1000) noch kein großer Markterfolg einstellen wird. Schafft es AMD jedoch in diesem Jahr, in den Taktraten noch mächtig nachzulegen, so bekommt Intel allmählich wirklich Druck - dann aber nicht nur 'von unten', sondern im Hauptgeschäft, hart attackiert von AMD und Cyrix. AMD hat dabei noch den Vorteil, über eigene Chip-Fabriken zu verfügen, in denen schon jetzt erfolgreich die 0,35-m-Technologie zum Einsatz kommt. Ein spannender Herbst kündigt sich an. (as)

[1] AMD5K86 Processor Technical Reference Manual, Ban-4M-3/96-0, 18524B

Anzeige
Anzeige