Supermicro und NVIDIA liefern optimierte Systeme für KI, ML und mehr
Moderne Unternehmen erzielen erhebliche Wettbewerbsvorteile durch den Einsatz fortschrittlicher Anwendungen und Datenverarbeitung in ihren Unternehmen und Betrieben. Dazu gehören KI große Sprachmodelle wie ChatGPT, LLaMa usw., Analysen des maschinellen Lernens auf der Grundlage riesiger Mengen von Trainings- und Echtdaten, komplexe 3D- und Finite-Elemente-Modelle und -Simulationen sowie andere daten- und rechenintensive Anwendungen.
All diese Arbeitslasten haben zumindest eines gemeinsam: Sie profitieren erheblich von einem beschleunigten Zugriff auf den Speicher über jedes beliebige Schichtmodell, das Sie verwenden möchten. Das ist einer der Hauptgründe, warum so viele Unternehmen und Dienstanbieter auf GPU-basierte Server umgestiegen sind, um große, komplizierte Datensätze und die damit verbundenen Arbeitslasten zu verarbeiten. Sie sind viel besser in der Lage, diese Arbeitslasten zu bewältigen und können solche Aufgaben schneller erledigen als herkömmliche Server mit typischeren Speicherkonfigurationen (z. B. lokaler RAM und NVMe-SSDs mit zusätzlichen Speicherebenen im LAN oder in der Cloud).
Das Geheimnis zur Steigerung des Durchsatzes ist eine geringere Latenzzeit und eine bessere Speicherbandbreite. Dies schlägt sich direkt in einer verbesserten Produktivität und Leistungsfähigkeit nieder, vor allem durch clevere IO- und Netzwerktechniken, die auf direktem und ferngesteuertem Speicherzugriff beruhen, wie im Folgenden erläutert wird. Schnelleres Modelltraining und schnellere Auftragsabwicklung bedeuten, dass KI Anwendungen schneller bereitgestellt werden können und die Arbeit schneller erledigt wird, was die Wertschöpfungszeit verkürzt.
Direkter Speicherzugriff und entfernte Äquivalente
Direkter Speicherzugriff (auch DMA genannt) wird seit den Anfängen der Computertechnik zur Beschleunigung der IO eingesetzt. Bei DMA handelt es sich im Wesentlichen um Speicher-zu-Speicher-Übertragungen über einen Bus (oder eine andere Schnittstelle) von einem Gerät zum anderen. Dabei wird ein Bereich von Speicheradressen direkt aus dem Speicher des Senders in den Speicher des Empfängers (oder zwischen zwei Parteien bei bidirektionalen Übertragungen) kopiert. Diese Funktion nimmt die CPU aus dem Prozess heraus und beschleunigt die Übertragung, indem sie die Anzahl der Kopiervorgänge reduziert (so dass die CPU die Daten des Absenders nicht in ihren Speicher kopieren und dann aus ihrem Speicher in den Speicher des Empfängers kopieren muss).
Tatsächlich ist die DMA-Leistung auf einem einzelnen System nur durch die Geschwindigkeit des Busses (oder einer anderen Schnittstelle) begrenzt, der die an einer Datenübertragung beteiligten Sende- und Empfangsgeräte verbindet. Bei PCIe 4.0 sind das 16 Gigatransfers pro Sekunde (GT/s), bei PCIe 5.0 sind es doppelt so viele (32 GT/s). Die Datenübertragungsraten sind natürlich aufgrund des Codierungs- und Paketierungs-Overheads langsamer, aber die Nennbandbreite für diese beiden PCIe-Versionen beträgt 64 Gbps (4.0) bzw. 128 Gbps (5.0). Das ist schnell!
Remote DMA (auch bekannt als RDMA) erweitert die Fähigkeit von DMA innerhalb eines einzelnen Computers auf die Arbeit zwischen zwei Geräten über eine Netzverbindung. RDMA basiert in der Regel auf einer einzigartigen Anwendungsprogrammierschnittstelle (API), die mit spezieller Netzwerkhardware und -software zusammenarbeitet, um so viele der Vorteile von lokalem DMA zu bieten, wie die zugrunde liegende Netzwerktechnologie erlaubt.
NVIDIA-Grafikprozessoren unterstützen drei solcher Netzwerktechnologien, geordnet nach abnehmender Geschwindigkeit und Kosten (die schnellste und teuerste zuerst):
- NVIDIA NVLink nutzt die schnellsten proprietären Schnittstellen und Switch-Technologien, um die Datenübertragung zwischen Grafikprozessoren in einem Hochgeschwindigkeitsnetzwerk zu beschleunigen. Bei den standardmäßigen MLPerf Training v3.0 Benchmarks erreicht NVLink derzeit die höchste Leistung aller Technologien. Ein einzelner NVIDIA H100 Tensor Core Grafikprozessor unterstützt bis zu 18 NVLink-Verbindungen mit bis zu 900 Gbit/s (das Siebenfache der effektiven Geschwindigkeit von PCIe 5.0).
- InfiniBand ist ein Hochgeschwindigkeitsnetzstandard, der von der InfiniBand Trade Association (IBTA) überwacht wird und in Hochleistungsnetzen weit verbreitet ist. Die höchsten gemessenen Datenraten liegen ab 2020 bei etwa 1,2 Tbps (~154 GBps).
- Ethernet ist eine Standard-Netzwerktechnologie mit vielen Varianten, darunter das selten verwendete TbE (~125 GBps) und das häufigere 400 GbE (50 GBps). Es hat den Vorteil, dass es erschwinglicher ist, weit verbreitet und in vielen Rechenzentren eine vertraute Technologie ist.
Einsatz von NVIDIA-GPUs in Supermicro
Die NVIDIA RDMA-Technologien können den GPU-basierten Datenzugriff über alle drei vorgenannten Netzwerktechnologien unterstützen. Jede dieser Technologien bietet ein anderes Preis-Leistungs-Verhältnis, bei dem höhere Kosten mit höherer Geschwindigkeit und geringerer Latenz einhergehen. Unternehmen können den Verbindungstyp wählen, der am besten zu ihrem Budget und ihren Anforderungen passt, wobei sie wissen, dass jede Option eine bestimmte Kombination aus Preis und Leistung darstellt, auf die sie sich verlassen können. Da verschiedene KI oder ML-basierte (und andere daten- und rechenintensive Anwendungen) auf einem solchen Server ausgeführt werden, können sie die abgestufte Architektur des GPU-Speichers nutzen, bei der die folgenden Ebenen verfügbar sind (in absteigender Reihenfolge der Leistung, aufsteigend nach Größe und Kapazität):
- 1. Ebene: Der GPU-Speicher ist der schnellste, teuerste und kleinste Datenspeicher (z. B. hat die Tensor H100 GPU 188 GB HBM3 RAM)
- 2. Stufe: Lokale SSDs auf dem PCIe-Bus sind die nächstschnelleren, immer noch teuren SSDs mit der 10- bis 100-fachen Kapazität einer High-End-GPU
- 3. Ebene: Remote-Storage-Server im LAN können mehr als das 1.000-fache der Kapazität der GPUs unterstützen, die auf sie zugreifen
Da KI und ML-Anwendungen sowohl niedrige Latenzzeiten als auch hohe Bandbreiten benötigen, hilft RDMA, die lokalen Vorteile von DMA auf Netzwerkressourcen auszuweiten (abhängig von den zugrunde liegenden Verbindungen). Diese Funktion ermöglicht einen schnellen Zugriff auf externe Daten über Speicher-zu-Speicher-Übertragungen zwischen Geräten (GPU auf der einen Seite, Speichergerät auf der anderen). Der Remote-Adapter arbeitet mit NVLink, InfiniBand oder einer Hochgeschwindigkeits-Ethernet-Variante und überträgt Daten aus dem Speicher eines entfernten Systems in den Speicher eines lokalen Grafikprozessors. NVIDIA Magnum IO bietet eine IO-Beschleunigungsplattform für Rechenzentren zur Unterstützung paralleler, intelligenter IO im Rechenzentrum, um die Speicher-, Netzwerk- und Multi-Node-, Multi-GPU-Kommunikation für die anspruchsvollen Anwendungen zu maximieren, die sie benötigen.
Supermicro verwendet in seinen GPU-Serversystemen NVIDIA-GPUs und die sie unterstützenden Zugriffsmethoden. Dazu gehören lokales DMA, RDMA über seine API sowie Hochleistungsnetzwerke über mehrere NICs und Switches, die alle drei Verbindungstypen unterstützen. Darüber hinaus enthalten Supermicro GPU-Server auch ein oder zwei spezielle ASICs, so genannte Data Processing Units (DPUs), um die beschleunigte IO zu unterstützen, die GPUs liefern können. Diese entlasten die Server-CPUs von zusätzlichem IO-Overhead. Ebenso können solche Server bis zu acht Netzwerkadapter pro Server unterstützen, um einen dauerhaften und erweiterten Zugriff auf die Netzwerkbandbreite zur Maximierung der Übertragungen zwischen PCIe 5.0-Geräten und RDMA-Geräten zu ermöglichen. Dies stellt sicher, dass es keine Engpässe gibt, auch nicht auf dem PCIe-Bus, und hilft, den Durchsatz zu maximieren und die Latenz zu minimieren.
Die Auswirkungen auf die Leistung sind äußerst positiv. Die Leistungssteigerungen durch die beschleunigte IO von NVIDIA reichen von 20 % bis 30 % bis zum Zweifachen bei intensiven Workloads. Es ist außerdem wichtig, Anwendungen so zu konzipieren, dass der Speicher optimal genutzt wird, um Ineffizienzen zu vermeiden. Daher sollten solche Anwendungen so konfiguriert werden, dass sie regelmäßig Checkpoints durchführen. Andernfalls müssen sie wieder von vorne beginnen, wenn ein Knoten aus dem Netz fällt oder für einige Zeit blockiert ist. Die Verwendung von Checkpoints bedeutet, dass der Fortschritt nur zum letzten Snapshot zurückkehrt, wenn ein Knoten ausfällt oder ein anderes blockierendes Ereignis eintritt (solche Funktionen können von lokalen und Netzwerk-Datenschutz-Tools zur Verfügung gestellt werden und müssen nicht speziell in die Anwendung integriert werden).
Insgesamt liegt der wirkliche Vorteil der Verwendung von DPU- und GPU-basierten Servern für KI, ML und andere anspruchsvolle Arbeitslasten (z. B. 3D- oder Finite-Elemente-Modelle, Simulationen usw.) darin, dass sie die Trennung von Infrastrukturkomponenten und Anwendungsaktivitäten ermöglichen. Dadurch werden 20 bis 30 % der CPU-Zyklen eingespart, die derzeit für den Zugriff auf die Infrastruktur und deren Verwaltung aufgewendet werden. Dadurch werden Ressourcen freigesetzt und der Zugriff beschleunigt, indem IO-Funktionen in die Hardware verlagert werden.