Pourquoi l’IA consomme autant de mémoire : le vrai goulot d’étranglement des modèles

Un modèle d’intelligence artificielle peut mobiliser des dizaines, voire des centaines de gigaoctets de mémoire avant même de répondre. 

Il ne s’agit pas d’une simple histoire de puissance de calcul : ses paramètres doivent être accessibles. Chaque conversation conserve des données temporaires et l’entraînement multiplie les informations à stocker. La course aux accélérateurs équipés de mémoire HBM traduit cette contrainte très concrète. Entre RAM, VRAM, bande passante, cache et quantification, voici comment se forment ces besoins, pourquoi ils augmentent avec les longs contextes et quelles optimisations évitent de transformer chaque requête en facture matérielle démesurée.

Les 3 points clés à retenir:

  •  Un modèle de 70 milliards de paramètres en FP16 nécessite environ 140 Go rien que pour ses poids, hors cache et autres allocations.
  •  Le KV cache grossit généralement avec le contexte et le nombre de conversations simultanées, selon l’architecture.
  •  La mémoire HBM accélère l’accès aux données ; elle ne remplace ni les optimisations logicielles ni les réseaux entre GPU.

Le premier poste de dépense : les milliards de paramètres du modèle

Une IA générative n’ouvre pas un gigantesque fichier pour y chercher une phrase déjà écrite. Elle fait passer des nombres à travers des couches de calcul. Les coefficients de ces calculs sont ses paramètres, ou « poids ». Même lorsque le modèle ne produit qu’un mot, une grande partie de ces poids peut être sollicitée.

La quantité de mémoire nécessaire dépend du nombre de paramètres et du format numérique utilisé. En FP16 ou BF16, un poids occupe théoriquement deux octets. Un modèle dense de 7 milliards de paramètres représente donc environ 14 Go de poids. Avec 70 milliards, la facture atteint 140 Go. Ce calcul simple ne comprend ni les caches, ni les bibliothèques d’exécution, ni les espaces temporaires.

Pourquoi ne pas laisser les poids sur un SSD ? Parce que le stockage permanent n’offre pas le même débit qu’une mémoire proche des unités de calcul. À chaque étape de génération, des volumes importants doivent circuler. Les charger tout le temps depuis le disque rendrait l’expérience beaucoup trop lente. La RAM peut servir de relais, mais elle ne possède pas les mêmes caractéristiques que la mémoire locale d’un accélérateur.

La quantification réduit le volume, pas gratuitement

La quantification convertit les poids vers des représentations moins coûteuses. Un modèle de 70 milliards de paramètres passe théoriquement de 140 Go en 16 bits à 70 Go en 8 bits, puis 35 Go en 4 bits. Ces valeurs sont des planchers arithmétiques : les échelles, les métadonnées et certaines couches laissées en précision élevée augmentent la taille réelle.

La contrepartie dépend fortement de la méthode choisie et des tâches. Certains modèles supportent une réduction importante avec une dégradation limitée ; d’autres perdent en précision sur des calculs, des langues ou des cas atypiques. Il faut donc comparer qualité, débit et taille, plutôt que promettre qu’un modèle quatre bits vaut systématiquement sa version pleine précision.

Le KV cache : pourquoi une conversation longue mange davantage de mémoire

Lorsqu’un grand modèle de langage génère du texte, il avance habituellement token par token. Recalculer à chaque étape toutes les représentations précédentes serait inefficace. Les Transformers conservent donc les clés et valeurs issues de l’attention dans une zone appelée KV cache. Cette mémoire temporaire facilite la réutilisation des calculs déjà effectués.

Pour un cache dynamique standard, la quantité stockée augmente avec les tokens conservés, les couches et les dimensions des têtes d’attention. Une conversation qui s’allonge, un document très volumineux ou une base de code injectée dans le prompt peuvent donc peser sensiblement sur la mémoire disponible. Toutefois, la relation exacte change selon l’architecture.

Les modèles à attention groupée, ou GQA, utilisent moins de têtes Key-Value que de têtes de requête. Ils peuvent ainsi réduire le cache par rapport à une architecture classique. Certaines couches fonctionnent aussi avec une fenêtre glissante : elles écartent les états trop anciens plutôt que de conserver toute la séquence. La longueur du contexte annoncée par un fournisseur ne donne donc pas, à elle seule, une mesure de la mémoire réellement consommée.

Attention : le cache ne correspond pas à la mémoire permanente du chatbot

La mémoire d’une conversation au sens produit et le KV cache matériel désignent deux choses différentes. Un service peut sauvegarder l’historique dans une base de données, le résumer ou le rechercher ultérieurement. Le cache Key-Value, lui, est une structure de calcul temporaire. Le conserver en permanence pour tous les utilisateurs serait trop coûteux.

Cette nuance compte pour les agents et les assistants professionnels. Un document placé en stockage objet peut être très peu coûteux à conserver. En revanche, son insertion intégrale dans le contexte actif oblige le modèle à le traiter, puis à conserver éventuellement davantage de données de travail. Une stratégie de récupération ciblée devient alors préférable à l’empilement systématique de pièces jointes.

RAM, VRAM, HBM : trois mots souvent confondus

La RAM est la mémoire vive principale d’un ordinateur ou d’un serveur, généralement accessible au processeur central. La VRAM désigne la mémoire dédiée au traitement graphique ou accéléré. La HBM, pour High Bandwidth Memory, est une technologie de mémoire à bande passante élevée que l’on trouve notamment sur des accélérateurs de calcul.

La HBM empile des puces mémoire et les relie au processeur grâce à un packaging avancé. Cette proximité, et surtout la largeur des interfaces, permettent de faire circuler des quantités importantes de données à chaque seconde. Elle est cependant coûteuse à intégrer, et sa capacité physique reste limitée par les choix de conception.

La distinction cruciale oppose capacité et bande passante. La capacité répond à la question « combien de données peut-on garder ici ? ». La bande passante mesure « combien peut-on transférer par seconde ? ». Une puce peut disposer de suffisamment de mémoire pour contenir un modèle, mais générer lentement si les transferts saturent. À l’inverse, une mémoire très rapide ne sert à rien si le modèle ne tient pas dedans.

Les GPU deviennent parfois limités par les transferts

Pendant certaines phases de décodage, un accélérateur doit charger de nombreux poids pour calculer relativement peu de tokens à la fois. Les unités arithmétiques peuvent alors attendre l’arrivée des données. Augmenter seulement le nombre de cœurs ne résout pas ce goulot. C’est pourquoi les fabricants travaillent simultanément sur les opérations par seconde, les formats numériques, les caches et le débit mémoire.

Le cas des gros lots de requêtes est différent. Traiter plusieurs tokens ou utilisateurs ensemble peut améliorer l’utilisation des unités de calcul, mais mobilise aussi davantage de mémoire pour les états actifs. Toute architecture d’inférence jongle avec ce compromis entre latence d’un utilisateur et nombre de requêtes traitées par seconde.

H100, H200, B200, B300 : la course aux gigaoctets est mesurable

Les chiffres des plateformes NVIDIA HGX donnent une échelle concrète. Dans les configurations SXM documentées, le H100 propose 80 Go de HBM3 et 3,35 To/s de bande passante mémoire. Le H200 monte à 141 Go de HBM3e et 4,8 To/s. Le B200 affiche 180 Go de HBM3e et jusqu’à 8 To/s.

La documentation HGX plus récente fait aussi apparaître un B300 SXM à 288 Go de HBM3e, avec un débit annoncé jusqu’à 8 To/s. Ces valeurs s’appliquent à un GPU et à des configurations précises. Il ne faut pas les confondre avec la mémoire totale d’un serveur de huit accélérateurs, ni généraliser leurs débits à tous les produits commerciaux.

Pourquoi cette hausse ? Davantage de mémoire permet d’héberger des modèles plus volumineux et de réserver plus de place aux conversations concurrentes. Davantage de bande passante accélère l’alimentation des unités de calcul. Néanmoins, répartir un modèle sur plusieurs GPU ajoute une autre contrainte : il faut échanger des données entre puces. Les interconnexions et le réseau deviennent alors aussi importants que la HBM.

Entraîner une IA réclame bien davantage de mémoire que lui poser une question

L’inférence consiste à exploiter un modèle déjà entraîné pour produire des réponses. L’entraînement ajoute les informations nécessaires à sa modification. Pendant la rétropropagation, le système conserve ainsi les activations, les gradients et les états liés à l’optimiseur. Les activations dépendent aussi de la taille des lots et des séquences traitées.

Avec un optimiseur de la famille Adam, deux états sont maintenus par paramètre afin de suivre des statistiques du gradient. Selon la précision adoptée et l’existence de copies maîtresses, l’empreinte totale peut dépasser largement celle des seuls poids. Il serait trompeur de calculer un budget d’entraînement en multipliant uniquement le nombre de paramètres par deux octets. Les chercheurs utilisent aussi le checkpointing des activations : au lieu de tout conserver, le système recalcule certaines valeurs pendant la phase de retour. Les techniques de parallélisme et de partitionnement distribuent aussi poids, gradients ou états d’optimisation entre accélérateurs. Mais économiser de la mémoire implique souvent plus de communications ou de calculs.

À l’entraînement s’ajoutent encore les jeux de données, les checkpoints sauvegardés et les pipelines de préparation. Ceux-ci occupent surtout du stockage permanent et de la RAM hôte, pas nécessairement la HBM. Mélanger tous ces postes dans un unique chiffre de « mémoire IA » produit des comparaisons dépourvues de sens.

Comment les entreprises réduisent concrètement la consommation mémoire ?

Première piste : choisir le modèle adapté à la tâche. Un petit modèle spécialisé peut suffire pour extraire des champs ou classer des documents. Charger un modèle géant consomme davantage de mémoire et d’énergie, même lorsque les réponses recherchées sont simples. Le routage entre modèles permet de réserver les plus gros aux demandes difficiles.

Deuxième piste : tester la quantification des poids, mais aussi celle du KV cache. Hugging Face documente des caches quantifiés et des stratégies d’offloading vers le processeur. Les gains ne sont pas gratuits : les conversions et transferts peuvent augmenter le temps de réponse, surtout sur des requêtes courtes.

Troisième piste : optimiser l’allocation mémoire avec des moteurs de service spécialisés. Les blocs de cache paginés limitent la fragmentation et facilitent parfois la réutilisation de préfixes. Le partage de requêtes, le batching continu et les limites de contexte doivent être réglés ensemble, plutôt qu’en individuel.

Quatrième piste : mesurer sur des charges représentatives. Les équipes doivent suivre la mémoire qui est allouée, le nombre de requêtes en simultanées, la latence du premier token, la vitesse de génération et les erreurs de dépassement mémoire. Un benchmark sur une requête de dix mots ne prédit pas le comportement d’un assistant qui lit des contrats de cent pages.

La prochaine limite de l’IA sera autant logicielle que matérielle

L’augmentation de capacité des puces n’efface pas les contraintes physiques. La HBM coûte cher à fabriquer et intégrer, les échanges entre accélérateurs demandent du débit et les contextes volumineux occupent vite l’espace libéré. Les fabricants peuvent fournir davantage de mémoire ; les développeurs doivent apprendre à ne pas la gaspiller.

L’industrie expérimente ainsi de nouvelles architectures d’attention, des modèles utilisant moins de paramètres actifs, des caches plus compacts et de meilleurs mécanismes de récupération documentaire. Aucune méthode ne convient à tous les cas. La bonne solution dépend de l’objectif : servir davantage de clients, réduire le délai avant la première réponse ou entraîner un modèle plus ambitieux.

Au fond, la mémoire n’est pas un accessoire du GPU. Elle détermine quels modèles peuvent fonctionner, combien de conversations peuvent coexister et à quelle vitesse les données atteignent les circuits. La performance d’une IA se joue autant dans l’organisation de ces transferts que dans la puissance affichée sur la fiche commerciale.

ARTICLES SIMILAIRES