mini|hochkant=1.25|Dual Channel: Zwei Speicherkanäle mit je zwei Steckplätzen () in Orange und Gelb. mini|hochkant=1.25|Aufbau einer PC-Hauptplatine (1998–2008)Heutige PC-Hauptplatine unterscheiden sich deutlich von dieser: • Es gibt keine Northbridge mehr (deren Funktionalität ist in der CPU gewandert), • RAM ist direkt an die CPU angebunden, • Grafikkarte ist direkt an die CPU angebunden, • PCI ist durch PCI-Express ersetzt worden und ist teilweise statt über Bridges direkt an die CPU angebunden, • IDE, Floppy, Parallel-Port, … gibt es nicht mehr

Als Dual Channel bezeichnet man eine Architektur in der Computertechnik, in dem eine CPU oder GPU zwei getrennt steuerbare Speicherkanäle besitzt. Diese Anzahl ist nicht gleichbedeutend mit der Anzahl der Speichermodule, weil mehrere Speichermodule an einem Bus arbeiten können, mehrere Speichermodule einen Bus bilden können oder aber auch ein Speichermodul mehrere Busse bereitstellen kann.

Dafür werden getrennte Datenbusse vom Prozessor (CPU) oder Speichercontroller zu den einzelnen Modulen eingesetzt. Durch die gleichzeitige Übertragung über mehrere Busse können Daten unabhängig voneinander und mehr Daten pro Zeitspanne übertragen werden. Diese Technik wird u. a. seit Anfang der 2000er Jahre in Personal-Computern eingesetzt.

Historisch haben CPUs mit Von-Neumann-Architektur einen gemeinsamen Speicherkanal für Daten und Befehle, CPUs mit Harvard-Architektur zwei oder drei Speicherkanäle. Mit dem Aufkommen von CPUs mit mehreren Kernen und größeren Bandbreitenanforderungen haben CPUs mehr als einen Speicherkanal bekommen. Bei Einzel-CPUs liegt das Maximum derzeit bei 12 Speicherkanälen (Xeon Platinum Prozessor 9282), bei GPUs bei 24 Speicherkanälen (NVIDIA RTX 3080) bzw. bei 32 Speicherkanälen (AMD Radeon Pro VII mit HBM). Bei Multi-Socket-Mainboards liegt es bei 48 Speicherkanälen (6 pro CPU).

Anzahl der Speicherkanäle Die Anzahl der Speicherkanäle entspricht nicht unbedingt der Anzahl der Module. Waren in den 1990er Jahren eher mehrere Module für einen Speicherkanal notwendig, so geht aktuell die Tendenz zu mehreren Speicherkanälen pro Modul. Treiber sind zum einen die hohen Bustaktraten und das hohe Prefetching, was sonst zu großen Speicherbatzen führt, die minimal gelesen werden können. Zum anderen viele Threads, die sich sonst zu wenige Speicherkanäle teilen müssen (Beispiel: Der Intel i9-13900 kann 32 Threads abarbeiten, hat aber mit DDR4 nur zwei Speicherkanäle, mit DDR5 aber vier Speicherkanäle).

Mehrere Speichermodule können einen Bus bilden: Ein Pentium MMX benötigt zwei 72-polige SIMM-Module mit je 32+4 bit Breite, um einen Speicherkanal mit 64+8 bit zu bilden. Für die Funktion sind 2 Module notwendig und bilden zusammen einen Speicherkanal. Ein Intel 80386 benötigt vier 30-polige SIMM-Module mit je 8+1 bit Breite, um einen Speicherkanal mit 32+4 bit zu bilden. Für die Funktion sind 4 Module notwendig und bilden zusammen einen Speicherkanal.

Ein Speichermodul kann einen Bus bilden: Ein Pentium II benötigt ein 168-polige DIMM-Module mit 64 bit Breite, um einen Speicherkanal mit 64 bit zu bilden. Ein Modul bildet einen Speicherkanal. Ein Intel 80486 benötigt ein 72-poliges SIMM-Module mit 32+4 bit Breite, um einen Speicherkanal mit 32+4 bit zu bilden. Ein Modul bildet einen Speicherkanal.

Ein Speichermodul kann mehrere Busse bilden: Ein 288-poliges DDR5-RAM-DIMM-Modul hat zwei unabhängige Speicherbusse zu je 32 bit. Gleiches gilt für LPDDR4-RAM. Ein Modul bildet zwei Speicherkanäle. Gleiches gilt für GDDR6-Speicher. Jeder Speicherchip hat zwei unabhängige 16-bit-Speicherkanäle. Ein HBM-Stack mit 1024 Bit Busbreite bildet bei HBM2 8 Speicherkanäle zu 128 bit, bei HBM3 16 Speicherkanäle zu 64 bit.

Weiterhin können bei den meisten Desktop-Mainboards und bei einigen Workstation-Notebooks bis zu zwei Module parallel geschaltet werden. Dies dient nicht der Erhöhung der Geschwindigkeit (häufig werden die Zugriffe sogar etwas langsamer), sondern um mehr Speicher unterzubringen.

Unterscheidung Abhängig vom Sitz des Speichercontrollers kann man zwei grundsätzliche Ansätze unterscheiden:

Bei der klassischen Chipsatz-Architektur befindet sich der Speichercontroller in der Northbridge (ein Teil des Chipsatzes). Dieser wiederum ist über den Front Side Bus an die CPU gekoppelt. Beim Betrieb im Dual-Channel-Modus wird somit nicht die Bandbreite zwischen CPU und Speicher, sondern nur die Bandbreite zwischen Northbridge und Speicher erhöht. Der erreichbare Leistungsgewinn durch die erhöhte Speicherbandbreite ist dementsprechend gering (siehe unten). Diese Technik basiert im Prinzip auf Speicher-Interleaving.

Sitzt der Speichercontroller direkt im Hauptprozessor (bei AMD zum Beispiel seit der Einführung des Athlon 64), wird die Bitbreite des Speicherbusses (Datenbusses) und somit auch die theoretisch verfügbare Speicherbandbreite direkt verdoppelt. Bei X86-Prozessoren wird somit der seit dem Intel Pentium bestehende, 64 Bit breite Datenbus (vorher 32 Bit beim 80486) auf 128 Bit erhöht. So hängt also zum Beispiel beim Athlon 64 die Dual-Channel-Fähigkeit von der CPU – genauer gesagt vom verwendeten Sockel – ab und nicht vom Chipsatz der Hauptplatine. Die meisten AMD-Prozessoren seit dem Sockel 939 unterstützen daher Dual-Channel-Betrieb. Die gegenüber dem Sockel 754 zusätzlichen Pins bilden den notwendigen zweiten Speicherbus.

Speicher kann sich direkt auf dem CPU- oder GPU-Package befinden. Es kann sich normaler LPDIMM-Speicher wie HBM-Speicher auf dem Package befinden.

Bedingungen mini|hochkant=1.1|Gleichartige Speichermodule (gleiches PCB) mit unterschiedlicher Chip-Bestüc­kung (Nanya, Micron, Qimonda†, Elpida†)

Für den Betrieb sind keine speziellen Module nötig – allein der Speichercontroller muss diese Technik unterstützen. Auch müssen die verwendeten Module nicht unbedingt baugleich sein. Dual Channel funktioniert mit jeder Art von Arbeitsspeicher, sofern die Größe des Speichers in beiden Kanälen identisch ist.

Speicherbelegungsbeispiele mini|hochkant=1.1|Zwei Speicherkanäle mit je einem Speicherbaustein und leerem Slot 2 wie in nebenstehendem Beispiel 1

Zu beachten ist, dass die physische Verteilung der Slots sowie die erlaubten Konfigurationen vom verwendeten Chipsatz, Mainboard und manchmal auch von den verwendeten Modulen abhängt. Die nötigen Informationen stehen üblicherweise im Handbuch sowie in der Qualified Vendor List (QVL) des Mainboards.

Beispiel 1: Ein 512-MB-Modul je Speicherkanal Speicherkanal 1 Speicherkanal 2 Slot 1 512 MB Slot 1 512 MB Slot 2 unbelegt Slot 2 unbelegt

Beispiel 2: Zwei 1-GB-Module je Speicherkanal Speicherkanal 1 Speicherkanal 2 Slot 1 1 GB Slot 1 1 GB Slot 2 1 GB Slot 2 1 GB

Beispiel 3: Dual-Channel funktioniert auch mit zwei verschieden großen Modulen pro Kanal, zum Beispiel 512 MB und 1 GB pro Kanal, insgesamt dann 3 GB Speicherkanal 1 Speicherkanal 2 Slot 1 1 GB Slot 1 1 GB Slot 2 512 MB Slot 2 512 MB

Beispiel 4: Wenn an beiden Speicherkanälen gleich viel Speicher vorhanden ist, aber in unterschiedlich vielen Modulen, funktioniert Dual Channel nur bei bestimmten Chipsätzen Speicherkanal 1 Speicherkanal 2 Slot 1 512 MB Slot 1 1 GB Slot 2 512 MB Slot 2 unbelegt

Weitere Voraussetzungen Stabilität und Geschwindigkeit von Dual-Channel lassen sich beispielsweise verbessern durch: Gleiche Organisation der Speicherchips. Diese lässt sich oft, jedoch nicht immer, durch die Anzahl der Chips oder der bestückten Seiten des DIMMs bestimmen. Unterschiedliche Organisation ist ein häufiger Grund für Inkompatibilitäten. Gleiche Betriebsgeschwindigkeit der beiden Module, ansonsten bestimmt das langsamste Modul die Geschwindigkeit. Gleicher Speichermodulhersteller und gleiches Modell, wird oft mit Aufpreis als Dual-Channel-Paket verkauft. Bei manchen Chipsätzen funktioniert Dual Channel nur, wenn eine gewisse Gesamtzahl an Ranks nicht überschritten wird (die Zahl der Ranks der einzelnen Module wird dabei addiert). Das ist insbesondere dann relevant, wenn alle Slots belegt sind.

Da diese Voraussetzungen von vielen Herstellern erfüllt werden, können auch Module unterschiedlicher Hersteller kombiniert werden.

Eine Besonderheit gibt es bei einigen Chipsätzen, wie zum Beispiel nForce2 oder SiS 655; diese können auch drei Module im Dual-Channel-Modus betreiben. Die ersten zwei DIMM-Sockel können mit dem dritten kombiniert werden. Dabei müssen die Kapazitäten der Module übereinstimmen, andernfalls (also falls die Speicherkapazität des dritten Moduls die der ersten beiden über- oder unterschreitet) wird der restliche Arbeitsspeicher im Single-Channel-Modus betrieben. Bei aktuellen Intel-Chipsätzen spielt es ebenfalls keine Rolle, ob die Kapazitäten der Speichermodule in beiden Speichercontroller-Kanälen übereinstimmen (siehe Abschnitt Dual Channel Asymmetric).

Leistung Im Gegensatz zum Single-Channel-Modus, bei dem der Datenbus 64 Bit breit ist (also 64 Datenleitungen), werden im Dual-Channel-Modus zwei Module gleichzeitig mit je 64 Bit-Datenbus betrieben. Da die Taktrate, mit der der Speicher betrieben wird, gleich bleibt, sich die übertragene Datenmenge pro Takt jedoch verdoppelt (also 128 Bit pro Takt statt wie bisher 64 Bit), führt der Einsatz des Dual-Channel-Modus theoretisch zur Verdopplung des Speicherdurchsatzes. So kann PC2-6400-Speicher im Single-Channel-Modus ca. 6,4 Gigabyte/s an Daten zum Speichercontroller transferieren, im Dual-Channel-Modus sind es ca. 12,8 Gigabyte/s.

Um wie viel sich die Arbeitsgeschwindigkeit durch den Einsatz von Dual Channel jedoch tatsächlich steigert, hängt von den benutzten Programmen, den Speicherzugriffsmustern und der CPU ab (siehe Cache und Prefetching). Bei der klassischen Chipsatz-Architektur kann eine Leistungssteigerung bis ca. 5 % gegenüber dem Single-Channel-Betrieb erwartet werden. Bei Pentium-4-Systemen kann diese durch den speziellen Front Side Bus (Quad Data Rate) auch (theoretisch) höher ausfallen. Durch die Optimierungen im Cache der CPUs sind die Vorteile heute fast nicht mehr messbar.

Bei Systemen mit CPU-Internen Speichercontrollern (AMD Athlon 64 usw.) liegt die praktische Leistungssteigerung durch die tatsächliche Verdoppelung der Bandbreite im Bereich von bis zu 20 %, bei intensiv vom Speicherdurchsatz abhängigen Anwendungen (zum Beispiel Datenkompression) auch wesentlich höher und bei synthetischen Speicher-Benchmarks entsprechend annähernd 100 %. Systeme mit integrierter Grafik profitieren ebenfalls stark, da sich die CPU und die GPU die Speicherbandbreite teilen müssen.

Dual Channel Asymmetric Die Dual-Channel-Asymmetric-Konfiguration wird zum Beispiel vom Intel-Chipsatz 965 unterstützt. Der Unterschied gegenüber dem Dual Channel Symmetric Mode, wie ihn Intel beschreibt, ist, dass die zwei Speicherkanäle nicht mit der gleichen Speicherkapazität arbeiten. Im Dual-Channel-Symmetric-Modus erfolgen Zugriffe nach dem Dual-Channel-Verfahren und sind somit schneller. Dabei spielt die Anzahl der Module keine Rolle.

Bestückt der Anwender die Kanäle mit unterschiedlichen Speicherkapazitäten, erfolgt der Speicherzugriff im so genannten Single Channel Mode beziehungsweise im Dual Channel Asymmetric Mode. In beiden Modi erfolgt der Speicherzugriff nach dem Single-Channel-Verfahren, so dass die Speicherperformance gegenüber dem Dual-Channel-Symmetric-Modus entsprechend niedrig liegt.

In allen Betriebsmodi richtet sich die Taktrate des Gesamtspeichers nach der langsamsten Arbeitsfrequenz eines einzelnen Speichermoduls, die das SPD-Register in kodierter Form enthält. Ist das Mainboard zum Beispiel mit einem DDR2-533- und einem DDR2-400-Speichermodul bestückt, arbeitet der gesamte Systemspeicher nur mit DDR2-400-Timings.

Dual Channel Symmetric Damit der Speichercontroller optimal mit 128-Bit-Speicherzugriffen arbeiten kann, sollten beide Kanäle mit gleicher Speicherkapazität ausgestattet werden. Dazu zwei Beispiele: