Deutsch

Überblick über RDMA für Hochgeschwindigkeitsnetzwerke

Veröffentlicht am 19. Dez 2023 by
155

Verständnis von RDMA für Hochgeschwindigkeitsnetze

Remote Direct Memory Access (RDMA) steht an der Spitze der Hochgeschwindigkeits-Zugriffstechnologie für Netzwerkspeicher und hat die Art und Weise, wie Programme schnell auf den Speicher von Remote- Rechenknoten zugreifen revolutioniert. Das dieser außergewöhnlichen Geschwindigkeit zugrunde liegende Prinzip wird im Folgenden anschaulich dargestellt. RDMA stellt einen Paradigmenwechsel dar, da der Netzwerkzugriff nicht mehr den Kernel des Betriebssystems (z. B. Sockets, TCP/IP) durchlaufen muss. Dieser strategische Bypass verringert den mit Kernel-Operationen verbundenen CPU-Zeitverbrauch und ermöglicht den direkten Speicherzugriff auf die Netzwerkkarte (NIC), die in bestimmten Kontexten auch als Host Channel Adapter (HCA) bezeichnet wird.

traditionell vs rdma

Im Bereich der Hardware-Implementierungen zeichnet sich RDMA durch drei Schlüsseltechnologien aus: InfiniBand, RoCE und iWARP. InfiniBand und RoCE haben sich als die vorherrschenden Technologien erwiesen, was auch von Experten in der Branche anerkannt wird.

InfiniBand: Die Spitze der Bandbreite

Derzeit umfasst das InfiniBand-System Technologien für Hochgeschwindigkeits-Übertragungen von 100G und 200G. Dazu gehören auch die geschützten Begriffe Enhanced Data Rate (EDR, 100G) und High Data Rate (HDR, 200G). Es sollte erwähnt werden, dass einige Marken jetzt Lösungen mit noch höheren Raten anbieten. FS hat beispielsweise eine 400GB-Netzwerkkarte und optische 800G-Module eingeführt. Die InfiniBand-Technologie entwickelt sich schnell weiter.

Trotz seiner außergewöhnlichen Fähigkeiten wird InfiniBand von vielen IT-Fachleuten aufgrund seiner hohen Kosten oft nicht beachtet, sodass es für den allgemeinen Gebrauch weniger interessant ist. In den Supercomputing-Zentren der großen Universitäten und Forschungseinrichtungen ist InfiniBand jedoch nahezu unverzichtbar, insbesondere für die Unterstützung kritischer Supercomputing-Aufgaben.

Im Gegensatz zu herkömmlichen Switches verwendet InfiniBand eine besondere Netzwerktopologie, die als „Fat Tree“ bekannt ist, um eine nahtlose Kommunikation zwischen den Netzwerkkarten zweier beliebiger Rechnerknoten zu ermöglichen. Die Fat-Tree-Struktur besteht aus zwei Schichten: der Core-Schicht, die für die Weiterleitung des Datenverkehrs zuständig und von den Rechenknoten getrennt ist und der Access-Schicht, die die verschiedenen Rechenknoten miteinander verbindet.

Die hohen Kosten für die Implementierung einer Fat-Tree-Topologie in einem InfiniBand-Netz sind vor allem darauf zurückzuführen, dass z. B. bei einem Aggregations-Switch mit 36 Ports die Hälfte an Rechenknoten und die andere Hälfte an Core-Switches der oberen Schicht für eine verlustfreie Kommunikation angeschlossen werden muss. Jedes Kabel kostet etwa 1.300 USD, und für eine verlustfreie Kommunikation sind redundante Verbindungen erforderlich.

Fett-Baum-Topologie

Das Sprichwort „Qualität hat ihren Preis“ trifft auf InfiniBand zu. Es bietet unbestreitbar eine unvergleichlich hohe Bandbreite und eine geringe Latenz. Laut Wikipedia weist InfiniBand im Vergleich zu Ethernet eine deutlich geringere Latenz auf, die bei 100 Nanosekunden bzw. 230 Nanosekunden liegt. Diese außergewöhnliche Leistung hat InfiniBand zu einer Schlüsseltechnologie in einigen der weltweit führenden Supercomputern gemacht, die von Branchenriesen wie Microsoft, NVIDIA und nationalen Laboratorien in den Vereinigten Staaten genutzt werden.

Entfaltung des Potenzials von RoCE: Eine erschwingliche RDMA-Lösung

Im Bereich der Netzwerktechnologien erweist sich RoCE (RDMA over Converged Ethernet) als kostengünstige Alternative, insbesondere im Vergleich zu hochpreisigen Varianten wie InfiniBand. Obwohl RoCE nicht als besonders kostengünstig gilt, bietet es eine budgetfreundliche Option, die RDMA-Funktionen über Ethernet bereitstellt. In jüngster Zeit hat RoCE eine rasante Entwicklung erfahren und sich als praktikabler Ersatz für InfiniBand etabliert, vor allem in Szenarien, in denen die hohen Kosten für InfiniBand einen entscheidenden Faktor darstellen.

Trotz seiner Erschwinglichkeit ist es schwierig, ein wirklich verlustfreies Netzwerk mit RoCE zu erreichen, da die Gesamtkosten des Netzwerks unter 50 % der Kosten von InfiniBand liegen.

Unterstützung für Modell-Training: GPUDirect RDMA

Im Bereich des Modelltrainings in großem Maßstab sind die Kommunikationskosten zwischen den Knoten sehr hoch. Mit der Verschmelzung von InfiniBand und Grafikprozessoren (GPUs) wird eine transformative Lösung möglich, die als GPUDirect RDMA bekannt ist. Diese Innovation erleichtert die direkte Kommunikation zwischen GPUs über Knoten hinweg und umgeht die Beteiligung von Speicher und CPU. Einfach ausgedrückt: Der komplizierte Austausch von Nachrichten zwischen den GPUs zweier Knoten wird direkt über die InfiniBand-Netzwerkskarten abgewickelt, wobei der herkömmliche Weg über CPU und Speicher umgangen wird.

GPUDirect RDMA gewinnt im Zusammenhang mit dem Modelltraining in großem Maßstab, bei dem die Modelle auf den GPUs angesiedelt sind, zunehmend an Bedeutung. Der herkömmliche Prozess des Kopierens von Modellen auf die CPU erfordert bereits einen beträchtlichen Zeitaufwand und die Übertragung der Modelle auf andere Knoten über die CPU würde das langsame Tempo der Datenübertragung nur noch verschlimmern.

gpu-direct-rdma

Optimierung von großen Modellnetzwerken: Strategische Konfiguration

In der Welt der großen Modelle hängt die Erzielung einer optimalen Leistung von einer sorgfältigen Konfiguration ab, insbesondere bei der Kombination von GPU und InfiniBand-Netzwerkkarten. Hier stellen wir das DGX-System unseres Partners NVIDIA vor, das eine Eins-zu-Eins-Kopplung von GPU und InfiniBand-Netzwerkkarte ermöglicht und einen Benchmark setzt. In diesem Paradigma kann ein Standard-Rechenknoten neun InfiniBand-NICs unterbringen. Davon ist eine für das Speichersystem bestimmt, während die übrigen acht den einzelnen GPU-Karten zugewiesen sind.

Diese Konfiguration ist zwar optimal, aber mit beträchtlichen Kosten verbunden, sodass oft nach kostenfreundlicheren Alternativen gesucht wird. Ein vorteilhafter Kompromiss besteht darin, ein Verhältnis von 1 InfiniBand-Netzwerkkarte zu 4 GPU-Karten zu wählen.

In praktischen Szenarien finden sowohl die GPU als auch InfiniBand ihre Anschlusspunkte an einem PCI-E-Switch, der in der Regel zwei GPUs pro Switch hat. Das ideale Szenario ist, wenn jedem Grafikprozessor sorgfältig eine eigene InfiniBand-Netzwerkkarte zugewiesen wird. Herausforderungen entstehen jedoch, wenn sich zwei GPUs eine einzige InfiniBand-Netzwerkkarte und einen PCI-E-Switch teilen. Diese Konfiguration führt zu Konflikten zwischen den Grafikprozessoren, die um den Zugriff auf die gemeinsame InfiniBand-Netzwerkkarte konkurrieren.

PCI-E Switch-Anschluß

Die Anzahl der InfiniBand-Netzwerkkarten ist ein entscheidender Faktor, der sich direkt auf die Konkurrenzsituation und folglich auf die Kommunikationseffizienz zwischen den Knoten auswirkt. Das folgende Diagramm veranschaulicht diese Korrelation. Bei einer einzelnen Netzwerkkarte mit 100 Gbit/s liegt die Bandbreite bei 12 GB/s, wobei die Bandbreite mit zunehmender Anzahl von Netzwerkkarten fast linear ansteigt. Stellen Sie sich das transformative Potenzial einer Konfiguration mit acht H100-Karten in Kombination mit acht 400G InfiniBand NDR-Karten vor, die eine erstaunlich hohe Datenübertragungsrate ermöglicht.

nvidia-ib-bw

Eine Netzwerkkarte pro GPU ist die ideale Lösung:

gpu-netzwerk-lösung

Architektur der Spitzenklasse: Rail-Optimierung für große Modellnetztopologie

Bei der Arbeit mit großen Modellen liegt der Schlüssel zum Erfolg in der Konfiguration einer speziellen Fat-Tree-Netztopologie. Im Gegensatz zu den herkömmlichen Fat Trees des High-Performance Computing (HPC) bietet „Rails“ eine bahnbrechende Leistungssteigerung.

Fat-Tree am unteren Ende und schienenoptimierte Topologie

Diese Abbildung zeigt eine grundlegende Version der Fat-Tree- und Rails-optimierten Topologie. Sie umfasst zwei Switches, wobei der MQM8700 einen HDR-Switch darstellt. Die Verbindungsgeschwindigkeit zwischen den beiden HDR-Switches wird durch vier HDR-Kabel sichergestellt. Jeder DGX-GPU-Knoten verfügt über insgesamt neun InfiniBand-Karten (IB), die im Diagramm als Host Channel Adapter (HCA) bezeichnet werden. Davon ist eine Karte ausschließlich der Speicherung gewidmet (Storage Target), während die übrigen acht Karten für das Training großer Modelle verwendet werden. HCA1/3/5/7 sind mit dem ersten Switch verbunden, während HCA2/4/6/8 mit dem zweiten Switch verbunden sind.

Für Hochgeschwindigkeitsschienen optimierte Topologie

Um ein nahtloses, leistungsstarkes Netzwerk zu erhalten, wird empfohlen, eine ungehinderte, vollständig optimierte Rail-Topologie zu verwenden, wie im obigen Diagramm dargestellt. Jeder DGX-GPU-Knoten ist mit acht IB-Karten ausgestattet, die jeweils mit einem eigenen Switch verbunden sind. Diese Switches, die als Leaf-Switches bezeichnet werden, sind insgesamt acht. Die Zuordnung ist sehr genau: HCA1 ist mit dem ersten Leaf-Switch verbunden, HCA2 mit dem zweiten und so weiter. Um Hochgeschwindigkeitsverbindungen zwischen den Leaf-Switches zu ermöglichen, kommen die Spine-Switches ins Spiel.

Die zugrundeliegende Topologie, die im folgenden Diagramm dargestellt ist, besteht aus zwei grünen Switches als Spine-Switches und vier blauen Switches als Leaf-Switches. Insgesamt 80 Kabel verbinden die blauen und grünen Switches miteinander, wobei die blauen Switches strategisch darunter positioniert und mit den Rechenknoten verbunden sind. Das Wesentliche an dieser Konfiguration ist die Fähigkeit, Engpässe zu umgehen, indem jeder IB-Karte ermöglicht wird, mit allen anderen IB-Karten innerhalb des Netzwerks extrem schnell zu kommunizieren. Dies führt zu einer Umgebung, in der jede GPU nahtlos mit anderen GPUs in nie dagewesener Geschwindigkeit kommunizieren kann.

Spine-to-Leaf-zu-Server-Knoten-Diagramm

Ausgezeichnete Leistung: Die InfiniBand- und RoCE-Lösungen von FS

In der komplizierten Welt der verlustfreien Hochleistungsnetzwerke hängt die Wahl zwischen InfiniBand und RoCE von den spezifischen Anforderungen Ihrer Anwendung und Infrastruktur ab. Sowohl InfiniBand als auch RoCE zeichnen sich durch niedrige Latenz, hohe Bandbreite und minimalen CPU-Overhead aus und eignen sich daher besonders für High-Performance-Computing.

FS bietet ein umfangreiches Sortiment an Hochgeschwindigkeitsprodukten, die sowohl InfiniBand- als auch Ethernet-Lösungen abdecken. Unsere Module sind in einer Vielzahl von Geschwindigkeiten erhältlich, von 40G bis 800G, mit Optionen für Multi-Rate-DACs und AOCs, um die unterschiedlichen Anforderungen unserer Kunden zu erfüllen. Darüber hinaus bieten wir NVIDIA® Switches und NICs an, um die Netzwerkfähigkeiten weiter zu verbessern. Diese Produkte zeichnen sich nicht nur durch ihre außergewöhnliche Leistung aus, sondern bieten auch eine hervorragende Ausgangsbasis für die Beschleunigung von Geschäftsabläufen zu einem guten Preis.

Das könnte Sie auch interessieren

Kenntnisse
Kenntnisse
See profile for Jason.
Jason
Die Vorteile und Nachteile der Glasfaserkabel
07. Aug 2020
85.7k
Kenntnisse
Kenntnisse
See profile for Sheldon.
Sheldon
TCPIP vs. OSI: Was ist der Unterschied?
06. Jul 2022
72.7k
Kenntnisse
See profile for Sheldon.
Sheldon
Das ABC von PON: OLT, ONU, ONT und ODN
19. Aug 2020
27.4k
Kenntnisse
Kenntnisse
See profile for Sheldon.
Sheldon
Grundlagen von optischen Verteilern (ODF)
02. Apr 2019
4.0k
Kenntnisse
See profile for Sheldon.
Sheldon
LACP vs. PAGP: Was ist der Unterschied?
06. Jun 2022
6.6k
Kenntnisse
See profile for Vincent.
Vincent
Einführung zu BiDi-Transceivern
26. Jun 2020
9.8k
Kenntnisse
See profile for Moris.
Moris
Simplex- vs. Duplex-Glasfaserkabel
10. Jun 2021
39.3k