Deutsch

Tiefgreifende Einblicke in die Netzwerkanforderungen für große KI-Modelle

Veröffentlicht am 21. Dez 2023 by
90

Seit dem Erscheinen von Transformer bis zur weit verbreiteten Anwendung von ChatGPT im Jahr 2023 hat sich allmählich der Konsens gebildet, dass sich die Leistung eines Modells mit zunehmender Parametergröße verbessert, wobei ein Skalierungsgesetz die Abhängigkeit bestimmt. Insbesondere wenn die Parametergröße mehrere hundert Milliarden übersteigt, verbessern sich das Sprachverständnis, das logische Denken und die Fähigkeiten zur Problemanalyse bei großen KI-Modellen rapide.

Gleichzeitig hat der Wandel in der Modellgröße und Modellleistung zu Veränderungen bei den Netzwerkanforderungen für das Training großer KI-Modelle im Vergleich zu herkömmlichen Modellen geführt.

Um den Anforderungen einer effizienten verteilten Datenverarbeitung in großen Trainingsclustern gerecht zu werden, werden beim Training großer KI-Modelle in der Regel verschiedene parallele Berechnungsmodi eingesetzt, z. B. Datenparallelität, Pipeline-Parallelität und Tensor-Parallelität. In diesen parallelen Modi sind kollektive Kommunikationsvorgänge zwischen mehreren Computergeräten unerlässlich. Darüber hinaus erfolgt der Trainingsprozess häufig in einem synchronen Modus, sodass die kollektiven Kommunikationsvorgänge zwischen mehreren Rechnern und mehreren Karten abgeschlossen sein müssen, bevor mit der nächsten Iteration oder Berechnung des Trainings fortgefahren werden kann. Daher ist die Entwicklung eines effizienten Cluster-Netzwerks in großen Trainingsclustern für große KI-Modelle von zentraler Bedeutung. Dieses Design ermöglicht eine niedrige Latenz und einen hohen Durchsatz bei der Kommunikation zwischen den Maschinen, was für die Verringerung des Kommunikationsaufwands bei der Datensynchronisierung zwischen mehreren Maschinen und Karten entscheidend ist. Diese Optimierung trägt zur Verbesserung des Verhältnisses zwischen der effektiven Rechenzeit der GPU (GPU-Rechenzeit und Gesamttrainingszeit) bei – ein entscheidender Faktor für die Effizienzsteigerung von verteilten KI-Trainingsclustern. Die folgende Analyse wird sich mit den Netzwerkanforderungen großer KI-Modelle befassen und dabei Aspekte wie Skalierung, Bandbreite, Latenz, Stabilität und Netzwerkimplementierung beleuchten.

Herausforderungen bei der Skalierung von GPU-Netzwerken für ein effizientes Training von besonders großen KI-Modellen

Die Rechenanforderungen von KI-Anwendungen wachsen exponentiell, zudem erreichen die Modelle enorme Größenordnungen. Die Parameter von KI-Modellen sind um das Hunderttausendfache gestiegen und aktuelle große KI-Modelle weisen Parametergrößen von Hunderten von Milliarden bis Billionen auf. Das Training solcher Modelle erfordert eine erhebliche Rechenleistung. Außerdem stellen ultragroße Modelle hohe Anforderungen an den Speicher. Ein Modell mit 1 Billion Parametern, das 1-Byte-Speicher verwendet, würde beispielsweise 2 Terabyte Speicherplatz verbrauchen. Ferner müssen während des Trainingsprozesses Zwischenvariablen, die durch die Forward-Berechnung erzeugt werden, Gradienten aus der Backward-Berechnung und Optimierungszustände, die für die Aktualisierung der Parameter erforderlich sind, gespeichert werden. Diese Zwischenvariablen nehmen innerhalb einer einzelnen Iteration kontinuierlich zu. Beispielsweise erzeugt eine Trainingssitzung mit dem Adam-Optimizer Zwischenvariablen, die in der Spitze ein Mehrfaches der Größe der Modellparameter betragen. Ein solch hoher Speicherverbrauch bedeutet, dass Dutzende bis Hunderte von GPUs erforderlich sind, um den gesamten Trainingsprozess eines Modells zu speichern.

However, having a large number of GPUs alone is insufficient for training ultra-large models effectively. The key to enhancing training efficiency lies in adopting suitable parallelization methods. Currently, three main parallelization methods are employed for ultra-large models: data parallelism, pipeline parallelism, and tensor parallelism. All three parallelization methods are utilized in the training of models with parameter sizes ranging from hundreds of billions to trillions. Training ultra-large models necessitates clusters comprising thousands of GPUs. Initially, this may seem inferior compared to the interconnection scale of tens of thousands of servers in cloud data centers. However, in reality, interconnecting thousands of GPU nodes is more challenging due to the necessity for highly matched network capabilities and computational capabilities. Cloud data centers primarily employ CPU computation, and their network requirements typically range from 10 Gbps to 100 Gbps, utilizing traditional TCP transport layer protocols. In contrast, AI large model training employs GPU training, which exhibits computational power several orders of magnitude higher than CPUs. Consequently, the network demands range from 100 Gbps to 400 Gbps, and RDMA protocols are utilized to reduce transmission latency and enhance network throughput.

Insbesondere eine Hochleistungsverbindung zwischen Tausenden von GPUs stellt mehrere Herausforderungen in Bezug auf die Netzwerkgröße dar:

  • Probleme, die in großen RDMA-Netzwerken auftreten, z. B. Head-of-Line-Blocking und PFC Deadlock Storms.

  • Optimierung der Netzleistung, einschließlich effizienterer Überlastungskontrolle und Load-Balancing.

  • Probleme bei der Konnektivität der Netzwerkkarten, da ein einzelner Host Hardware-Leistungsbeschränkungen unterliegt. Lösung der Frage, wie Tausende von RDMA-QP-Verbindungen hergestellt werden können.

  • Auswahl der Netzwerktopologie unter Berücksichtigung der Frage, ob die klassische Fat-Tree-Struktur vorzuziehen ist oder ob auf Netzwerktopologien für High-Performance-COmputing wie Torus und Dragonfly zurückgegriffen werden kann.

Optimierung der GPU-Kommunikation für effizientes maschinenübergreifendes KI-Modell-Training

Im Zusammenhang mit dem Training von großen KI-Modellen erzeugen die kollektiven Kommunikationsvorgänge zwischen GPUs innerhalb und zwischen verschiedenen Rechnern ein beträchtliches Volumen an Kommunikationsdaten. Betrachtet man die GPU-Kommunikation innerhalb eines einzelnen Rechners, so kann man KI-Modelle mit Milliarden von Parametern erkennen, bei denen die aus der Modellparallelität resultierenden kollektiven Kommunikationsdaten die Größenordnung von Hunderten von Gigabytes erreichen können. Daher hängt die effiziente Ausführungszeit wesentlich von der Kommunikationsbandbreite und den Kommunikationsmodi zwischen den GPUs innerhalb der Maschine ab. Die GPUs innerhalb eines Servers sollten Hochgeschwindigkeits-Verbindungsprotokolle unterstützen, sodass während der GPU-Kommunikation keine mehrfachen Datenkopien durch den CPU-Speicher erforderlich sind.

In the context of AI large-scale model training, the collective communication operations among GPUs within and across machines generate a substantial volume of communication data. Examining GPU communication within a single machine, consider AI models with billions of parameters where the collective communication data resulting from model parallelism can reach the scale of hundreds of gigabytes. Therefore, efficient completion time relies significantly on the communication bandwidth and modes between GPUs within the machine. GPUs within a server should support high-speed interconnection protocols, mitigating the necessity for multiple data copies through CPU memory during GPU communication.

Darüber hinaus sind GPUs in der Regel über PCIe-Busses mit Netzwerkkarten verbunden, und die Kommunikationsbandbreite des PCIe-Buses bestimmt, ob die Single-Port-Bandbreite der Netzwerkkarte vollständig genutzt werden kann. Betrachtet man beispielsweise einen PCIe 3.0-Bus (16 Lanes, die einer unidirektionalen Bandbreite von 16 GB/s entsprechen), so kann die Netzwerkleistung zwischen den Maschinen möglicherweise nicht vollständig genutzt werden, wenn die Kommunikation zwischen den Maschinen mit einer Single-Port-Bandbreite von 200 Gbps ausgestattet ist.

Entscheidende Faktoren für die Trainingseffizienz von großen KI-Modellen

Die Netzwerklatenz bei der Datenkommunikation umfasst zwei Komponenten: statische Latenz und dynamische Latenz. Die statische Latenz umfasst die Daten-Serialisierungslatenz, die Weiterleitungslatenz der Geräte und die elektro-optische Übertragungslatenz. Sie wird von den Kapazitäten des Weiterleitungschips und der Übertragungsdistanz bestimmt und stellt einen konstanten Wert dar, wenn die Netzwerktopologie und das Kommunikationsdatenvolumen festgelegt sind. Im Gegensatz dazu wirkt sich die dynamische Latenz erheblich auf die Netzleistung aus. Sie umfasst die Queuing -Latenz innerhalb von Switches und die Latenz aufgrund von Paketverlusten und erneuter Übertragung, die häufig durch Netzüberlastung verursacht wird.

Anhand des Trainings eines GPT-3-Modells mit 175 Milliarden Parametern zeigt die theoretische Analyse, dass bei einem Anstieg der dynamischen Latenz von 10 μs auf 1000 μs der Anteil der effektiven GPU-Rechenzeit um fast 10 % sinkt. Eine Netzwerk-Paketverlustrate von mehreren Tausend führt zu einem Rückgang der effektiven GPU-Rechenzeit um 13 %, und bei einer Verlustrate von 1 % sinkt der Anteil auf weniger als 5 %. Die Verringerung der Kommunikationslatenz und die Verbesserung des Netzwerkdurchsatzes sind entscheidende Faktoren, um die Rechenleistung beim Training von KI-Modellen voll auszuschöpfen.

Neben der Latenz führen Netzwerkvariationen zu Latenzschwankungen, die sich auf die Trainingseffizienz auswirken. Der kollektive Kommunikationsprozess der Rechenknoten während des Trainings umfasst mehrere parallele Punkt-zu-Punkt-Kommunikationen (P2P). Die kollektive Ring-AllReduce-Kommunikation zwischen N-Knoten umfasst beispielsweise 2*(N-1) Datenkommunikations-Teilschritte, wobei alle Knoten in jedem Teilschritt die P2P-Kommunikation parallel durchführen müssen. Netzwerkfluktuationen führen zu einer deutlichen Erhöhung der Flow Completion Time (FCT) für die P2P-Kommunikation zwischen bestimmten Knoten. Die durch Netzwerk-Jitter verursachte Schwankung der P2P-Kommunikationszeit wird als das schwächste Glied in der Systemeffizienz angesehen und führt zu einer erhöhten Abwicklungszeit für den entsprechenden Teilschritt. Netzwerk-Jitter verringert also die Effizienz der kollektiven Kommunikation und wirkt sich auf die Trainingseffizienz von KI-Modellen in großem Maßstab aus.

Ausschlaggebende Faktoren für die Rechenleistung beim Training von großen KI-Modellen

Seit dem Aufkommen von Transformer hat sich eine rasante Entwicklung bei großen Modellen abgezeichnet. In den letzten fünf Jahren ist die Modellgröße von 61 Millionen auf 540 Milliarden angestiegen, was einer exponentiellen Zunahme um das fast 10.000-fache entspricht. Die Rechenleistung des Clusters spielt eine entscheidende Rolle bei der Bestimmung der Geschwindigkeit des Trainings von KI-Modellen. So würde beispielsweise das Training von GPT-3 auf einem einzigen V100-GPU 335 Jahre dauern, während ein Cluster mit 10.000 V100-GPUs bei idealer Skalierung das Training in etwa 12 Jahren abschließen könnte.

Die Zuverlässigkeit des Netzwerksystems ist von grundlegender Bedeutung für die Stabilität der Berechnungen des gesamten Clusters. Netzwerkausfälle können weitreichende Auswirkungen haben, da bei einem Ausfall eines Netzwerkknotens die Konnektivität zahlreicher Rechenknoten unterbrochen wird, wodurch die gesamte Rechenleistung des Systems beeinträchtigt wird. Zudem können sich Schwankungen in der Netzwerkleistung auf den gesamten Cluster auswirken, da das Netzwerk eine gemeinsam genutzte Ressource ist, im Gegensatz zu einzelnen Rechenknoten, die leichter isoliert werden können. Leistungsschwankungen können sich negativ auf die Nutzung aller Rechenressourcen auswirken. Daher ist die Aufrechterhaltung eines stabilen und effizienten Netzwerks während des gesamten Trainingszyklus von KI-Modellen von größter Bedeutung und stellt den Netzwerkbetrieb vor neue Herausforderungen.

Im Falle eines Ausfalls während des Trainings kann ein fehlertoleranter Ersatz oder eine elastische Skalierung erforderlich sein, um fehlerhafte Knoten zu ersetzen. Änderungen der Positionen der teilnehmenden Knoten können dazu führen, dass die aktuellen Kommunikationsmuster suboptimal werden, sodass eine erneute Verteilung und Planung der Aufgaben erforderlich ist, um die Trainingseffizienz insgesamt zu verbessern. Darüber hinaus beeinträchtigen unerwartete Netzwerkausfälle, wie z. B. Paketverluste, nicht nur die Effizienz der kollektiven Kommunikation, sondern führen auch zu Zeitüberschreitungen in der Kommunikationsbibliothek, was dazu führt, dass die Trainingsprozesse über längere Zeiträume ins Stocken geraten und die Effizienz erheblich beeinträchtigt wird. Folglich ist es für eine rechtzeitige Fehlererkennung und Selbstreparatur innerhalb von Sekunden unerlässlich, feinkörnige Informationen über Durchsatz, Paketverluste und andere Parameter des Geschäftsablaufs zu erhalten.

Die Rolle der automatisierten Implementierung und Fehlererkennung in groß angelegten KI-Clustern

Die Einrichtung intelligenter verlustfreier Netzwerke beruht häufig auf RDMA-Protokollen und Überlastungskontrollmechanismen, die von einer Reihe komplizierter und unterschiedlicher Konfigurationen begleitet werden. Jede Fehlkonfiguration dieser Parameter kann die Netzwerkleistung beeinträchtigen und zu unvorhergesehenen Problemen führen. Statistiken zeigen, dass über 90 % der Ausfälle von Hochleistungsnetzwerken auf Konfigurationsfehler zurückzuführen sind. Die Hauptursache für solche Probleme liegt in der Vielzahl der Konfigurationsparameter für Netzwerkkarten, die von Architekturversionen, Geschäftstypen und Netzwerkkartentypen abhängen. Im Zusammenhang mit großen Clustern zum Training von KI-Modellen wird die Komplexität der Konfigurationen noch erhöht. Daher kann eine effiziente und automatisierte Bereitstellung und Konfiguration die Zuverlässigkeit und Effizienz von großen Modellcluster-Systemen effektiv verbessern.

Eine automatisierte Implementierung und Konfiguration setzt die Möglichkeit voraus, Konfigurationen parallel auf mehreren Rechnern einzurichten, automatisch relevante Parameter für Überlastungskontrollmechanismen auszuwählen und geeignete Konfigurationen auf der Grundlage von Netzwerkkartentypen und Geschäftsanforderungen auszuwählen.

Auch innerhalb komplexer Architekturen und Konfigurationsszenarien ist die Fähigkeit, Fehler während des Geschäftsbetriebs schnell und genau zu lokalisieren, für die Gewährleistung der Gesamteffizienz des Unternehmens unerlässlich. Die automatisierte Fehlererkennung erleichtert die schnelle Problemlokalisierung, die präzise Benachrichtigung des Managements und die Senkung der mit der Problemerkennung verbundenen Kosten. Sie ermöglicht eine rasche Identifizierung der Grundursachen und bietet entsprechende Lösungen.

Warum Sie sich für FS Accelerate AI Model Network entscheiden sollten

Die Analyse unterstreicht die spezifischen Anforderungen von großen KI-Modellen in Bezug auf Skalierung, Bandbreite, Stabilität, Latenz/Jitter und Automatisierungsfähigkeit. Es besteht jedoch eine technologische Lücke bei der vollständigen Erfüllung dieser Anforderungen mit der aktuellen Konfiguration von Rechenzentrumsnetzwerken.

Die Nachfrage nach Netzwerkkapazitäten in KI-Modellen ist angesichts der beträchtlichen Parametergrößen und der komplexen Berechnungsanforderungen außergewöhnlich hoch. Angemessene Rechen- und Speicherressourcen sind für die Unterstützung ihrer Trainings- und Inferenzprozesse unerlässlich, während Hochgeschwindigkeitsnetzwerke für eine effiziente Datenübertragung und Datenverarbeitung entscheidend sind. FS geht auf diese Bedürfnisse ein, indem es hochwertige Konnektivitätsprodukte anbietet, die auf die besonderen Umstände jedes Kunden zugeschnitten sind und so die Netzwerkleistung und die Benutzerfreundlichkeit verbessern.

Das Produktportfolio von FS umfasst nicht nur Switches und Netzwerkkarten , sondern auch optische Module mit Übertragungsraten von 100G bis 800G sowie AOCs und DACs. Diese Produkte ermöglichen eine effiziente Datenübertragung und beschleunigen das Training von KI-Modellen und Inferenzprozesse. Bei KI-Training verbinden optische Module verteilte Rechenknoten, die zusammenarbeiten, um komplexe Berechnungsaufgaben auszuführen. Mit Eigenschaften wie hoher Bandbreite, geringer Latenz und niedriger Fehlerrate beschleunigen diese Produkte Modellaktualisierungen und Modelloptimierungen, reduzieren Kommunikationsverzögerungen und fördern eine schnellere und effizientere Berechnung von künstlicher Intelligenz.

Eine Entscheidung für die Konnektivitätsprodukte von FS ist eine Entscheidung für bessere Rechenzentrumsnetzwerke und für eine einfachere Implementierung von KI-Netzwerken. Weitere Einzelheiten finden Sie auf der offiziellen Website von FS.

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.5k
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