Rank-Problematik bei Speichermodulen

Die Speichertaktung ist hauptsächlich für die Leistung des Arbeitsspeichers verantwortlich. Um die bestmögliche Leistung aber zu erzielen, muss zusätzlich auf die Ranks der Module geachtet werden. Je nachdem, ob der Arbeitsspeicher auf Performance oder auf Energieeffizienz hin optimiert werden soll, kann eine symmetrische oder gemischte Konfiguration erforderlich sein. Ebenso, wenn Redundanz eine Rolle spielen soll.

Dual Rank ist keine doppelseitige Bestückung

Ein Rank ist ein Speicherbereich, also in der Regel eine Gruppe von Chips, die mit 64 Bit (+8 Bit bei ECC) adressiert werden. Auf der RAM-Platine können ein, zwei oder vier Ranks vorhanden sein (Single-, Dual- oder Quad-Rank-DIMM). Da mehrere Ranks sich dann die Anbindung teilen, sind sie grundsätzlich auch etwas langsamer als Single-Rank-DIMMs.

Die Anzahl der Ranks hat nichts damit zutun, ob der Speicherriegel ein- oder doppelseitig bestückt ist. Auch wenn beide Merkmale häufig einander entsprechen, so gibt es einseitige Module mit mehreren Ranks genauso wie doppelseitige mit nur einem Rank.

Eine Server-CPU der Xeon-E5-2600-Familie etwa ist immer über vier Speicherkanälen am Arbeitsspeicher angebunden. Per Interleaving wird der Speicherzugriff beschleunigt, indem mehrere Kanäle parallel genutzt werden – idealerweise alle vier. Dazu müssen auch alle vier Slots mit Riegel (DIMMs) besetzt sein. Es ist die Rede von 4-way Channel Interleaving. Daneben gibt es auch Rank Interleaving innerhalb des Kanals, das unmittelbar über die Adressbits erfolgt.

Performance-Unterschiede der DIMM-Typen

Wenn auch nur gering, also wenige Prozent im Unterschied, haben DIMM-Typen Einfluss auf die Performance. Die beste Performance bieten zwei DIMMs pro Kanal (2 DPC), die je mit zwei Ranks ausgestattet sind, da hierdurch beide Dimensionen des Interleavings kombiniert werden. Dabei ist zu beachten, dass beim Aufrüsten die Rank-Anzahl im Kanal stets gerade bleibt, damit 2-way-, 4-way- oder 8-way-Rank-Interleaving möglich wird.

Jede ungerade Rank-Anzahl macht eine parallele Adressierung unmöglich. Die Rank-Anzahl eines jeden Speicherkanals ergibt sich aus der Speicherbestückung (ein bis vier DIMMs) und der Anzahl der Ranks pro DIMM (single, dual oder quad).

2-way-Rank-Interleaving bietet bereits eine gute Performance – 4-way setzt nur ein geringfügiges Plus oben drauf. Nur einen Rank bzw. eine ungerade Rank-Anzahl pro Kanal sollte lediglich dann verwendet werden, wenn eine geringe Kapazität ausreicht oder Energieeffizienz wichtiger ist.

Zudem erlaubt die DDR4-Spezifikation lediglich acht Ranks pro Kanal. Mehrere sind lediglich mit sogenannten Load Reduced DIMMs (LRDIMMs), die physikalische Ranks zu virtuelle zusammenfasst, sodass der Speichercontroller lediglich maximal acht Ranks anspricht. LRDIMMs sind nicht mit den ansonsten üblichen RDIMMs mischbar. Die Einbußen in Performance durch diese sog. Rank Multiplication gegenüber RDIMMs ist mit circa fünf Prozent relativ gering.

Während die Performance bei zwei DIMMs pro Kanal stets etwas besser ist als bei nur einem, verschlechtert sie sich wieder etwas, wenn mehr als vier Ranks pro Kanal betrieben werden. Das ist etwa bei mehreren Quad-Rank-LRDIMMs der Fall, wenn hohe RAM-Kapazitäten erforderlich sind. Ursache dafür ist der pro Rank auszuführende Overhead für den DRAM Refresh, dessen Grundlast sich nachteilig auswirkt.

Performance bei Redundanz

Kommen etwa Mirroring oder Rank Sparing zum Einsatz, wirkt sich das auch auf die Performance aus. Mirroring erfordert die identische Besetzung aller vier Kanäle, wobei zwei davon gespiegelt werden. Dementsprechend steht dem Betriebssystem nur die Hälfte der physischen Kapazität zur Verfügung. Die Einbußen in der Performance sind aber geringer als beim 2-way-Interleaving, da beide Hälften lesend genutzt werden können.

Beim Rank Sparing wird lediglich ein Reserve-Rank pro Kanal vorgehalten. Wird dadurch die Rank-Anzahl ungerade, ist, wie oben schon erwähnt, kein Rank-Interleaving mehr möglich. Manche Server verlangen deswegen auch eine ungerade Rank-Bestückung.

Wie viel Ranks pro Kanal zum Einsatz kommen sollen, hängt stets von der Kapazität und der benötigten Performance ab.