IA : comment son développement pourrait être compromis par une mise en réseau non-optimale

Exclusivité DCmag par Amit Sanyal, Senior Director of Data Center Product Marketing, Juniper Networks

Imaginez un monde où les machines comprennent les humains et vont même plus loin en créant, prédisant et révolutionnant des secteurs entiers… Si cela peut encore sembler tiré d’un film de science-fiction, il s’agit pourtant bel et bien d’une réalité qui s’insère progressivement dans nos vies quotidiennes avec l’IA. De l’usage changeant des smartphones aux découvertes scientifiques et aux applications d’entreprise, l’influence de l’IA grandit continuellement grâce à ses innovations dans l’infrastructure matérielle et logicielle, également inhérente aux grands modèles de langage (LLM).

Le cycle de vie de l’IA : de la formation à son inférence

Tout commence par la formation. Contrairement à l’IT traditionnel, où les programmes suivent une logique pré-codée, les applications d’IA générative assimilent des séquences à partir de vastes ensembles de données, introduits dans un LLM au cours de la phase d’apprentissage. Ce processus fait appel aux réseaux neuronaux, semblables aux neurones humains, qui appliquent des fonctions mathématiques (dites d’activation) à la somme pondérée de ses inputs (paramètres) pour générer des outputs. Grâce aux GPU et aux xPU, des quantités massives de données sont échangées entre les nœuds d’un réseau neuronal, ce qui en fait une partie intégrante de l’infrastructure de l’IA.

Une fois formés à l’aide de données génériques, les modèles sont affinés avec les spécifiques afin d’améliorer la précision, la pertinence et l’efficacité. Cet apprentissage basé sur le retour d’information humain (RLHF) est fréquemment utilisé pour éliminer les biais et les inventions. Les modèles spécialisés utilisent également la génération augmentée par récupération (RAG) pour améliorer la précision et l’actualité des données, au fur et à mesure qu’elles sont utilisées pour l’inférence.

Le besoin d’une infrastructure solide pour supporter la pile de solutions d’IA

Une pile de solutions d’IA efficace comprend plusieurs couches, chacune étant essentielle au fonctionnement global. Au sommet se trouvent les applications et les agents d’IA, qui fournissent des fonctionnalités spécifiques aux cas d’utilisation et aux domaines. Ceux-ci sont conçus à partir de LLM (par exemple, ChatGPT, Gemini, Llama) capables de comprendre le langage humain et d’y répondre en traitant d’énormes ensembles de données de texte, d’images, d’audio et de vidéo.

Ces applications s’appuient ainsi sur une infrastructure logicielle solide, comprenant des cadres de machine learning tels que PyTorch et TensorFlow. Ces derniers fournissent aux développeurs des instruments essentiels pour développer et former les modèles, ainsi que des bibliothèques et des calculateurs, tels que NumPy, optimisés pour les opérations matricielles pour des GPU/xPU spécifiques.

Les logiciels de gestion de plateforme, qui englobent les systèmes d’exploitation (OS), les conteneurs, les orchestrateurs, le clustering, les programmateurs et la surveillance, jouent aussi un rôle important dans l’automatisation et la gestion du cycle de vie du machine learning.

Le matériel constitue la base de la pile d’IA. Elle est alors composée d’infrastructures de calcul, de stockage et de mise en réseau. Le calcul comprend des serveurs d’IA construits avec des accélérateurs (GPU/xPU), des CPU, des mémoires à large bande passante (HBM) et des interfaces de réseau à haute performance. Les systèmes de stockage sont utilisés pour alimenter les GPU/xPU en données et contrôler les résultats intermédiaires afin de se prémunir contre les défaillances. Les GPU/xPU de ces serveurs chargent le modèle et les données dans la HBM, exécutent des fonctions mathématiques et produisent des résultats ou des sorties. Ceux-ci sont ensuite échangés entre les GPU/xPU par l’intermédiaire d’un réseau hautement évolutif à faible latence. Pendant la phase de formation, ce cycle de calcul se répète sur plusieurs jours, voire plusieurs semaines.

Une mise en réseau gourmande sous-tendue par une gestion optimale des flux

La mise en réseau est un élément essentiel des clusters d’intelligence artificielle, puisqu’elle est à la source de l’architecture distribuée nécessaire aux charges de travail. Aujourd’hui, les serveurs d’IA représentent plus de 80 % du coût total de l’infrastructure. Les retards dans les communications réseau peuvent également entraîner une sous-utilisation des serveurs d’IA coûteux, ce qui a un impact non négligeable sur les performances globales et la rentabilité.

L’apprentissage de l’IA est extrêmement gourmand en calcul et est impossible sans une architecture scale-out. Les algorithmes d’IA exploitent des techniques de parallélisme pour performer, en utilisant une combinaison de données (partition entre plusieurs GPU/xPU) et de modèles (partition du calcul entre plusieurs GPU/xPU d’IA) pour une meilleure efficacité. Avec cette approche, les serveurs d’IA ont désormais besoin de communiquer périodiquement via le réseau, connu sous le nom d’échange de gradient – ainsi la communication est close à chaque phase.

L’utilisation du concept de parallélisme nécessite d’énormes transferts de données au cours de la formation en utilisant l’accès direct à la mémoire à distance (RDMA). Cela génère des flux massifs sur le réseau, dits  » flux éléphants », et d’importantes congestions. Un réseau continu doté de capacités d’équilibrage de la charge et de gestion de la congestion est essentiel pour maintenir l’efficacité, les performances et la fiabilité des clusters d’IA. En raison de cette grande quantité de données devant être stockées et consultées efficacement, le checkpointing (création de captures régulières de la progression de l’entraînement du modèle) est crucial pour assurer la résilience du matériel.

Les clusters d’IA disposent généralement de plusieurs réseaux, chacun remplissant des fonctions distinctes. Le réseau front-end relie le serveur d’IA au reste du datacenter et au monde externe, aidant les utilisateurs à se connecter au cluster d’IA. L’interconnexion des datacenters (DCI) relie quant à elle plusieurs datacenters hébergeant des clusters d’IA pour des raisons de haute disponibilité et de résilience. Enfin, le réseau scale-out est utilisé pour l’échange de gradients durant la formation.

Le réseau de stockage dorsal relie les serveurs d’IA à un système de stockage haute performance. Enfin, le réseau scale-up relie de nombreux serveurs IA au sein d’un boîtier ou d’un rack à l’aide d’un réseau à cohérence de cache et à large bande passante spécifique au fournisseur, comme NVLink pour Nvidia et Infinity Fabric pour AMD. Récemment, une alternative basée sur des normes ouvertes, appelée UALink (Ultra Accelerator Link), a émergé avec un large soutien de
l’industrie.

Au-delà des considérations technologiques, garantir une utilisation éthique de l’IA et empêcher son utilisation abusive est primordial. Les grands consortiums d’IA apparus ces derniers mois auront ainsi une grande responsabilité dans la promotion de la collaboration et de l’innovation.

à lire