Solutions InfiniBand de bout en bout pour les Problèmes de Goulots d'Étranglement de la Formation LLM
L'impact du ChatGPT sur la technologie a donné lieu à des spéculations sur l'avenir de l'HPC. La multimodalité a attiré l'attention et l'OpenAI a présenté GPT-4, un modèle multimodal révolutionnaire. GPT-4 représente une avancée remarquable dans plusieurs domaines.
Ces progrès impressionnants dans le domaine HPC sont le résultat d'un entraînement intensif des modèles, qui nécessite des ressources de calcul considérables et des réseaux de transmission de données à grande vitesse. Le réseau InfiniBand (IB) de bout en bout s'impose comme un choix idéal pour le calcul à haute performance et l'entraînement de modèles. Dans cet article, nous nous pencherons sur le concept de formation de grands modèles de langage (LLM) et explorerons la nécessité du réseau Infiniband de bout en bout pour résoudre les goulets d'étranglement liés à l'apprentissage de LLM.
Existe-t-il des liens entre le LLM et ChatGPT ?
L'entraînement de grands modèles de langage (LLM) est confronté à de nombreux goulets d'étranglement, principalement liés au transfert de données et à la communication au sein des grappes de calcul GPU. Au fur et à mesure que les grands modèles de langage se développent, le besoin de réseaux fiables et à grande vitesse devient crucial. Par exemple, des modèles comme le GPT-3 avec 1,75 trillion de paramètres ne peuvent pas être formés sur une seule machine et dépendent fortement des grappes de GPU. Le principal goulot d'étranglement réside dans la communication efficace des données entre les nœuds de la grappe de formation.
Étape 1 : Réduction en anneau (Ring-Allreduce)
L'un des algorithmes de communication GPU couramment utilisés est le Ring-Allreduce, dans lequel les GPU forment un anneau, permettant aux données de circuler à l'intérieur de celui-ci. Chaque GPU a un voisin gauche et droit, les données n'étant envoyées qu'au voisin droit et reçues du voisin gauche. L'algorithme se compose de deux étapes : la dispersion-réduction et le rassemblement. Lors de l'étape de dispersion-réduction, les GPU échangent des données pour obtenir un bloc du résultat final. Lors de l'étape allgather, les GPU échangent ces blocs pour s'assurer que tous les GPU disposent du résultat final complet.
Étape 2 : Anneau à deux niveaux
Dans le passé, avec une bande passante limitée et en l'absence de technologie NVLink ou RDMA, un grand anneau suffisait pour la distribution sur une ou plusieurs machines. Toutefois, avec l'introduction de NVLink au sein d'une seule machine, l'utilisation de la même méthode devient inappropriée. La largeur de bande du réseau est bien inférieure à celle de NVLink, de sorte que l'utilisation d'un grand anneau réduirait considérablement l'efficacité de NVLink au niveau du réseau. En outre, dans l'environnement multi-NIC (Network Interface Card) actuel, l'utilisation d'un seul anneau empêche la pleine utilisation de plusieurs NIC. C'est pourquoi il est recommandé d'adopter une approche en anneau à deux niveaux pour relever ces défis.
Dans un scénario d'anneau en deux étapes, la synchronisation des données s'effectue entre les GPU d'une même machine, en tirant parti de l'avantage de la bande passante élevée de NVLink. Ensuite, les GPU de plusieurs machines établissent plusieurs anneaux en utilisant plusieurs NIC pour synchroniser les données de différents segments. Enfin, les GPU d'une même machine se synchronisent une nouvelle fois, achevant ainsi la synchronisation des données entre tous les GPU. La bibliothèque de communication collective de NVIDIA (NCCL) joue un rôle crucial dans ce processus.
La bibliothèque NVIDIA Collective Communication Library (NCCL) comprend des routines optimisées pour la communication multi-GPU et multi-nœuds, spécialement conçues pour les GPU et les réseaux NVIDIA. La NCCL fournit des primitives efficaces pour les opérations d'envoi et de réception de type all-collection, all-reduce, broadcast, reduce, reduce scatter et point-to-point. Ces routines sont optimisées pour une bande passante élevée et une faible latence, en utilisant les réseaux in-node et NVIDIA Mellanox via des interconnexions PCIe et NVLink à haut débit.
En éliminant les goulets d'étranglement dans le transfert de données et la communication, les progrès des grappes de calcul GPU et l'utilisation d'outils tels que le NCCL contribuent à surmonter les difficultés liées à l'apprentissage de grands modèles de langage, ouvrant ainsi la voie à de nouvelles percées dans la recherche et le développement en matière.
Comment la solution de réseau Infiniband de bout en bout peut-elle aider ?
Lorsqu'il s'agit de l'entraînement de grands modèles, Ethernet n'est pas à la hauteur en termes de taux de transmission et de latence. En revanche, le réseau InfiniBand de bout en bout offre une solution de calcul haute performance capable de fournir des taux de transmission allant jusqu'à 400 Gbps et une latence de l'ordre de la microseconde, surpassant ainsi les capacités d'Ethernet. InfiniBand est donc devenu la technologie de réseau privilégiée pour l'entraînement de modèles à grande échelle.
Mécanismes de redondance des données et de correction des erreurs
L'un des principaux avantages du réseau InfiniBand de bout en bout est qu'il prend en charge la redondance des données et les mécanismes de correction des erreurs, ce qui garantit la fiabilité de la transmission des données. Cet aspect est particulièrement important dans le cadre de l'entraînement de modèles à grande échelle, où le volume de données traitées rend les erreurs de transmission ou la perte de données préjudiciables au processus d'entraînement. En tirant parti des caractéristiques robustes d'InfiniBand, les interruptions ou les défaillances causées par des problèmes de transmission de données peuvent être minimisées ou éliminées.
Configuration et maintenance du sous-réseau local
Dans un protocole d'interconnexion InfiniBand, chaque nœud est équipé d'un adaptateur de canal hôte (HCA) chargé d'établir et de maintenir les liaisons avec les dispositifs hôtes. Les switchs, dotés de plusieurs ports, facilitent le transfert des paquets de données entre les ports, ce qui permet une transmission efficace des données au sein des sous-réseaux.
Le gestionnaire de sous-réseau (SM) joue un rôle crucial dans la configuration et la maintenance du sous-réseau local, aidé par le paquet du gestionnaire de sous-réseau (SMP) et l'agent du gestionnaire de sous-réseau (SMA) sur chaque dispositif InfiniBand. Le SM découvre et initialise le réseau, attribue des identifiants uniques à tous les appareils, détermine l'unité de transmission minimale (MTU) et génère des tables de routage de commutation basées sur des algorithmes de routage sélectionnés. Il effectue également des balayages périodiques du sous-réseau pour détecter tout changement dans la topologie et ajuste la configuration du réseau en conséquence.
Contrôle de flux basé sur crédit
Par rapport à d'autres protocoles de communication en réseau, les réseaux InfiniBand offrent une plus grande largeur de bande, un temps de latence plus faible et une plus grande évolutivité. En outre, InfiniBand utilise un contrôle de flux basé sur les crédits ou fiabilité, où le nœud émetteur s'assure qu'il ne transmet pas plus de données que le nombre de crédits disponibles dans la mémoire tampon de réception à l'autre extrémité de la liaison. Cela élimine le besoin d'un mécanisme de perte de paquets comme l'algorithme de fenêtre TCP, ce qui permet aux réseaux InfiniBand d'atteindre des taux de transfert de données extrêmement élevés avec une latence et une utilisation minimale de l'unité centrale.
Technologie d'accès direct à la mémoire à distance (RDMA)
InfiniBand utilise la technologie RDMA (Remote Direct Memory Access), qui permet le transfert direct de données entre les applications sur le réseau sans impliquer le système d'exploitation. Cette approche de transfert sans copie réduit considérablement la consommation de ressources CPU aux deux extrémités, ce qui permet aux applications de lire les messages directement à partir de la mémoire. La réduction des frais généraux de l'unité centrale renforce la capacité du réseau à transférer rapidement des données et permet aux applications de recevoir des données plus efficacement.
Dans l'ensemble, le réseau InfiniBand de bout en bout présente des avantages significatifs pour l'apprentissage de modèles à grande échelle, notamment une grande largeur de bande, une faible latence, la redondance des données et des mécanismes de correction d'erreurs. En exploitant les capacités d'InfiniBand, les chercheurs et les praticiens peuvent surmonter les limites de performance, améliorer la gestion du système et accélérer la formation de modèles linguistiques à grande échelle.
FS propose des solutions complètes de réseau InfiniBand de bout en bout
FS fournit une solution réseau complète de bout en bout en s'appuyant sur des composants avancés tels que les switchs NVIDIA Quantum-2 et les cartes à puce ConnectX InfiniBand, ainsi que sur la technologie flexible InfiniBand à 400 Gb/s. Grâce à ses connaissances approfondies sur les tendances en matière de réseaux à haut débit et à sa vaste expérience dans la mise en œuvre de projets HPC, FS a pour objectif de fournir des performances inégalées tout en réduisant les coûts et la complexité dans les infrastructures HPC (High-Performance Computing), et cloud à grande échelle.
Les solutions de réseau InfiniBand de bout en bout de FS permettent aux entreprises d'exploiter tout le potentiel de l'informatique haute performance et des infrastructures cloud hyperscale. En offrant des performances supérieures, en réduisant les coûts et en simplifiant la gestion du réseau, FS permet aux clients de rester à la pointe de l'innovation et d'atteindre efficacement leurs objectifs commerciaux.