banner
Heim / Blog / Herstellung eines DGX
Blog

Herstellung eines DGX

Jun 27, 2023Jun 27, 2023

Nicht jeder kann sich einen Nvidia DGX AI-Server leisten, der mit den neuesten „Hopper“ H100-GPU-Beschleunigern oder sogar einem seiner vielen Klone ausgestattet ist, die von OEMs und ODMs auf der ganzen Welt erhältlich sind. Und selbst wenn sie sich diese Eskalation der KI-Verarbeitung leisten können, heißt das nicht für eine Sekunde, dass sie die H100- oder sogar „Ampere“ A100-GPUs in die Hände bekommen, die Teil dieses Systems sind, angesichts der hohen Nachfrage nach diesen Rechenleistungen Motoren.

Wie üblich finden die Menschen wirtschaftliche und technische Ersatzstoffe. So funktioniert eine gesunde Wirtschaft, indem sie die Zahl der Alternativen erhöht und dank des Wettbewerbs die Kosten für alle diese Alternativen senkt.

So ist es mit den SuperNode-Konfigurationen, die der Composable-Fabric-Anbieter GigaIO mit Hilfe der Serverhersteller Supermicro und Dell zusammengestellt hat. Anstatt Nvidia-GPUs zu verwenden, basieren die GigaIO SuperNodes auf günstigeren AMD „Arcturus“ Instinct MI210 GPU-Beschleunigern, die in PCI-Express-Steckplätze eingesteckt werden und nicht über die speziellen Sockel verfügen, die High-End-GPUs von Nvidia, AMD oder Intel benötigen – SXM4 und SXM5-Sockel für die A100- und H100-GPUs von Nvidia sowie OAM-Sockel von AMD und Intel. Und anstatt NVLink-Verbindungen zu verwenden, um die Nvidia A100- und H100-GPU-Speicher in einem gemeinsamen Speichersystem zusammenzubinden, oder die Infinity Fabric-Verbindung von AMD, um die Speicher von höherwertigen Instinct MI250X-GPUs zusammenzubinden, nutzt das SuperNode-Setup PCI-Express 4.0-Schalter, um die GPU-Speicher untereinander und mit den Server-Hostknoten zu verbinden.

Dieses Setup hat natürlich weniger Bandbreite als die NVLink- oder Infinity Fabric-Verbindungen, und selbst wenn PCI-Express 5.0-Switches verfügbar sind, wird dies immer noch der Fall sein – worüber wir uns kürzlich im Namen von Unternehmen wie GigaIO und ihren Kunden beklagt haben. Wir sind nach wie vor der Meinung, dass PCI-Express-Release-Levels für Server-Ports, Adapterkarten und Switches im Gleichschritt in der Hardware verfügbar gemacht werden sollten, anstatt dass es zu einer enormen Verzögerung zwischen den Servern, den Adaptern und den Switches kommt. Wenn eine zusammensetzbare Infrastruktur alltäglich werden soll und wenn PCI-Express-Verbindungen der beste Weg sind, dies auf Pod-Ebene (d. h. ein paar Racks mit miteinander verbundenen Maschinen) zu erreichen, dann scheint dies für uns offensichtlich.

Weder GigaIO noch seine Kunden haben Zeit, darauf zu warten, bis all dies geschieht. Es muss heute Cluster bilden und den Kunden heute die Vorteile der Zusammensetzbarkeit bieten, was es kann, wie wir in der Vergangenheit anhand von Fallstudien gezeigt haben und auf die sich diese Links beziehen. Am wichtigsten ist, dass die Zusammensetzbarkeit es ermöglicht, die Auslastung teurer Rechen-Engines wie GPUs zu steigern, wenn sich mehrere auf Clustern ausgeführte Workloads im Laufe der Zeit ändern. So schwer das zu glauben ist – und das hat das San Diego Supercomputing Center in seinen Benchmarks gezeigt –, können Sie mit einer zusammensetzbaren Infrastruktur leistungsschwächere GPUs oder weniger davon verwenden, ihre Auslastung steigern und trotzdem schnellere Ergebnisse erzielen als Das geht mit großem, bulligem GPU-Eisen.

Die von GigaIO zusammengestellten GigaPod-, SuperNode- und GigaCluster-Konfigurationen stellen eine Kommerzialisierung dieser Idee dar und sind nicht auf AMD MI210-GPUs beschränkt. Jede GPU, jedes FPGA oder jeder diskrete Beschleuniger, der an einen PCI-Express 4.0- oder 5.0-Steckplatz angeschlossen wird, kann in diese Konfigurationen eingesetzt werden.

Ein GigaPod verfügt über ein bis drei Rechenknoten, die auf Zwei-Sockel-Servern mit AMDs „Milan“ Epyc 7003-Prozessoren basieren, aber auch hier gibt es nichts, was GigaIO oder seine Kunden daran hindert, andere CPUs oder Server als die von Dell oder Supermicro zu verwenden. Dabei handelt es sich lediglich um die reine AMD-Konfiguration, die für den Verkauf als einzelne Einheit an Kunden zertifiziert wurde.

Der GigaPod verfügt über einen 24-Port-PCI-Express-Switch, der auf dem Switchtec Gen 4.0 PCI-Express-Switch-ASIC von Microchip Technology basiert. (Wir haben hier die Microchip Gen 5.0 Switchtec ASICs vorgestellt und hoffen, dass sie bald in großen Mengen ausgeliefert werden.) GigaIO verwendet PCI-Express-Adapter-ASICs von Broadcom, um Server, Speichergehäuse und Beschleunigergehäuse an dieses Switching-Backbone anzuschließen, das seine FabreX-Software enthält Der Stapel kann im laufenden Betrieb zerlegt und zusammengesetzt werden. Der GigaPod verfügt über sechzehn Beschleuniger und die CPUs und GPUs werden mit Bright Cluster Manager von Bright Computing bereitgestellt, das im Januar 2022 von Nvidia gekauft wurde.

Die SuperNode-Konfiguration, die GigaIO in den letzten Monaten vorgeführt hat, besteht aus einem Paar miteinander verbundener GigaPods und sieht so aus:

Dadurch erhalten Sie eine bessere Vorstellung davon, wie die Konfiguration aussieht. In diesem Fall gibt es 32 AMD Instinct MI210-Beschleuniger in vier GigaIO Accelerator Pool Appliance (APA)-Gehäusen, die mit einem Paar PCI-Express 4.0-Switches mit 24 Ports verbunden sind. Diese Konfiguration verfügt außerdem über bis zu ein Paar Storage Pool Appliances (SPAs) von GigaIO, von denen jede über 32 Hot-Swap-fähige NVM-Express-Flash-Adapter verfügt, die eine Rohkapazität von 480 TB ergeben. Jeder Server verfügt über eine 128-Gbit/s-Verbindung zu den Switches und jedes Beschleunigerpaar verfügt über eine Bandbreite von 64 Gbit/s zu den Switches. Auch die Speicher-Arrays verfügen jeweils über eine 128-Gbit/s-Pipe. Technisch gesehen handelt es sich hierbei um eine zweischichtige PCI-Express-Struktur.

Wenn Sie mehr als 32 GPUs (oder andere Beschleuniger) in einem zusammensetzbaren Cluster benötigen (einen, der bei Bedarf die Verknüpfung aller Geräte mit einem Server ermöglichen würde), stellt GigaIO einen sogenannten GigaCluster zusammen ist eine dreischichtige PCI-Express 4.0-Switch-Fabric mit insgesamt 36 Servern und 96 Beschleunigern.

Die Frage ist natürlich, wie sich diese PCI-Express-Fabric hinsichtlich der Leistung mit einem InfiniBand-Cluster vergleichen lässt, der über PCI-Express-GPUs in den Knoten und kein NVLink verfügt, und einem Cluster, der über NVLink-Fabrics innerhalb der Knoten oder über einige davon verfügt Knoten und dann InfiniBand über die restlichen Knoten (oder alle), je nach Fall.

Wir werden nicht den direkten Vergleich bekommen, den wir wollen. Außer anekdotisch.

„Ich behaupte nicht, dass es sich dabei um erschöpfende Studien handelt, aber wir haben eine Reihe von Fällen gefunden, in denen Menschen vier oder acht GPU-Server über InfiniBand oder Ethernet miteinander verbunden haben“, erzählt Alan Benjamin, Mitbegründer und CEO von GigaIO Die nächste Plattform. „Und wenn sie innerhalb dieser vier GPUs oder innerhalb dieser acht GPUs innerhalb des Knotens skalieren, ist die Skalierung im Allgemeinen ziemlich gut – obwohl sie in den meisten Fällen mit einer Zahl von 95 Prozent und nicht mit einer Zahl von 99 Prozent skaliert wird. Aber wenn sie von einer Box auf mehrere separate Boxen umsteigen, entsteht ein großer Verlust, der sich normalerweise halbiert. Was wir gesehen haben ist, dass, wenn eine Maschine über acht GPUs verfügt, die mit 80 Prozent der Spitzenleistung laufen, der Wert auf 50 Prozent sinkt, wenn sie auf die neunte GPU in einer separaten Box umsteigen.“

Aus diesem Grund hat Nvidia den NVLink Switch innerhalb der Serverknoten natürlich zu einer NVLink Switch Fabric erweitert, die 32 Knoten und 256 GPUs in einem einzigen Speicherabbild für diese GPUs umfasst, das Nvidia als DGX H100 SuperPod bezeichnet. Und das ist auch der Grund, warum GigaIO PCI-Express als bessere Struktur für die Verbindung einer großen Anzahl von GPUs und anderen Beschleunigern in einem Pod vorantreibt.

Um einen Eindruck davon zu vermitteln, wie gut diese PCI-Express-Switch-Verbindung mit FabreX funktioniert, hat GigaIO zwei Workloads auf den AMD-basierten Systemen getestet: ResNet50 für die Bilderkennung und das Hashcat-Tool zur Passwortwiederherstellung. Wie die EDA-Software verteilt Hashcat die Arbeit individuell an jede GPU und sie müssen keine Daten teilen, um ihre Arbeit zu erledigen, und daher ist der Skalierungsfaktor vollkommen linear:

Für ResNet50, sagt Benjamin, müssen sich die GPUs die Arbeit teilen und tun dies über GPUDirect RDMA, und es kommt zu einer Verschlechterung von etwa 1 Prozent für jede zu einem Cluster hinzugefügte GPU. Bei 32 GPUs beträgt der Skalierungsfaktor also nur 70 Prozent einer perfekten Skalierung. Dies ist bei allen Knoten, die über InfiniBand oder Ethernet miteinander verbunden sind, immer noch deutlich besser als 50 Prozent.

Natürlich können InfiniBand und Ethernet noch viel weiter skaliert werden, wenn Ihre Workloads dies benötigen. Wenn Sie jedoch 96 oder weniger GPUs in einem einzelnen Image benötigen, scheint der GigaCluster-Ansatz ein Gewinner zu sein. Und mit PCI-Express 5.0-Switches, die theoretisch doppelt so viele Ports bei gleicher Geschwindigkeit haben könnten, könnten Sie in einem Image auf 192 GPUs skalieren – und das mit einem Speicher- und Rechenbedarf, der je nach Bedarf gewürfelt und reduziert werden könnte.

Noch eine nette Sache. Moritz Lehman, der Entwickler der rechnergestützten Fluiddynamikanwendung FluidX3D, bekam ein Stück Zeit auf dem GigaIO SuperNode mit 32 MI210-GPUs und zeigte auf LinkedIn einen Test, bei dem er die Concorde eine Sekunde lang bei 300 km/h und einer Landegeschwindigkeit von 40 km/h simulierte Auflösung von Milliarden Zellen. Die Ausführung dieser Simulation dauerte 33 Stunden, und auf einer Desktop-Workstation mit kommerzieller CFD-Software, die Moritz nicht nannte, würde es Jahre dauern, dieselbe Simulation auszuführen, behauptete er. Zumindest ist der SuperNode also eine hervorragende Workstation.

Mit Highlights, Analysen und Geschichten der Woche direkt von uns in Ihren Posteingang, ohne dass etwas dazwischen liegt. Jetzt abonnieren

Anfrage absenden
Schicken