Overclocking beim Athlon 64
2. Juli 2003 / von Leonidas / Seite 2 von 2
Und damit zum Speichertakt: Dieser ist wie bisher in gewissem Sinne abgekoppelt vom CPU-Takt - und dann in einem anderem Sinne wieder doch nicht :-). Doch der Reihe nach: Zuerst einmal hat der Speichertakt nichts mit dem vorgenannten Referenztakt zu tun und spielt auch in die Berechnung des CPU-Taktes nicht mit hinein. Allerdings spielt der CPU-Takt eine entscheidende Rolle für die Ermittlung des Speichertaktes.
Denn AMD wählte hier ein System, welches den Speichertakt synchron zu den CPU-Taktzyklen setzt. Dies ist wahrscheinlich bei den K8-Prozessoren Opteron und Athlon 64 sehr wichtig, weil ansonsten durch zu hohe Latenzen der Vorteil des in die CPU integrierten Speichercontrollers wieder zunichte gemacht werden würde. Um diese gewünschte Synchronisation zu den CPU-Taktzyklen zu erreichen, wird der Speichertakt minimal angepasst, was folgende Rechnung ergibt:
Speichertakt = CPU-Takt / (CPU-Takt / gewünschter Speichertakt; aufgerundet auf eine ganze Zahl)
Dies hört sich kompliziert an, hat aber durchaus seinen Sinn: Wenn wir beispielsweise einen 2.2 GHz K8-Prozessor haben und diesen mit DDR333-Speicher betreiben wollen, passiert folgendes: Die Teilrechnung "CPU-Takt / gewünschter Speichertakt" ergibt in diesem Beispiel dann "2200 MHz / 166,66 MHz", also einen Teiler von 13,2 (diese "Teiler" haben absolut nichts mit dem Multiplikator zur Erzeugung des CPU-Taktes zu tun). Würde man den Rechner so betreiben, würde die CPU also aller 13,2 Takte vom Speicher neue Datenpakete geliefert bekommen.
Die Folge dessen, daß diese Datenpakete aufgrund der 0,2 hinter dem Komma nie genau zu einem ganzen CPU-Takt ankommen würden, wären entsprechende zusätzliche Verzögerungen aka Latenzen, was wie gesagt nicht im Sinne des integrierten, sehr Latenz-armen Speichercontrollers der K8-Prozessoren wäre. Also hat sich AMD hier ein System ausgedacht, womit die ankommende neuen Datenpakete vom Speicher immer exakt zu einem neuen CPU-Takt ankommen. Dafür wird der ermittelte Teiler prinzipiell nach oben gerundet, in unserem Beispiel also von 13,2 auf 14.
Und danach wird schlicht die Rechnung wiederholt, nur diesesmal mit CPU-Takt und Teiler (was einen Speichertakt ergibt) anstatt mit CPU-Takt und Speichertakt (was einen Teiler ergibt). Konkret wird also die Rechnung "CPU-Takt / festgesetzter Teiler" und in unserem Beispiel "2200 MHz / 14" ausgeführt, was den entgültigen Speichertakt und in unserem Beispiel 157,14 MHz ergibt. Man verliert also in unserem Beispiel runde 9,5 MHz Speichertakt, gewinnt aber eine Synchronisation mit den CPU-Taktzyklen - und scheinbar haben die AMD-Ingenieure herausgefunden, daß letzteres mehr an Performance bringt, ansonsten hätten sie sich dieses System so nicht ausgedacht.
Jenes System der Speichertakt-Ermittlung bedeutet natürlich auch, daß nur in den seltensten Fällen wirklich dieser Speichertakt realisiert wird, welchen man im BIOS einstellt oder aber welchen das Mainboard bei SPD-Programmierung aus den Speicherbausteinen ausliest. Wie in obigen Beispiel kann es vorkommen, daß man DDR333 einstellt, real aber nur DDR314 herausbekommt. Dies trifft auf viele der möglichen CPU-Takt/Speicher-Takt Kombinationen zu, wie AMD mit der am Anfang dieses Artikels abgebildeten Tabelle schon darlegte. Wir haben diese Tabelle allerdings nachfolgend noch einmal etwas "aufgemotzt", um die einzelnen Verhältnisse klarer zu machen:
CPU-Takt | DDR266 |
DDR333 |
DDR400 |
1.4 GHz | Teiler: 11 Speichertakt: 127,27 |
Teiler: 9 Speichertakt: 155,55 |
Teiler: 7 Speichertakt: 200,00 |
1.6 GHz | Teiler: 12 Speichertakt: 133,33 |
Teiler: 10 Speichertakt: 160,00 |
Teiler: 8 Speichertakt: 200,00 |
1.8 GHz | Teiler: 14 Speichertakt: 128,57 |
Teiler: 11 Speichertakt: 163,63 |
Teiler: 9 Speichertakt: 200,00 |
2.0 GHz | Teiler: 15 Speichertakt: 133,33 |
Teiler: 12 Speichertakt: 166,66 |
Teiler: 10 Speichertakt: 200,00 |
2.2 GHz | Teiler: 17 Speichertakt: 129,41 |
Teiler: 14 Speichertakt: 157,14 |
Teiler: 11 Speichertakt: 200,00 |
2.4 GHz | Teiler: 18 Speichertakt: 133,33 |
Teiler: 15 Speichertakt: 160,00 |
Teiler: 12 Speichertakt: 200,00 |
2.6 GHz | Teiler: 20 Speichertakt: 130,00 |
Teiler: 16 Speichertakt: 162,50 |
Teiler: 13 Speichertakt: 200,00 |
2.8 GHz | Teiler: 21 Speichertakt: 133,33 |
Teiler: 17 Speichertakt: 164,70 |
Teiler: 14 Speichertakt: 200,00 |
Bezüglich des Overclockings des Speichertaktes kommt es dann wieder auf die Mainboard-Hersteller an. Denn technisch scheint es möglich, auch den Speichertakt höher als die Vorgaben von DDR266, DDR333 und DDR400 zu setzen, wie dieser Screenshot des BIOS eines Opteron-Mainboards zeigt:
Allerdings greift auch bei manuellem Übertakten des Speichers aller Wahrscheinlichkeit nach obige Rechnung. Wenn man beispielsweise mit einem 2.2 GHz Athlon 64 einen Speichertakt von 233 MHz (für DDR466) realisieren will, würden dann nur 220 MHz herauskommen (2200 MHz / 10 = 220 MHz). In diesem speziellen Beispiel (andere Rechnungen mit anderen Taktraten können positiver aussehen) würde man zwar recht viel Speichertakt verlieren, hätte dann aber wieder den Vorteil der vorbeschriebenen Synchronisation zwischen CPU- und Speichertakten.
Nebenbei gilt zum Übertakten des Speichertaktes bei K8-Prozessoren anzumerken, daß diese Übertaktungsmethode wahrscheinlich exzellente Performance-Gewinne abwerfen wird - und dies ohne, daß man den CPU-Takt erhöht, was dann ja noch zusätzlich gemacht werden kann. Denn da zwischen CPU und Speicher kein FrontSideBus mehr existiert, welcher seitens der CPU die nutzbare Bandbreite limitiert, erreicht jede Erhöhung des Speichertakes nicht nur die Erhöhung der speicherseitigen Bandbreite, sondern auch gleichzeitig die der CPU-seitigen Bandbreite.
Damit kommt die Erhöhung des Speichertaktes auch 1:1 als Performance bei der CPU an - ganz so, als hätte man den (nun nicht mehr existierenden) FrontSideBus erhöht. Bezüglich durchschnittlicher Anwendungen, wo die Speicherperformance einen doch recht beachtlichen Anteil an der Gesamtleistung hat, werden die schnellsten K8-Prozessoren also wahrscheinlich nicht unbedingt jene mit aussschliesslich hohem CPU-Takt, sondern besonders auch solche mit hohem Speichertakt sein, da ein hoher Speichertakt beim K8 auch unmittelbar mehr Bandbreite für die CPU selber bedeutet.
Somit ändert sich - nach viel Text - eigentlich gar nicht viel für AMD-User beim Thema Overclocking. Auch beim Athlon 64 (und Opteron) wird man mit den richtigen Mainboards sowohl den Multiplikator, Referenztakt als auch Speichertakt benutzen können, um sein System auf die eine oder andere Weise (oder allen zusammen) zu übertakten. Die offensichtlichen Unterschiede zum Athlon XP sind dabei dann doch recht gering: Erstens wird nicht mehr der FSB-Takt, sondern ein "Referenztakt" zum Übertakten und Ermitteln des CPU-Taktes benutzt und zweitens kommt nicht immer exakt dieser Speichertakt heraus, welchen man im BIOS einstellt, sondern ab und zu ein paar MegaHertz weniger.
Auch für non-Overclocker ändert sich nichts wesentliches: Wenn Prozessor und Speicher ins Mainboard gesteckt sind und der PC gebootet wird, sollte dieser vollautomatisch den CPU- und Speichertakt festsetzen. Wer an diesen Einstellungen nicht herumspielen will, muß dieses beim Athlon 64 und Opteron auch garantiert nicht tun.
Eine mögliche Falle ist uns allerdings bei der Lektüre eines praktischen Overclocking-Artikels seitens der AMDZone noch aufgefallen: Das dort eingesetzte Asus SK8N Mainboard mit nVidia nForce3 Pro150 Chipsatz hat die Eigenart, daß eine Erhöhung des Referenztaktes auch gleichzeitig mit den Speichertakt erhöht, daß also beide Takte miteinander gekoppelt sind (eine extra Einstellung des Speichertaktes hat dieses Board leider nicht).
Wir können derzeit noch nicht sagen, wie die Overclocking-Eigenschaften anderer Opteron und Athlon 64 Mainboards im gewöhnlichen aussehen werden und ob diese (unerwünschte) Takt-Kopplung der Normalzustand oder eine Ausnahme ist. Technisch erscheint es uns jedoch absolut möglich, zwar den Referenztakt zu erhöhen, gleichzeitig jedoch den Speichertakt auf demselben oder aber zumindestens einem ähnlichen Wert zu lassen - und umgedreht. Diese beobachtete Eigenart des vorgenannten Asus-Mainboards scheint auf dessen BIOS-Programmierung zurückzugehen - bei einer anderen Programmierung kann dies also schon wieder anders aussehen.
An dieser Stelle ist es wohl entscheidend, ob die entsprechenden Mainboards die oben angeführte Rechnung zur Ermittlung des realen Speichertaktes auch wirklich ausführen oder ob hardcodiert im BIOS die Ergebnisse der wichtigsten Rechnungen laut obiger Tabelle bereits vorliegen. Sollte der letztere Fall zutreffen, welcher sicherlich für die Mainboard-Hersteller der einfacher zu realisierende ist, dann kommen solche Mainboards nicht mit höheren Speicherarten wie DDR433 oder DDR466 zurecht (diese würden dann wohl als DDR400 betrieben), gleichzeitig würde wohl automatisch eine Kopplung von Referenztakt und Speichertakt stattfinden. Nur von Mainboards, welche vorgenannte Rechnung auch wirklich ausführen, sind die Unterstützung von höheren Speicherarten als DDR400 und die Nicht-Kopplung von Referenztakt und Speichertakt zu erwarten.
Hier wird man jedoch schlicht die kommenden Athlon 64 Platinen und deren praktisch vorhandenen Overclocking-Möglichkeiten abwarten müssen. Ein ideales Overclocking-Board für den Athlon 64 sollte Einstellungen für den CPU-Multiplikator, den Referenztakt und den Speichertakt bieten, sowie die beiden letztgenannten Takte definitiv nicht aneinander koppeln.
Wir danken Chris Tom von der AMDZone und Johan De Gelas von Ace´s Hardware für die freundliche Genehmigung zur Verwendung ihrer Screenshots. |