Résumé : Des données de formation non supervisées sans précédent et des lois de mise à l'échelle neuronale ont conduit à une augmentation sans précédent de la taille des modèles et des exigences informatiques pour le service/la formation du LLM. Cependant, le principal goulot d’étranglement en termes de performances se déplace de plus en plus vers la bande passante mémoire.
Au cours des 20 dernières années, le pic de FLOPS du matériel serveur a augmenté à un rythme de 3,0 fois/2 ans, dépassant la croissance de la DRAM et de la bande passante d'interconnexion, qui n'ont augmenté que de 1,6 fois/2 ans et 1,4 fois/2 ans respectivement. . Cet écart fait de la mémoire plutôt que de l’informatique le principal goulot d’étranglement pour les applications d’IA, en particulier dans les services.
Ici, nous analysons les modèles de transformateur d'encodeur et de décodeur et montrons comment la bande passante mémoire peut devenir un goulot d'étranglement majeur pour les modèles de décodeur. Nous préconisons la refonte de l'architecture des modèles, des stratégies de formation et de déploiement pour surmonter les contraintes de mémoire.
introduction
Récemment, l'effort de calcul requis pour former de grands modèles de langage (LLM) a augmenté à un rythme de 750 ×/2 ans. Cette tendance à la croissance exponentielle est un moteur majeur des accélérateurs d’IA, qui se concentrent sur l’augmentation de la puissance de calcul maximale du matériel, souvent au détriment de la simplification d’autres éléments tels que les hiérarchies de mémoire.
Cependant, ces tendances ignorent un nouveau défi dans la formation et le service des modèles d’IA : les goulots d’étranglement de la mémoire et de la communication. En fait, le goulot d’étranglement de certaines applications d’intelligence artificielle réside dans la communication intra-puce/inter-puce (intra/inter-puce) et dans la communication des accélérateurs d’intelligence artificielle, plutôt que dans l’informatique. Ce n’est pas un phénomène nouveau ; des travaux ont déjà été observés et mis en garde contre ce problème. L'une des premières observations remonte à 1990, lorsqu'Ousterhout a analysé les facteurs qui affectent les performances du système d'exploitation et est parvenu aux conclusions suivantes :
"Le premier problème lié au matériel est la bande passante mémoire : les tests montrent que la bande passante mémoire ne peut pas suivre la vitesse du processeur...". "Si la bande passante mémoire des futures machines ne s'améliore pas de manière significative, certaines classes d'applications pourraient être limitées par les performances de la mémoire."
Plus tard, en 1995, William Wulf et Sally McKee ont fait écho à cette prédiction et ont inventé le terme « mur de la mémoire ». Leur argument suit un principe simple mais élégant. Le temps nécessaire pour terminer une opération dépend de la rapidité avec laquelle nous effectuons l'opération et de la rapidité avec laquelle nous fournissons les données à l'unité informatique matérielle.
Selon cette hypothèse, même si 80 % des données sont facilement disponibles dans le cache et que seulement 20 % doivent être récupérées de la DRAM, s'il faut plus de 5 cycles pour récupérer 20 % des données manquantes dans le cache de la DRAM, alors le le temps nécessaire pour terminer l’opération sera complètement limité par la DRAM.
Cela signifie que quelle que soit la vitesse à laquelle le matériel effectue les opérations par seconde, le problème sera complètement limité par la bande passante de la DRAM. Ils prédisent que la différence entre la vitesse à laquelle les calculs sont effectués et la vitesse à laquelle les données sont obtenues entraînera un problème de « mur de mémoire ». De là, ils ont conclu
"Chaque technologie continue de progresser de façon exponentielle, mais l'indice du microprocesseur est beaucoup plus grand que l'indice de la DRAM. Les différences entre les différents indices augmentent également de façon exponentielle."
Plusieurs études ultérieures ont rapporté des observations similaires.
Dans ce travail, nous revisitons cette tendance en examinant des données plus récentes, en nous concentrant spécifiquement sur les caractéristiques du matériel utilisé pour entraîner les modèles d'IA et sur le calcul utilisé pour entraîner/servir ces modèles. Trente ans plus tard, ces observations et prédictions ne pourraient être plus vraies. Malgré de nombreuses innovations dans le domaine de la technologie de la mémoire, les tendances montrent que les « murs de mémoire » deviennent de plus en plus un goulot d'étranglement majeur pour toute une série de tâches d'intelligence artificielle.
Nous analysons d’abord comment la charge de calcul maximale du matériel d’IA de niveau serveur a changé depuis que Yann Lecun a formé le célèbre modèle Lenet-5 sur les données du MNIST en 1998. Nous pouvons constater qu'au cours des 20 dernières années, le volume de calcul maximal du matériel a été multiplié par 60 000, tandis que la DRAM a été multipliée par 100 et la bande passante d'interconnexion a été multipliée par 30.
Le problème du mur de mémoire implique à la fois une capacité limitée, une bande passante de transfert mémoire et sa latence (qui est plus difficile à améliorer que la bande passante). Cela nécessite différents niveaux de transfert de données en mémoire. Par exemple, la transmission de données entre la logique informatique et la mémoire sur puce, ou la transmission de données entre la logique informatique et la mémoire DRAM, ou la transmission de données entre différents processeurs sur différents sockets. Dans tous ces cas, la capacité et la vitesse de transfert des données sont nettement inférieures à la puissance de calcul du matériel.
Maintenant, si nous examinons les tendances récentes des modèles d'intelligence artificielle, en particulier le LLM, nous constaterons que les praticiens, guidés par la loi de la mise à l'échelle neuronale, ont augmenté la quantité de données et la taille des modèles nécessaires pour entraîner les modèles récents...
[Courte citation de 8% de l'article original]