News DDR5: Neue HUDIMM-Speichermodule sollen Preise senken

Ja, ist richtig, es geht um die zwei Sub-Channels die auf einen halbiert werden sollen.

Mich würden in jedem Fall Vergleichstests interessieren, nicht nur 2x 32-Bit vs. 1x 32-Bit, sondern auch vs. 1x 64-Bit - das auch unterstützt wird - sowie auch vs. DDR4.

Mit 4 Riegeln dürfte man den Vorteil der 2x 32-Bit wieder (weitgehend) ausgleichen können. Nur ist das wohl kaum Sinn der Sache.

64-Bit-Zugriffe gibt es aktuell nur bei MR-DIMMs. Normale Mainstream-DDR5-Systeme arbeiten mit 4× 32 Bit im Quad-Channel. (Anfangs, zu Alder-Lake-Zeiten, wurde das sogar so vermarktet. Erst später hat man wieder "Dual-[Full-]Channel" statt "Quad-[Sub-]Channel" gezählt.) Wenn man jetzt nur halb so viele Sub-Channels je Modul unterstützt, hat man mit weiterhin zwei Modulen im System 2× 32 Bit – also genau die gleiche Konfiguration, die man auch mit einem einzelnen, herkömmlichen Modul erhält ("Single-[Full-]Channel" = "Dual-[Sub-]Channel"), dass es ohne extra Entwicklungsaufwand an jeder Ecke zu kaufen gibt. (Gegen zwei Nieren.) Die gleichen Speicherchips auf zwei 32-Bit-SIMMs zu verteilen (486er wollen ihren RAM zurück!), verdoppelt einfach nur die Kosten für RAM-PCBs.

tl;dr: Wenn überhaupt, dann lohnt sich das ganze nur für PCs, in denen 8 Speicherchips insgesamt/ein konventionelles Modul schon zu viel wäre. 4-GiB-Konfigurationen @Quarterspeed incoming. Das heißt im Umkehrschluss übrigens auch, dass jedes Gerede über "Kits" aus solchem RAM, pure Augenwischerei ist.
 
Am Ende müssen auf jeden Fall 64 Byte pro Zugriff rauskommen. Zumindest ab DDR3. Vorher waren es weniger.
Bei DDR5 gehen je Transfer 32 Bit pro Subchannel über eine Hälfte eines Memory Channels.
Das sind pro Transfer natürlich auch 64 Bit, aber eben in der granulareren Form 4 x 32 Bit statt DDR4 mit 2 x 64 Bit, grad im Hinblick auf Prozessoren mit immer mehr Cores und damit vielen parallelen Speicheranforderungen interessant.

Das ist auch deshalb wichtig weil es wohl darum geht, möglichst viele benötigte Rows der Chips "offen zu halten", also in die Column Buffer eingelesen und auch wieder in die DRAM-Zellen zurückgeschrieben zu haben, da beim Lesen aus einer geöffneten Row diverse Latenzen (RAS, Precharge,...) entfallen. Und jedes neue Lesen einer geschlossenen Row erfordert ja ein Zurückschreiben in die DRAM-Zellen.

Die Burst Transfers: 64 Byte = 16 Transfers à 4 Bytes benötigen keine einzelnen Read-Commands des Memory Controllers, belegen aber den Datenbus während der Überrtragung trotzdem.
4-GiB-Konfigurationen @Quarterspeed incoming
Mir schwant Böses :klatsch: ...ob damit wohl auch die "Rettungsmission für Windows 11" ins Spiel kommt, damit es auch mit einem HUDIMM von 8 oder gar 4 Gig "deutlich schneller" wird? :wall:
 
Zuletzt bearbeitet:
Bei DDR5 gehen je Transfer 32 Bit pro Subchannel über eine Hälfte eines Memory Channels.
Das sind pro Transfer natürlich auch 64 Bit, aber eben in der granulareren Form 4 x 32 Bit statt DDR4 mit 2 x 64 Bit, grad im Hinblick auf Prozessoren mit immer mehr Cores und damit vielen parallelen Speicheranforderungen interessant.
Ich habe dir ja nicht widersprochen. 16x32 Bit sind ja auch 64 Byte. Ich habe ja oben schon geschrieben, dass ich denke, dass das hauptsächlich so gemacht wurde, damit man das Prefetching erhöhen kann. Ein DDR4-Modul hat nur einen Kanal, auf dem 64 Byte geprefetcht werden können, während DDR5 zwei hat. Diese 64 Byte werden bei DDR4 dann in acht Transfers zu je 64 Bit übertragen, während es bei DDR5 16 Transfers zu je 32 Bit sind. So kann DDR5 mit dem gleichen internen Takt die doppelte Übertragungsrate nach außen liefern, ohne die Cache Lines zu sprengen.

Aber diese Aufteilung hat natürlich noch andere Effekte und dass so mehr Threads gleichzeitig Speicherzugriffe machen können, ist sicher auch ein Vorteil, auch wenn das natürlich dazu führt, dass die Übertragung der Daten aus einem Zugriff bei z.B. DDR5-6400 genau so lange dauert, wie bei DDR4-3200. Aber wenn man bedenkt, wie hoch die Latenzen sind, bis die Daten überhaupt fließen, ist wohl auch egal, ob die letztendliche Übertragung jetzt 2,5 oder 1,25 ns dauert.
 
Intel ist stark im B2B Markt.
Da braucht man "günstigen" Speicher, um günstige Office-PCs und Notebooks bauen zu können.
Hier geht es schlicht darum, dem Absatzeinbruch von CPUs und anderen Komponenten, z.B. Mainboards von Asrock ;) , entgegen zu wirken.
 
Sicher theoretisch interessant, aber für das Zielpublikum "Heimanwender" (Internet, Mail, Youtube, Tiktok, noch ein Office-Paket) oder Firmenrechner - die meistens nicht mal eine dedizierte Grafikkarte haben - dürfte es keine Rolle spielen, ob die Webseite ein paar Millisekunden später aufgebaut ist.

Wer sich einen dicken Prozessor mit High-End Grafikkarte und Top-Mainboard für Gaming oder Content Creation leistet und dann beim RAM den Entenklemmer spielt, ist selbst schuld.

Probleme dürfte es allerdings geben, wenn man bei Alibaba und seinen vierzig Räubern ein 16 GB DIMM als Schnäppchen ersteht, das sich nach dem Booten mit 8 GB meldet, weil vier der acht Speicherbausteine nur aufgeklebte Gehäuse ohne Inhalt sind. Aber auch da gilt: wer billig kauft, kauft zwei Mal.

Soweit klar - das ist aber nicht der Punkt, der mich interessiert (weil das ja eben klar ist). Mich würden die Benchmarks zum Vergleich einfach nur aus Interesse an der Technik interessieren, bzw. wie diese mit diesen Kompromissen performt.

Persönlich würde ich mir diesen RAM sicher auch nicht verbauen, wenn er für AMD erhältlich wäre.
 
Zuletzt bearbeitet:
Ich habe dir ja nicht widersprochen. 16x32 Bit sind ja auch 64 Byte. Ich habe ja oben schon geschrieben, dass ich denke, dass das hauptsächlich so gemacht wurde, damit man das Prefetching erhöhen kann. Ein DDR4-Modul hat nur einen Kanal, auf dem 64 Byte geprefetcht werden können, während DDR5 zwei hat. Diese 64 Byte werden bei DDR4 dann in acht Transfers zu je 64 Bit übertragen, während es bei DDR5 16 Transfers zu je 32 Bit sind. So kann DDR5 mit dem gleichen internen Takt die doppelte Übertragungsrate nach außen liefern, ohne die Cache Lines zu sprengen.

Aber diese Aufteilung hat natürlich noch andere Effekte und dass so mehr Threads gleichzeitig Speicherzugriffe machen können, ist sicher auch ein Vorteil, auch wenn das natürlich dazu führt, dass die Übertragung der Daten aus einem Zugriff bei z.B. DDR5-6400 genau so lange dauert, wie bei DDR4-3200. Aber wenn man bedenkt, wie hoch die Latenzen sind, bis die Daten überhaupt fließen, ist wohl auch egal, ob die letztendliche Übertragung jetzt 2,5 oder 1,25 ns dauert.

Da muss man nichts glauben, die Beibehaltung von 64 Byte pro Zugriff ist eine ganz offizielle Begründung für den neuen Aufbau. :-) Und das ist auch nahezu synonym mit feiner granularen Zugriffen durch mehrere Threads. Wenn ein und derselbe zweimal 64 Byte unmittelbar hintereinander anfordert, stehen die Chancen sowieso nicht schlecht, dass eine größere Datei geladen werden soll und dann wäre auch ein 128-Byte-Zugriff möglich gewesen. MR-DDR5 arbeitet auch genau so, effektiv also mit zweimal 16 Bit Prefetch, weil das bei einem Datenbank-Server ohnehin den Normalzustand darstellt. Aber bei gemischten Workloads, wenn diverse Threads zum Beispiel im Wechsel einzelne Konfigurations-Bits abrufen, dann ist Quad-Channel mit 64-Byte-Bursts wesentlich schneller als Dual-Channel mit 128-Byte-Bursts, weil letztere einfach viel nutzlosen Beifang transportieren würden.
 
Aber bei gemischten Workloads, wenn diverse Threads zum Beispiel im Wechsel einzelne Konfigurations-Bits abrufen, dann ist Quad-Channel mit 64-Byte-Bursts wesentlich schneller als Dual-Channel mit 128-Byte-Bursts, weil letztere einfach viel nutzlosen Beifang transportieren würden.
Gut, man spart Latenzen, wenn man denn wirklich so viel auf einmal lesen möchte. Aber MR-DIMM ist ja scheinbar schon eher aus Gründen der Kompatibilität so aufgebaut. Aber wie ist das dann mit den Cache-Lines, wenn die Bursts 128 Byte lang sind? Werden einfach zwei befüllt?
 
Jo, das ist für die CPU kein Problem. Macht sie ja jetzt auch schon, wenn mehr als 64 Byte geladen werden sollen.
Einen Nachteil hat man nur, wenn 64 Byte (oder weniger) gereicht hätten und man den zweiten Zugriffsteil für etwas anderes hätte nehmen können. Das ist dann aber eben im Worst Case gleich ein Verlust von 50 Prozent durch 128-Byte-Bursts, wenn nicht die Datentransferrate, sondern die Zahl der Zugriffe limitiert.
 
Einen Nachteil hat man nur, wenn 64 Byte (oder weniger) gereicht hätten und man den zweiten Zugriffsteil für etwas anderes hätte nehmen können. Das ist dann aber eben im Worst Case gleich ein Verlust von 50 Prozent durch 128-Byte-Bursts, wenn nicht die Datentransferrate, sondern die Zahl der Zugriffe limitiert.
Das ist ja im Endeffekt ein Kritikpunkt seit DDR(1). Der (8-)byte-weise Zugriff ist ja heute kaum schneller als zu SDR-Zeiten. Ich bin ja mal auf DDR6 gespannt. 24-Bit-Kanäle klingen wild.
 
Bei DDR5 gehen je Transfer 32 Bit pro Subchannel über eine Hälfte eines Memory Channels.
Das sind pro Transfer natürlich auch 64 Bit, aber eben in der granulareren Form 4 x 32 Bit statt DDR4 mit 2 x 64 Bit ...
1776809438171.png

Echtes Quad Channel sind 4 physische Module × 2 Sub-Kanäle pro Modul = 8 unabhängige 32bit Kanäle insg. 256bit.

Die Gesamtbusbreite mit 256bit (8×32bit) ist identisch mit einem klassischen 4x64bit Quad-Channel System.
Die Aufteilung bietet in 32bit Subkanäle signifikante Vorteile, eine höhere Effizienz, da zwei kleinere Zugriffe gleichzeitig stattfinden können, wird der Speicherbus effektiver ausgelastet.

Die Latenz bei kleinen Datenpaketen verringert sich. Die Burstrange wurde bei DDR5 verdoppelt (BL8 auf BL16), was zusammen mit den schmaleren 32bit Kanälen dazu führt, dass ein einzelner Zugriff weiterhin genau die Größe einer typischen CPU Cacheline liefert. Jeder der 32bit Kanäle auf einem Riegel hat sein eigenes Steuerprotokoll, was die Parallelität erhöht.
 
Zurück