CXL

Was bringt Compute Express Link?

08.08.2022 von Jürgen  Hill
Mit Intels neuen Sapphire-Rapids-CPUs und AMDs Genoa-Prozessoren wird auch der neue Standard Compute Express Link – kurz CXL – Einzug halten. Wir zeigen, was die neue Technik bringt.
Mit dem neuen CXL-Standard könnte sich die Art, wie wir Rechenzentren und Server bauen, ändern.
Foto: Stock image - shutterstock.com

Als neuer Interconnection-Standard soll der Compute Express Link (CXL) die Kommunikation zwischen CPU und RAM-Speicher sowie Devices steuern. Technisch basiert CXL auf PCI Express (PCIe). Ursprünglich wurde CXL 2019 von Intel entwickelt. Mittlerweile ist CXL ein offener Standard und im ebenfalls 2019 gegründeten CXL Consortium sind fast alle namhaften Hardware-Player vertreten.

Branchenkenner gehen davon aus, dass mit Intels Sapphire Rapids sowie AMDs Genoa die ersten Server mit CXL auf den Markt kommen werden. Diese sollen CXL in der Version 1.1 unterstützen.

Die CXL-Technik

Im CXL-Standard sind drei Protokolle sowie drei primäre Device-Arten definiert.

Die Protokolle:

Die drei primären Gerätetypen von CXL:

Das bringt CXL

In der aktuellen Version 1.1 konzentriert sich CXL noch auf Speichererweiterungen und Tiered-Memory-Anwendungen. Sie benötigen mehr RAM als DIMM-Steckplätze im Rechner verfügbar sind? Dann können Sie einfach ein CXL-Speichermodul in einen leeren PCIe 5.0-Steckplatz stecken, um mehr RAM zu erhalten. Ja, die Performance ist etwas geringer und die Latenzzeit etwas höher, aber Sie müssen keine extrem teuren Speicherriegel wie etwa Samsungs kommende 512-GB-DDR5-DIMMs kaufen, um ihren Speicher aufzurüsten.

Technisch basiert das CXL-Interface auf PCI-Express.
Foto: daniiD - shutterstock.com

Arbeitsspeicher gehört immer noch zu den teuersten Komponenten im Rechenzentrum. Dabei ist zu erwarten, dass der Bedarf angesichts von Anwendungen wie KI/ML, Big Data und wachsenden Datenbank-Workloads weiter steigen wird. Hier bietet sich dann CXL als kostengünstige Alternative zur klassischen DRAM-Erweiterung an.

Und da jedes Erweiterungsmodul über einen eigenen Speichercontroller verfügt, gibt es nach oben hin keine Grenzen für die Anzahl der DRAM-Speicher, die Sie einem System hinzufügen können. Dabei muss es sich nicht einmal um dieselbe Art von Speicher handeln. Um Kosten zu sparen, könnte beispielsweise eine bescheidene Menge DDR5-Speicher direkt an die CPU anschlossen werden und ein langsameres, aber dafür billigeres DDR4-CXL-Speichererweiterungsmodul als Teil einer abgestuften Speicherhierarchie verwendet werden.

Entsprechende Speichermodule hat etwa Marvell bereits angekündigt. Der Hersteller wird voraussichtlich eine erste Reihe von CXL-Speichermodulen mit der Einführung der Sapphire Rapids und Genoa auf den Markt bringen. Auch Samsung hat ein 512-GB-CXL-DRAM-Modul in der Pipeline und wartet auf kompatible Systeme, in denen es eingesetzt werden kann.

Richtig interessant wird es, wenn die ersten CXL 2.0-kompatiblen Systeme auf den Markt kommen. Schließlich geht es bei CXL um mehr als das Hinzufügen von Speicher über einen PCIe-Steckplatz. Mit CXL 2.0 kommt eine Switching-Funktionalität, die dem PCIe-Switching ähnelt. Da CXL jedoch den direkten Speicherzugriff durch die CPU unterstützt, können Sie es nicht nur aus der Ferne einsetzen, sondern auch mehrere Systeme in die Lage versetzen, es im Rahmen eines Speicher-Poolings zu nutzen.

Kein Platz mehr für neuen DDR-RAM? Mit CXL lassen sich Speichererweiterungen über einen PCIe-Steckplatz installieren.
Foto: Petr Svoboda - shutterstock.com

Damit sind eigenständige Speicher-Appliances vorstellbar, die mit Terabytes an preiswertem DDR4-Speicher bestückt sind. Auf diese Appliances können mehrere Systeme gleichzeitig zugreifen, ähnlich wie bei einem Storage-Array, an das mehrere Systeme angeschlossen sind. Auf diese Weise könnte jedem Server im Rack RAM-Speicher zugewiesen werden, und ungenutzter Speicher in einem eigenständigen Server wäre nicht mehr unerreichbar.

CXL verändert den Aufbau von Rechenzentren

Bislang ging es nur darum, wie speicherintensive Anwendungen und Arbeitslasten von CXL profitieren. Doch CXL hat auch Auswirkungen auf andere Peripheriegeräte wie GPUs, DPUs, NICs etc. Wie dieses Zusammenspiel funktioniert, wurde in der kürzlich verabschiedeten CXL-3.0-Spezifikation definiert. Setzt sich CXL 3.0 durch, könnte dies die Art und Weise, wie Systeme und Rechenzentren aufgebaut sind, dramatisch ändern.

Anstatt ganze Server zu kaufen, die jeweils mit allem ausgestattet sind, was sie brauchen, und dazu noch ein paar CXL-Speicher-Appliances, könnten mit CXL 3.0 wirklich disaggregierte Rechenarchitekturen realisiert werden. Das bedeutet, dass Speicher, Storage, Netzwerk und andere Peripherie gepoolt und dynamisch von mehreren Hosts/Servern angesprochen werden. Hierzu werden mehrere CXL-Switches zu einer Fabric zusammengefügt. Die Idee ist im Grunde nichts anderes als das Zusammenschalten einer Reihe von Netzwerk-Switches, so dass Clients auf der einen Seite des Netzwerks effizient mit Systemen auf der anderen Seite kommunizieren können. Aber anstelle von TCP und UDP über Ethernet läuft CXL über PCIe.