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).
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
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
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.[2]
Dieser Artikel oder nachfolgende Abschnitt ist nicht hinreichend mit Belegen (beispielsweise Einzelnachweisen) ausgestattet. Angaben ohne ausreichenden Beleg könnten demnächst entfernt werden. Bitte hilf Wikipedia, indem du die Angaben recherchierst und gute Belege einfügst.
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.[3] Dazu zwei Beispiele:
Speicherkanal 1
Speicherkanal 2
Slot 1
512 MB
Slot 1
512 MB
Slot 2
unbelegt
Slot 2
unbelegt
oder
Speicherkanal 1
Speicherkanal 2
Slot 1
256 MB
Slot 1
512 MB
Slot 2
256 MB
Slot 2
unbelegt
Single Channel
Mit dieser Bestückung arbeitet der Speichercontroller im langsamen Single-Channel-Modus, da nur eine Bank in einem Speicherkanal belegt ist:
Speicherkanal 1
Speicherkanal 2
Slot 1
512 MB
Slot 1
unbelegt
Slot 2
unbelegt
Slot 2
unbelegt
oder
Speicherkanal 1
Speicherkanal 2
Slot 1
unbelegt
Slot 1
unbelegt
Slot 2
unbelegt
Slot 2
512 MB
Es ist auch möglich, bei Dual-Channel-Bestückung im BIOS manuell in den Single-Channel-Modus zu schalten, zum Beispiel wenn es im Dual-Channel-Modus zu Stabilitätsproblemen kommt (das kann zum Beispiel passieren, wenn die entsprechende Speicherkonfiguration nicht in der Qualified Vendor List (QVL) des Mainboardherstellers aufgelistet ist).
Dual Channel Asymmetric
Obwohl beide Speicherkanäle bestückt sind, würde ohne Flex-Memory-Technologie der Speichercontroller nur langsame Single-Channel-Zugriffe durchführen.[4]
Befinden sich in den beiden Kanälen Speichermodule mit unterschiedlichen Gesamtkapazitäten, wie zum Beispiel 512 MByte und 256 MByte, können durch die Flex-Mode-Technologie dennoch schnelle Dual-Channel-Speicherzugriffe (128 Bit) durchgeführt werden. Das erfolgt jedoch nur im gemeinsamen Speicheradressbereich von 512 MByte. (256 MByte an Kanal A, 256 MByte an Kanal B.) Der restliche Speicher von 256 MByte des 512 MByte-Moduls arbeitet weiter nur im Single-Channel-Modus.
Speicherkanal 1
Speicherkanal 2
Slot 1
512 MB
Slot 1
unbelegt
Slot 2
unbelegt
Slot 2
256 MB
Im folgenden Beispiel arbeitet die Hälfte des Speichers von Kanal A (512 MB) im Single Mode mit 64 Bit, die restlichen 512 MB von Kanal A sowie die 512 MB von Kanal B im Dual Channel Mode mit 128 Bit:
Speicherkanal 1
Speicherkanal 2
Slot 1
512 MB
Slot 1
unbelegt
Slot 2
512 MB
Slot 2
512 MB
Triple Channel
Triple Channel (englisch für „Dreifach-Kanal“) ist ein Begriff aus der Rechentechnik, welcher für die technische Beschreibung von Datenspeicher genutzt wird und eine Weiterentwicklung der Speichertechnik Dual Channel darstellt. Sie kam von 2008 bis 2011 zum Einsatz.
Mit Triple Channel wird die Fähigkeit unter anderem von PC-Chipsätzen und Speichercontrollern bezeichnet, mindestens drei Arbeitsspeicher-Module gleicher Kapazität parallel zu betreiben, wodurch eine höhere Datentransferrate und eine damit verbundene Leistungssteigerung erzielt wird. Dafür sind drei separate Busse vom Speichercontroller zu den einzelnen Modulen nötig. Die Technik kam aber nur bei Intel Mainboards mit dem X58 Chipsatz und damit dem Sockel 1366 zum Einsatz und wurde ab der nächsten Generation mit Quad Channel abgelöst.
Wirkung
Die Technik, die schon beim Dual-Channeling eine Verdopplung der Transferrate durch zeitversetztes Zugreifen auf mindestens zwei Module funktionierte, wird nun mit drei Modulen durchgeführt, was zur Verdreifachung der Transferrate führt. Die Latenzzeiten der Speicher gehen nicht mehr stark in die Zugriffszeit ein, was zu der Leistungssteigerung führt. Damit dieses Verfahren sauber funktioniert, müssen immer drei Module gleicher Spezifikation genutzt werden.
Damit wird die Fähigkeit von PC-Chipsätzen und Speichercontrollern bezeichnet, vier Arbeitsspeicher-Module gleicher Kapazität parallel zu betreiben, wodurch eine höhere Datentransferrate und eine damit verbundene Leistungssteigerung erzielt wird. Dafür sind vier separate Busse vom Speichercontroller zu den einzelnen Modulen nötig. Quad-Channel stellt eine Weiterentwicklung der Speichertechnologien Dual Channel (Intel/AMD) und Triple Channel (Intel) dar.
Wirkung
Die Methode, die schon bei Dual-Channeling eine Verdopplung der Transferrate durch zeitversetztes Zugreifen auf mindestens zwei Module bewirkte, wird nun mit vier Modulen durchgeführt, was zur Vervierfachung der möglichen Transferrate führt. Die Latenzzeiten der Speicher gehen damit nicht mehr so stark in die Zugriffszeit ein, was letztlich zu der Leistungssteigerung führt. Damit dieses Verfahren sauber funktionieren kann, müssen immer vier Module mit exakt gleicher Spezifikation benutzt werden.
Geschichte
Die ersten Quad-Channel-fähigen Mainboards waren mit Einführung von AMDs Magny-Cours-Prozessor Anfang 2010 verfügbar. Intel-Mainboards mit X79-Chipsatz folgten Ende 2011. Unabdingbar für die Nutzung waren hier vier Speichermodule gleicher Bauart und ein kompatibler Prozessor (Magny-Cours bzw. Sandy Bridge-E oder später Bulldozer bzw. Ivy Bridge).
Prozessoren
AMD Threadripper
AMD Ryzen Threadripper 3rd gen 3990X
AMD Ryzen Threadripper 3rd gen 3970X
AMD Ryzen Threadripper 3rd gen 3960X
AMD Ryzen Threadripper 2nd gen 2990WX
AMD Ryzen Threadripper 2nd gen 2970WX
AMD Ryzen Threadripper 2nd gen 2950X
AMD Ryzen Threadripper 2nd gen 2920X
AMD Ryzen Threadripper 1950X
AMD Ryzen Threadripper 1920X
AMD Ryzen Threadripper 1900X
AMD Epyc
Epyc 7003 series processors
Epyc 7002 series processors
Epyc 7001 series processors
Intel Core
Intel Core i9-10900X
Intel Core i7-9800X
Intel Core i9-7980XE
Intel Core i9-7940X
Intel Core i9-7900X
Intel Core i7-7820X
Intel Core i7-7800X
Intel Core i7-6950X
Intel Core i7-6900K
Intel Core i7-6850K
Intel Core i7-6800K
Intel Core i7-5960X
Intel Core i7-5930K
Intel Core i7-5820K
Intel Core i7-4960X
Intel Core i7-4930K
Intel Core i7-4820K
Intel Core i7-3970X
Intel Core i7-3960X
Intel Core i7-3930K
Intel Core i7-3820
Intel Xeon
Intel Xeon E5-x6xx v4
Intel Xeon E7-x8xx v3
Intel Xeon E5-x6xx v3
Intel Xeon E7-x8xx v2
Intel Xeon E5-x6xx v2
Intel Xeon E7-x8xx
Intel Xeon E5-x6xx
Hexa-Channel
Serverprozessoren der Qualcomm Centriq[5] und Prozessoren der Intel Xeon Scalable-Plattform (Platinum bis Q3/20[6], Gold bis Q3/20[7], Silber bis Q1/20[8] und Bronze[9]) unterstützen die Hexa-Channel-Architektur.
Octa-Channel
CaviumThunderX2-Serverprozessoren, AMDs Serverprozessoren von ihrer Epyc-Plattform[10] und der Threadripper PRO-Reihe professioneller Workstation-Prozessoren aus der AMD Ryzen PRO-Produktfamilie[11] unterstützen die Octa-Channel-Architektur.
↑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