Nach und nach kommt der Compute-Express-Link-Standard auf den Markt: Obwohl es noch keine Prozessoren mit Unterstützung gibt, sind viele der Infrastrukturelemente für den neuen Interconnect und die darauf basierenden Konzepte bereits fertig – insbesondere neue Controller und Speichermodule werden regelmäßig vorgeführt. Aber der Standard selbst entwickelt sich weiter. In der Version 1.1, deren Spezifikationen bereits 2019 veröffentlicht wurden, wurden lediglich die Grundlagen gelegt.
Aber bereits in Version 2.0 erhielt CXL viele Neuerungen, die es uns ermöglichen, nicht nur über einen neuen Bus zu sprechen, sondern über ein ganzes Konzept und eine Änderung der Herangehensweise an die Serverarchitektur. Und jetzt hat das Konsortium, das für die Entwicklung des Standards verantwortlich ist, die neuesten Spezifikationen der Version 3.0 veröffentlicht, die die Fähigkeiten von CXL weiter erweitern.
Und nicht nur erweitert: In Version 3.0 erhielt der neue Standard Unterstützung für 64 GT/s, ohne dabei die Verzögerung zu erhöhen. Was nicht verwundert, da es auf dem PCIe 6.0-Standard basiert. Die Hauptanstrengungen der Entwickler konzentrierten sich jedoch auf die Weiterentwicklung der Ideen der Disaggregation von Ressourcen und der Schaffung einer zusammensetzbaren Infrastruktur.
Das CXL 3.0-Fabric selbst ermöglicht jetzt die Erstellung und Verbindung von Multi-Headed-Geräten, erweiterte Factory-Management-Funktionen, verbesserte Unterstützung für Speicherpools, erweiterte Kohärenzmodi und Unterstützung für Multi-Level-Switching. Gleichzeitig hat CXL 3.0 die Abwärtskompatibilität mit allen vorherigen Versionen beibehalten – 2.0, 1.1 und sogar 1.0. In diesem Fall werden einige der verfügbaren Funktionen einfach nicht aktiviert.
Eine der wichtigsten Innovationen ist das Multilevel-Switching. Jetzt kann die Topologie einer CXL 3.0-Fabric fast alles sein, von linear bis kaskadiert, mit Gruppen von Switches, die mit übergeordneten Switches verbunden sind. Gleichzeitig unterstützt jeder Root-Port des Prozessors die gleichzeitige Verbindung von Geräten verschiedener Typen über den Switch in beliebiger Kombination.
Eine weitere interessante Neuerung war die Unterstützung des direkten Peer-to-Peer (P2P)-Speicherzugriffs. Einfach ausgedrückt können mehrere Beschleuniger, die sich beispielsweise in benachbarten Racks befinden, direkt miteinander kommunizieren, ohne die Host-Prozessoren zu beeinträchtigen. Zugriffsschutz und Kommunikationssicherheit sind in jedem Fall gewährleistet. Darüber hinaus ist es möglich, den Speicher jedes Geräts in 16 unabhängige Segmente zu unterteilen.
Gleichzeitig wird eine hierarchische Organisation von Gruppen unterstützt, innerhalb derer die Kohärenz der Inhalte von Speicher und Caches sichergestellt ist (Invalidierung vorgesehen). Neben dem exklusiven Zugriff auf Speicher aus dem Pool ist nun auch der gemeinsame Zugriff mehrerer Hosts auf einen Speicherblock auf einmal möglich, zudem mit Hardware-Unterstützung für Kohärenz. Das Pooling wird nicht mehr der Software von Drittanbietern überlassen, sondern über einen standardisierten Fabrikmanager durchgeführt.
Die Kombination neuer Funktionen bringt die Idee der Trennung von Speicher- und Rechenressourcen auf eine neue Ebene: Es ist jetzt möglich, Systeme zu bauen, in denen ein einziger Speicherpool, der mit der CXL 3.0-Fabric (Global Fabric Attached Memory, GFAM) verbunden ist, wirklich existiert getrennt von den Rechenmodulen. Gleichzeitig stößt die Adressierbarkeit von bis zu 4096 Anschlusspunkten eher an die physikalischen Grenzen der Fabrik.
Der Pool kann verschiedene Arten von Speicher enthalten – DRAM, NAND, SCM – und sowohl direkt als auch über CXL-Switches mit Rechenleistung verbunden werden. Es wird ein Mechanismus bereitgestellt, um von den Geräten selbst über ihren Typ, ihre Fähigkeiten und andere Eigenschaften zu berichten. Eine solche Architektur verspricht in der Welt des maschinellen Lernens gefragt zu sein, in der Datensätze für neuronale Netze der nächsten Generation bereits wahrhaft gigantische Größen erreichen.
Die CXL-Gruppe hat derzeit 206 Mitglieder, darunter Intel, Arm, AMD, IBM, NVIDIA, Huawei, große Cloud-Anbieter wie Microsoft, Alibaba Group, Google und Meta sowie eine Reihe großer Hersteller von Serverhardware, darunter HPE und Dell EMC.
2022-08-02 13:13:46
Autor: Vitalii Babkin