Comment choisir entre InfiniBand et RoCE

Une bande passante ultra élevée, une latence ultra faible et une fiabilité ultra élevée sont les exigences réseau pour la formation de grands modèles.

Pendant de nombreuses années, le protocole TCP/IP a été le pilier de la communication Internet, mais pour les réseaux d'IA, TCP/IP présente des inconvénients fatals. Le protocole TCP/IP a une latence élevée, généralement de l'ordre de plusieurs dizaines de microsecondes, et entraîne également une charge importante sur le processeur. RDMA peut accéder directement aux données de la mémoire via l'interface réseau, sans l'intervention du noyau du système d'exploitation. Cela permet une communication réseau à haut débit et à faible latence, particulièrement adaptée à une utilisation dans des clusters d'ordinateurs parallèles à grande échelle.

InfiniBand, RoCEv1, RoCEv2 et iWARP sont les quatre implémentations de la technologie RDMA. Pourtant, RoCEv1 n’est plus utilisé et iWARP est rare. Les solutions réseau les plus répandues dans l'industrie sont InfiniBand et RoCEv2.

Pile de protocole RDMA

Quelles sont les exigences réseau pour les charges de travail HPC/AI ?

La plupart des centres de données utilisent aujourd’hui une architecture réseau à deux niveaux, tandis que les clusters d’IA sont des superordinateurs conçus pour exécuter des tâches d’IA complexes à grande échelle. Les charges de travail informatiques s'exécutent en parallèle sur plusieurs GPU, nécessitant une utilisation élevée. Par conséquent, par rapport aux réseaux de centres de données traditionnels, les réseaux de centres de données IA sont confrontés à une complexité supplémentaire :

  • Informatique parallèle : les charges de travail d'IA sont une infrastructure unifiée de plusieurs machines exécutant la même application/tâche informatique ;
  • Échelle : l'échelle des tâches HPC/IA peut atteindre des milliers de moteurs de calcul (tels que les GPU, les CPU, les FPGA, etc.) ;
  • Types de tâches : différentes tâches varient en taille, en durée d'exécution, en taille et en quantité de l'ensemble de données à prendre en compte, en type de réponse à générer et en différents langages utilisés pour coder l'application et le type de matériel sur lequel elle s'exécute, qui sont tous à l'origine des modèles de trafic au sein de l'application. réseau conçu pour exécuter des charges de travail HPC/IA en constante évolution ;
  • Sans perte : dans les centres de données traditionnels, les messages perdus sont retransmis, tandis que dans les charges de travail d'IA, les messages perdus signifient que l'ensemble du calcul est erroné ou bloqué. Par conséquent, les centres de données IA ont besoin d’un réseau sans perte.
  • Bande passante : un trafic à large bande passante doit s'exécuter entre les serveurs pour que les applications puissent accéder aux données. Dans les déploiements modernes, la vitesse d'interface de chaque moteur informatique pour l'IA ou d'autres capacités de calcul hautes performances atteint 400 Gbit/s.

Ces complexités posent des défis importants aux réseaux d'IA. Les réseaux de centres de données d'IA doivent donc disposer d'une bande passante élevée, d'une faible latence, d'une absence de gigue, d'une perte de paquets et d'une stabilité à long terme.

De TCP/IP à RDMA

Pour les applications telles que HPC/AI qui nécessitent une faible latence et une concurrence d'E/S élevée, l'architecture logicielle et matérielle TCP/IP existante ne peut pas répondre aux exigences de l'application. La communication réseau TCP/IP traditionnelle utilise le noyau pour envoyer des messages, ce qui entraîne une surcharge élevée en matière de déplacement et de copie de données. Par exemple, dans un transfert de données IP typique, lorsqu'une application sur un ordinateur envoie des données à une application sur un autre ordinateur, les opérations suivantes se produisent du côté récepteur :

  1. Le noyau doit recevoir les données.
  2. Le noyau doit déterminer à quelle application appartiennent les données.
  3. Le noyau réveille l'application.
  4. Le noyau attend que l'application effectue un appel système sur le noyau.
  5. L'application copie les données de l'espace mémoire du noyau vers le tampon fourni par l'application.

Ce processus signifie que si l'adaptateur hôte utilise l'accès direct à la mémoire (DMA), la majeure partie du trafic réseau est copiée dans la mémoire principale du système. De plus, l'ordinateur effectue certains changements de contexte pour basculer entre le noyau et l'application. Ces changements de contexte peuvent entraîner une charge CPU plus élevée et un trafic élevé tout en ralentissant d'autres tâches.

Transmission TCP-IP

Transmission TCP/IP

Contrairement à la communication IP traditionnelle, la communication RDMA contourne l'intervention du noyau dans le processus de communication, permettant à l'hôte d'accéder directement à la mémoire d'un autre hôte, réduisant ainsi la surcharge du processeur. Le protocole RDMA permet à l'adaptateur hôte de décider quelle application doit le recevoir et où le stocker dans l'espace mémoire de cette application une fois le paquet entré dans le réseau. L'adaptateur hôte n'envoie pas le paquet au noyau pour traitement et le copie dans la mémoire de l'application utilisateur, mais place directement le contenu du paquet dans le tampon de l'application.

Transmission RDMA

Transmission RDMA

La transmission RDMA réduit le nombre de cycles CPU impliqués, ce qui contribue à améliorer le débit et les performances. En d'autres termes, l'essence du RDMA est que pour les scénarios de calcul et de stockage distribués à grande échelle, il permet à la carte réseau de contourner le processeur et d'accéder directement à la mémoire du serveur distant, accélérant ainsi l'interaction entre les serveurs, réduisant la latence et utilisant les précieuses ressources CPU pour le calcul de grande valeur et le contrôle logique.

Par rapport aux réseaux TCP/IP traditionnels, InfiniBand et RoCEv2 contournent la pile de protocoles du noyau et les performances de latence peuvent être améliorées de plusieurs ordres de grandeur. Lorsque la communication au sein du même cluster peut être réalisée en un seul saut, des tests expérimentaux montrent qu'après avoir contourné la pile de protocoles du noyau, la latence de bout en bout au niveau de la couche application peut être réduite de 50 us (TCP/IP) à 5 us (RoCE). ) ou 2us (InfiniBand).

latence de communication de bout en bout de différentes technologies

Une introduction aux réseaux InfiniBand

Les réseaux InfiniBand utilisent des adaptateurs ou des commutateurs InfiniBand au lieu d'Ethernet pour réaliser la transmission de données. La latence de port à port d'un type spécifique de commutateur Ethernet est de 230 ns, tandis que la latence d'un commutateur InfiniBand avec le même nombre de ports est de 100 ns.

Réseaux InfiniBand

Les composants clés d'un réseau InfiniBand incluent un gestionnaire de sous-réseau (SM), une carte réseau IB, un commutateur IB et un câble IB. Les commutateurs InfiniBand n'exécutent aucun protocole de routage et les tables de transfert de l'ensemble du réseau sont calculées et distribuées par un gestionnaire de sous-réseau centralisé. En plus des tables de transfert, le SM est également responsable de la gestion des partitions, de la QoS et d'autres configurations dans le sous-réseau InfiniBand. Les réseaux InfiniBand nécessitent des câbles et des modules optiques dédiés pour interconnecter les commutateurs et connecter les commutateurs aux cartes réseau.

Réseau local sans perte

Les réseaux InfiniBand utilisent un mécanisme de jeton de crédit pour éviter fondamentalement le débordement de tampon et la perte de paquets. L'expéditeur ne lance la transmission des paquets qu'après avoir confirmé que le destinataire dispose de suffisamment de crédits pour accepter le nombre correspondant de paquets.

Chaque lien du réseau InfiniBand dispose d'un tampon prédéterminé. L'expéditeur ne transmet pas de données dépassant la taille du tampon prédéterminé disponible chez le récepteur. Une fois que le destinataire a terminé le transfert, il libère le tampon et renvoie en permanence la taille de tampon prédéterminée actuellement disponible à l'expéditeur. Ce mécanisme de contrôle de flux au niveau du lien garantit que l'expéditeur n'envoie pas trop de données, empêchant ainsi le débordement de la mémoire tampon du réseau et la perte de paquets.

diagramme de transmission de données sans perte dans le réseau InfiniBand

Capacité d'extension de la carte réseau

Le routage adaptatif d'InfiniBand est basé sur un routage dynamique par paquet, garantissant une utilisation optimale du réseau dans les déploiements à grande échelle. Il existe de nombreux exemples de clusters GPU à grande échelle utilisant des réseaux InfiniBand, tels que Baidu Artificial Intelligence Cloud et Microsoft Azure.

Les cartes réseau InfiniBand ont évolué rapidement en termes de vitesse, avec 200 Gbit/s HDR déjà largement déployées commercialement et des cartes réseau 400 Gbit/s NDR commençant également à être déployées commercialement. Il existe actuellement sur le marché d'importantes solutions réseau InfiniBand et des fournisseurs d'équipements de support, tels que NVIDIA, Intel, Cisco et HPE. Parmi eux, NVIDIA détient la part de marché la plus élevée, dépassant les 70 %. La figure suivante montre le modèle couramment utilisé Cartes réseau InfiniBand.

Capacité d'extension de la carte réseau

Une introduction aux réseaux RoCEv2

RoCE implémente la fonctionnalité RDMA sur Ethernet, qui peut contourner TCP/IP et utiliser du matériel offchargement, réduisant ainsi l’utilisation du processeur. RoCE a deux versions principales : RoCEv1 et RoCEv2. RoCEv1 est un protocole RDMA implémenté sur la couche liaison Ethernet. Les commutateurs doivent prendre en charge des techniques de contrôle de flux telles que PFC pour garantir une transmission fiable au niveau de la couche physique. RoCEv2 est implémenté sur la couche UDP du protocole Ethernet TCP/IP et introduit le protocole IP pour résoudre les problèmes d'évolutivité.

RoCEv2 prend en charge le routage RDMA sur les réseaux Ethernet de couche 3. RoCEv2 remplace la couche réseau InfiniBand par des en-têtes IP et UDP sur la couche de liaison Ethernet, ce qui permet d'acheminer RoCE entre des routeurs traditionnels basés sur IP.

Les réseaux InfiniBand sont, dans une certaine mesure, des réseaux gérés de manière centralisée avec SM (gestionnaire de sous-réseau), tandis que les réseaux RoCEv2 sont de purs réseaux distribués composés de cartes réseau et de commutateurs prenant en charge RoCEv1, adoptant généralement une architecture à deux couches.

schéma de l'architecture du réseau RoCE

Les principaux fournisseurs de cartes réseau RoCE sont NVIDIA, Intel et Broadcom, etc. Les cartes PCIe sont la principale forme de cartes réseau pour les serveurs de centres de données. La vitesse PHY du port de RDMA Les cartes commencent généralement à partir de 50 Gbit/s, et les cartes réseau commerciales actuellement disponibles peuvent atteindre jusqu'à 400 Gbit/s de vitesse sur un seul port.

Carte réseau RoCE

Actuellement, la plupart des commutateurs de centres de données prennent en charge la technologie de contrôle de flux RDMA, qui peut réaliser une communication RDMA de bout en bout lorsqu'elle est combinée avec des cartes réseau prenant en charge RoCE. Les principaux acteurs des commutateurs de centres de données sont Cisco, HPE, Arista, etc. Le cœur des commutateurs hautes performances est la puce de transfert qu'ils utilisent. Actuellement sur le marché, les puces de la série Tomahawk de Broadcom sont largement utilisées dans les puces de transfert commerciales. Parmi eux, la puce de la série Tomahawk3 est plus couramment utilisée dans les commutateurs, et les commutateurs prenant en charge la puce de la série Tomahawk4 augmentent progressivement sur le marché.

évolution des puces de transfert Ethernet

InfiniBand contre RoCE

Comparé à InfiniBand, RoCE offre une plus grande polyvalence et un coût relativement inférieur. Il peut être utilisé non seulement pour construire des réseaux RDMA hautes performances, mais également pour l'Ethernet traditionnel. Cependant, la configuration de paramètres tels que la marge, le PFC (Priority-based Flow Control) et l'ECN (Explicit Congestion Notification) sur les commutateurs peut s'avérer complexe. Dans les déploiements à grande échelle, les performances de débit globales des réseaux RoCE peuvent être légèrement inférieures à celles des réseaux InfiniBand.

IB contre RoCE
  • D'un point de vue technique, InfiniBand adopte diverses technologies pour améliorer les performances de transfert du réseau, réduire le temps de récupération après panne, améliorer l'évolutivité et réduire la complexité opérationnelle.
  • En termes de performances commerciales, InfiniBand a une latence de bout en bout inférieure à RoCEv2, de sorte que les réseaux construits sur InfiniBand ont un avantage en termes de performances commerciales au niveau des applications.
  • En termes de bande passante et de latence, des facteurs tels que la congestion et le routage affectent une interconnexion réseau haute performance.

Congestion

InfiniBand utilise deux messages de relais de trames différents pour contrôler la congestion : la notification de congestion explicite avant (FECN) et la notification de congestion explicite vers l'arrière (BECN). Lorsque le réseau est encombré, FECN informe l'appareil récepteur, tandis que BECN informe l'appareil émetteur. InfiniBand combine FECN et BECN avec un taux de marquage adaptatif pour réduire la congestion. Il fournit un contrôle de congestion à gros grain.

Le contrôle de la congestion sur RoCE utilise la notification explicite de congestion (ECN), qui est une extension d'IP et de TCP qui permet la notification de congestion du réseau des points de terminaison sans abandonner de paquets. ECN place une marque sur l'en-tête IP pour indiquer à l'expéditeur qu'il y a une congestion. Pour les communications de congestion non ECN, les paquets perdus doivent être retransmis. ECN réduit la perte de paquets causée par la congestion des connexions TCP, évitant ainsi la retransmission. Moins de retransmissions peuvent réduire la latence et la gigue, offrant ainsi de meilleures performances de transaction et de débit. ECN fournit également un contrôle de congestion à gros grain, ce qui ne présente aucun avantage évident par rapport à InfiniBand.

Routage

En cas de congestion du réseau, le routage adaptatif envoie les appareils via des itinéraires alternatifs pour réduire la congestion et accélérer la transmission. RoCE v2 fonctionne sur IP. L'IP est routable depuis des décennies grâce à des algorithmes de routage avancés, et elle peut désormais prédire les itinéraires encombrés grâce à l'apprentissage automatique de l'IA et envoyer automatiquement des paquets via des itinéraires plus rapides. En termes de routage, Ethernet et RoCE v2 présentent des avantages significatifs.

Cependant, InfiniBand et RoCE ne font pas grand-chose pour gérer la latence de queue. La latence de queue est très importante pour la synchronisation des applications de messages HPC.

L'UEC envisage de définir un nouveau protocole de transport

En plus des InfiniBand et RoCE, d'autres protocoles ont été proposés par l'industrie.

Le 19 juillet, l'Ultra Ethernet Consortium (UEC) a été officiiellement établi. L'objectif de l'UEC est d'aller au-delà des capacités Ethernet existantes et de fournir une couche de transport hautes performances, distribuée et sans perte, optimisée pour le calcul haute performance et l'intelligence artificielle. Les membres fondateurs de l'UEC comprennent AMD, Arista, Broadcom, Cisco, Eviden, HPE, Intel, Meta et Microsoft, qui possèdent tous des décennies d'expérience dans les déploiements de réseaux, d'intelligence artificielle, de cloud et de calcul haute performance à grande échelle.

membres fondateurs

L'UEC estime que le RDMA, défini il y a plusieurs décennies, est obsolète face au trafic réseau exigeant d'IA/ML. RDMA transfère les données en gros blocs de trafic, ce qui peut provoquer un déséquilibre et une surcharge des liaisons. Il est temps de commencer à créer un protocole de transport moderne prenant en charge le RDMA pour les applications émergentes.

Il est rapporté que le protocole de transport UEC est en cours de développement, visant à fournir un meilleur transport Ethernet que le RDMA actuel (toujours prenant en charge le RDMA), tout en conservant les avantages d'Ethernet/IP et en offrant les performances requises par les applications IA et HPC. Le transport UEC est une nouvelle forme de couche quasi-transport qui comporte quelques ajustements sémantiques, un protocole de notification de congestion et des fonctionnalités de sécurité améliorées. L'UEC fournira un transport plus flexible qui ne nécessite pas de réseau sans perte, permettant ainsi à plusieurs charges de travail d'intelligence artificielle de nécessiter une transmission de paquets multivoies et dans le désordre, ainsi que d'autres fonctionnalités.

Plus de puissance d'entreprise

À mesure que le réseau HPC/AI continue d'évoluer, de plus en plus d'entreprises lancent leurs propres protocoles ou solutions réseau pour répondre à leurs besoins spécifiques.

Tencent Cloud utilise son réseau Starlink RDMA auto-développé dans son réseau Starlink, qui permet aux GPU de communiquer directement entre eux, économisant ainsi les ressources CPU et améliorant les performances et l'efficacité globales des nœuds informatiques. Grâce à son protocole collaboratif de bout en bout auto-développé TiTa, le réseau Starlink peut atteindre 90 % de perte de paquets en charge 0. Le protocole TiTa intègre un algorithme de contrôle de congestion, qui peut surveiller l'état du réseau en temps réel et optimiser la communication, rendant la transmission des données plus fluide et la latence plus faible.

Alibaba Cloud Panjiu PredFabric utilise son protocole réseau à haut débit Solar-RDMA auto-développé, qui permet aux processeurs d'accéder à la mémoire de n'importe quel autre serveur via des instructions de chargement/stockage, ce qui est très approprié pour la forme interactive des réseaux de neurones dans les modèles d'apprentissage en profondeur. . Par rapport au mode traditionnel, le temps d'auto-guérison et la latence de la queue peuvent être réduits de 90 %.

Le réseau de centres de données hyper-convergé de Huawei utilise son algorithme intelligent sans perte original iLossless, qui coopère avec trois technologies clés de technologie de contrôle du trafic, de technologie de contrôle de la congestion et de technologie de réseau de stockage intelligent sans perte pour empêcher qu'une impasse PFC ne se produise à l'avance, atténuer/libérer la congestion, et obtenez un contrôle rapide des hôtes, créant ainsi un réseau Ethernet sans perte et résolvant le problème de perte de paquets de congestion dans les réseaux Ethernet traditionnels.

La demande croissante du marché est le moteur fondamental du développement technologique. Selon les données d'IDC, les investissements dans la construction d'infrastructures d'IA atteindront 154 milliards de dollars américains en 2023 et passeront à 300 milliards de dollars américains d'ici 2026. En 2022, le marché des réseaux d'IA a atteint 2 milliards de dollars américains, dont InfiniBand a contribué à 75 % des revenus. .

En comparant InfiniBand et RoCE, nous pouvons voir que les deux ont leurs propres avantages et scénarios d'application. InfiniBand fonctionne bien dans le domaine du calcul haute performance, offrant d'excellentes performances, une faible latence et une évolutivité. RoCE est plus facile à intégrer dans l’infrastructure Ethernet existante et coûte moins cher. Les protocoles de transport émergents représentés par l'UEC représentent également le développement et l'innovation continus de la technologie. Ce n'est qu'en nous adaptant à l'évolution des besoins que nous pourrons maintenir notre compétitivité de base.

Laisser un commentaire

Remonter en haut