Allgemein Arbeitsspeicher Gaming Grundlagenartikel Praxis System Testberichte

Performance-Steigerung für Gamer: Single-Rank, Dual-Rank und Quad-Rank beim Speicher erklärt und verglichen | Praxis mit Benchmarks

Dass man seinen RAM wenn möglich mindestens im Dual-Channel betreiben sollte, hat sich ja mittlerweile zum Glück weitestgehend in der Industrie durchgesetzt. Im Gegensatz zu Channels werden allerdings Ranks noch immer stiefmütterlich behandelt, wenn überhaupt. Viele, teils sehr bekannte Publikationen sprechen stattdessen lieber von „Sticks“ oder „Riegeln“ mit Auswirkungen auf die Performance, was nicht nur falsch ist, sondern auch für Verwirrung und Desinformation in der Community sorgt. Heute wollen wir einige dieser „Mythen“ untersuchen und ggf. berichtigen.

Single-Rank vs. Dual-Rank vs. Quad-Rank – in der Theorie erklärt und mit Benchmarks belegt

Zuerst müssen wir uns kurz die Theorie von Memory Channels und Ranks ansehen, aber keine Angst, ich halte es wirklich kurz. Moderne Desktop CPUs haben heutzutage i.d.R. zwei Channels, also zwei 64-bit Anschlüsse, um Daten mit dem Arbeitsspeicher auszutauschen. Da diese zwei Channels parallel genutzt werden, verdoppelt sich effektiv die Bandbreite und damit der Durchsatz im Vergleich zu Single-Channel, von 1x 64-bit zu 2x 64-bit, also effektiv 128-bit. Eigentlich logisch so weit zu den Channels.

Betreibt man nun an diesen beiden 64-bit Anschlüssen RAM, so läuft dieser mit einem gewissen Takt, z.B. 1900 MHz bei DDR4-3800, woraus sich zusammen mit dem Faktor 2 wegen Dual Data Rate (DDR) die theoretische Bandbreite ergibt: 1900 MHz * 2 (DDR) * 64 bit * 2 (Channels) = 486400 Mbit/s = 60800 MB/s (8 bit = 1 byte).

Wohlgemerkt ist dies aber nur die theoretische Bandbreite, denn der Arbeitsspeicher muss im Betrieb auch noch andere Aufgaben erledigen als Daten auszutauschen, z.B. sich refreshen oder darauf warten, dass sich Zellen von einem Schreibvorgang erholen. Diese Ineffizienz lässt sich zwar durch straffere Timings etwas minimieren, aber eben nie ganz, auch mit den hochwertigsten Speicherchips. Das sehen wir auch ganz schön bei den AIDA64 Read und Write Tests, wo wir mit allen Configs 5-10% unter dem theoretischen Maximalwert landen.

Hier kommen nun mehrere Ranks ins Spiel, denn während die CPU pro Channel nur einen 64-bit Anschluss hat, können wir auf Seite des Arbeitsspeichers mehrere dieser 64-bit Anschlüsse in Form von Ranks installieren. Die theoretische Bandbreite bleibt die gleiche, aber effektiv können sich die Ranks bei der Arbeit abwechseln, wenn einer mal gerade mit sich selbst beschäftigt ist. Wir erhöhen damit also nur die Effizienz der 64-bit Anschlüsse der CPU (Channels), indem wir die Arbeit auf jeweils mehrere korrespondierende 64-bit Anschlüsse beim RAM (Ranks) aufteilen. Dieses sich gegenseitige Abwechseln der Ranks nennt sich übrigens Interleaving und wird euch vielleicht im BIOS schon mal begegnet sein.

Indem wir die Anzahl der Ranks pro Channel erhöhen, verbessern wir letztendlich die Effizienz des jeweiligen Channels, vor allem bei Anwendungsfällen mit vielen schnell aufeinanderfolgenden Instruktionen für den Arbeitsspeicher. Dabei ist es der CPU übrigens völlig egal, auf wie viele Module die Ranks pro Channel verteilt sind. Im AIDA64 Copy-Test sehen wir im Dual-Channel nahezu identische Bandbreiten-Ergebnisse, die nun nur noch 10% vom theoretischen Maximum entfernt sind, verglichen mit 14% bei Single-Rank. Das hört sich erstmal nach nicht viel an, aber die Auswirkungen können sich je nach Applikation durchaus deutlich äußern, wie wir besonders in unseren Cyberpunk 2077 Tests sehen werden.

Nun ist Dual-Rank nicht das Ende der Fahnenstange, denn es gibt z.B. auch Quad-Rank, also 4 Ranks per Channel, und bei Servern ist auch Octa-Rank, also 8 Ranks per Channel, nicht selten. Dabei werden die Zugewinne durch mehr Ranks zunehmend immer weniger, denn theoretische Bandbreiten-Maximum der Channels bleibt ein hartes Limit, also „diminishing returns“ wie der Engländer sagt. So sehen wir auch im Vergleich von Dual-Rank zu Quad-Rank im AIDA64 Copy Benchmark nur noch 1 Prozentpunkt Unterschied. Die gemessene Latenz in unseren Tests ist übrigens nahezu unbeeinflusst von der Anzahl der Ranks.

Aber auch durch das Verwenden von 4 Modulen oder 4 Ranks pro Channel, bleibt die maximale der Channels der CPU gleich. Also auch wenn sich nun in einem Channel 4 Ranks enthalten sind, läuft die Dual-Channel CPU weiterhin im Dual-Channel, nicht Quad-Channel. Es gibt zwar CPUs, die mehr als 2 Channels unterstützen, diese sind aber eher im Workstation- bzw. Server-Bereich zu finden, wie z.B. die Plattformen AMD Threadripper, AMD Epyc, Intel X299 etc. 

Aber neben besserer Performance gibt noch einen weiteren Vorteil von mehreren Ranks, nämlich mehr Kapazität. Statt den Arbeitsspeicher mit seiner 64-bit Breite über die Länge vergrößern zu müssen, indem Speicherchips mit mehr Kapazität verbaut werden, können relativ einfach mehrere Ranks der Speicherchips mit bestehender Größe verbaut werden. Je nach Art des Arbeitsspeichers können damit potentiell Kosten eingespart werden, beim Hersteller und beim Konsumenten.

Einziger Nachteil von vielen Ranks ist, dass die CPU mit dem zunehmenden Verwaltungsaufwand und der Versorgung der ganzen Ranks hinterherkommen muss. Bei Desktop-CPUs äußert sich dies meistens darin, dass der maximal mögliche Takt mit zunehmender Anzahl an Ranks geringer wird, während Server-CPUs oft ein festes Limit für die Anzahl von unterstützen Ranks pro Channel haben, die man als Integrator möglichst klug auf die verschiedenen Arbeitsspeicher-Module aufteilen muss. Einen solchen Effekt des höheren Verwaltungsaufwandes können wir im AIDA64 Write Test beobachten, wo die Quad-Rank Konfiguration merklich hinter den anderen landet.

Es kommt also wie bei so vielen Dingen auf einen guten Kompromiss an. Zunächst sollte man alle Channels befüllen, dann diese mit dem maximalen möglichen Takt und damit Durchsatz betreiben, dann die Timings so sehr straffen wie möglich und erst dann möglichst viele Ranks verbauen ohne damit den Takt negativ zu beeinflussen. Und selbstverständlich sollte man dabei natürlich an erster Stelle immer genug RAM für die jeweilige Anwendung verbauen, damit das System nicht auf das Pagefile und die damit vergleichsweise grottenlangsame Festplatte ausweichen muss, denn das ist der Super-GAU für die Performance.