Geben Sie die Transferrate pro Pin, die Breite des Datenbusses und die Anzahl der DIMMs, Chips oder Stacks ein, um die Spitzenbandbreite des Speichers zu erhalten. Mit einem Effizienzfaktor sehen Sie eine grobe Schätzung der tatsächlich nutzbaren Bandbreite. Gängige Standards stehen als Voreinstellungen zur Verfügung.
Ergebnisse
Spitzenbandbreite
–
Geschätzte effektive Bandbreite
–
Datenrate pro Pin
–
Bytes pro Nanosekunde
–
Typische Standards im Vergleich (pro Einheit)
Standard (Einheit)
MT/s
Busbreite (Bit)
Spitzenbandbreite
Spitzenwerte pro DIMM bei DDR4 und DDR5, pro 64 Bit bei LPDDR5X, pro Chip bei GDDR6 und pro Stack bei HBM3. Die Transferraten sind typische Geschwindigkeitsklassen des jeweiligen Standards; es gibt auch schnellere und langsamere Bausteine.
Als Diagramm ansehen
Die übrigen Eingaben bleiben auf ihren aktuellen Werten, während die gewählte Eingabe zwischen dem 1/4- und 4-Fachen ihres aktuellen Werts variiert. Der rote Punkt ist der aktuelle Wert.
So funktioniert die Bandbreitenformel
Die Spitzenbandbreite des Speichers ist die Zahl der Übertragungen, die jeder Datenpin pro Sekunde ausführt (die Transferrate), mal die Zahl der Pins (die Busbreite), geteilt durch 8 zur Umrechnung von Bit in Byte. DDR-Speicher (Double Data Rate) überträgt Daten sowohl an der steigenden als auch an der fallenden Taktflanke, daher ist die Transferrate doppelt so hoch wie die Taktfrequenz. DDR4-3200 läuft mit einem Takt von 1.600 MHz und erreicht 3.200 MT/s. Auf einem 64-Bit-Bus ergibt das 3.200 × 64 ÷ 8 = 25.600 MB/s, also 25,6 GB/s. Wer MHz und MT/s verwechselt, erhält die Hälfte oder das Doppelte.
Spitzen- und Dauerbandbreite
Die Spitzenbandbreite ist die theoretische Obergrenze, bei der in jedem Zyklus Daten fließen. Ein reales DRAM verliert Zeit durch Refresh, der die gespeicherte Ladung erhält, durch Bankkonflikte, bei denen in einer belegten Bank eine neue Zeile geöffnet werden muss, und durch den Lese-/Schreibwechsel, wenn der Bus die Richtung ändert. Die Dauerbandbreite liegt daher unter der Spitze. Sie hängt stark vom Zugriffsmuster ab, doch etwa 60 bis 90 % der Spitze sind ein gängiger grober Richtwert: höher bei durchgehend sequenziellen Lesezugriffen, niedriger bei zufälligen Zugriffen und gemischtem Lesen und Schreiben.
Breit und langsam oder schmal und schnell
Bandbreite entsteht entweder durch mehr Pins oder durch schnellere Pins. GDDR6 betreibt pro Chip einen schmalen 32-Bit-Bus mit 16 Gb/s pro Pin und erreicht so 64 GB/s pro Chip. HBM3 verbindet dagegen einen Stapel von DRAM-Dies über einen sehr breiten 1.024-Bit-Bus; bei moderaten 6,4 Gb/s pro Pin erreicht ein einzelner Stack etwa 819 GB/s. Die kurzen Verbindungen von HBM brauchen weniger Energie pro Bit, erfordern aber teures Packaging wie einen Silizium-Interposer. GDDR wird auf einer gewöhnlichen Platine montiert, doch seine schnellen Signale erschweren Routing und Stromversorgungsdesign.
Die Memory Wall und das Roofline-Modell
Die Memory Wall ist die Lücke, die entsteht, wenn die Rechenleistung von Prozessoren schneller wächst, als sich Speicherbandbreite und Latenz verbessern. Programme, die pro übertragenem Byte wenig rechnen, lassen die Recheneinheiten untätig auf Daten warten, sodass die Bandbreite ihre Geschwindigkeit bestimmt. Das Roofline-Modell erfasst dies: Die erreichbare Leistung ist das Minimum aus Spitzenrechenleistung und Bandbreite × arithmetischer Intensität (Operationen pro Byte). Bei 100 GB/s und einer Operation pro Byte kann die Leistung zum Beispiel 100 Milliarden Operationen pro Sekunde nicht überschreiten. Daten in Caches wiederzuverwenden, um die arithmetische Intensität zu erhöhen, ist der grundlegende Weg, die Bandbreitengrenze zu entschärfen.
Die Spitzenbandbreite ist Übertragungsrate × Busbreite: 3.200 × 10⁶ Übertragungen/s × 8 Byte = 25,6 GB/s. Die Bezeichnung „DDR4-3200“ gibt die Übertragungsrate (MT/s) an, die Modulbezeichnung „PC4-25600“ die Bandbreite (MB/s). In der Praxis entstehen Wartezeiten durch Refresh, Zeilenwechsel und Wechsel zwischen Lesen und Schreiben, sodass die effektive Bandbreite häufig etwa 70 bis 80 % der Spitze beträgt.
Die Rechenleistung von Prozessoren wuchs zeitweise um über 50 % pro Jahr, die Zugriffslatenz von DRAM verbesserte sich dagegen von einigen zehn ns kaum, sodass die CPU Hunderte von Zyklen auf Daten warten muss. Das ist die Memory Wall. Als Gegenmaßnahmen werden mehrstufige Caches, paralleler Speicherzugriff, Prefetching, Speicher mit hoher Bandbreite wie HBM und Processing-in-Memory vorangetrieben, bei dem Berechnungen nahe am Speicher stattfinden.
Die Bandbreite ergibt sich als gleichzeitig in Bearbeitung befindliche Datenmenge geteilt durch die Wartezeit (Little's Law). Bei einem Miss sind es 64 B ÷ 100 ns = 0,64 GB/s, bei 10 gleichzeitig bearbeitbaren Misses 10 × 64 B ÷ 100 ns = 6,4 GB/s. Um die Bandbreite des Hauptspeichers auszuschöpfen, ist neben kürzerer Wartezeit auch Speicher-Parallelität unverzichtbar, bei der viele Misses gleichzeitig bearbeitet werden. 0,64 GB/s ist weiterhin der Wert für einen gleichzeitigen Miss, und 0,064 GB/s ist der Wert, bei dem umgekehrt durch 10 geteilt wurde.
Häufige Fragen
Welche Bandbreite hat DDR4-3200?
3.200 MT/s × 64 Bit ÷ 8 = 25,6 GB/s. Das ist die Spitze für einen 64-Bit-Kanal (ein DIMM); zwei Kanäle ergeben 51,2 GB/s. Die nutzbare Bandbreite ist geringer.
Was ist der Unterschied zwischen MT/s und MHz?
MHz ist die Taktfrequenz, MT/s dagegen Millionen Datenübertragungen pro Sekunde. DDR-Speicher überträgt an beiden Taktflanken, daher ist der Wert in MT/s doppelt so hoch wie die Taktfrequenz. DDR4-3200 nutzt einen Takt von 1.600 MHz.
Warum ist ein DDR5-DIMM in zwei Kanäle aufgeteilt?
Ein DDR5-DIMM hat zwei unabhängige 32-Bit-Subkanäle (ohne ECC). Die Gesamtbreite beträgt wie bei DDR4 64 Bit, doch die kleineren, unabhängigen Einheiten erlauben mehr gleichzeitig laufende Anfragen, was die effektive Effizienz tendenziell erhöht. Ein DDR5-6400-DIMM erreicht in der Spitze 51,2 GB/s.