Chiosa
FR
Systems & Infrastructure

Le contexte réutilisé des sessions IA peut peser sur la mémoire GPU

Understanding KV Residency in Production-Scale Agentic LLM Workloads · arXiv:2610.22863

4 min
Mis à jour

En termes simples

Les sessions d’IA passent souvent plusieurs appels au modèle tout en réutilisant le contexte de la même conversation. Les calculs conservés pour ce contexte peuvent accélérer les appels suivants, mais ils occupent de la mémoire GPU même lorsque la session est inactive.

Les auteurs ont étudié quatre charges de travail Microsoft M365 et relu les traces de leurs appels. Dans une relecture de Research, supprimer le contexte conservé après une heure a fortement réduit l’usage mémoire estimé, tout en n’augmentant que légèrement la part des appels qui devaient reconstruire ce contexte. Le résultat dépend des estimations mémoire et des règles de relecture de l’étude.

La recherche

Lorsqu’une session de modèle effectue des appels répétés, conserver son contexte peut éviter de recalculer certaines informations, mais cela mobilise de la mémoire GPU même pendant les périodes d’inactivité.

Quelle part de cette mémoire peut-on libérer avant que de nombreux appels de retour doivent reconstruire leur contexte ?

Les auteurs relisent des traces d’appels en production pour étudier comment l’éviction après inactivité, les copies de cache récupérables et l’état local aux déploiements influent sur la reconstruction du contexte.

Les auteurs ont relu des traces d’appels en production pour déterminer si le contexte conservé des sessions peut être libéré sans obliger de nombreux appels à le reconstruire.

La configuration mémoire des modèles en production étant confidentielle, ils ont estimé la mémoire KV à partir d’une configuration publique de référence et comparé différentes règles de conservation sur les traces de Research.

Dans l’intégralité de la trace Research admissible, une limite d’inactivité d’une heure a réduit l’occupation maximale estimée pour l’ensemble du parc de 501,8 To à 140,8 To, tandis que la part des appels nécessitant une reconstruction est passée de 4,07 % à 4,53 %.

Ces résultats étayent l’idée que conserver l’état maximal pendant de longues périodes d’inactivité gonfle l’estimation, alors que la limite testée n’ajoute que relativement peu d’appels nécessitant une reconstruction.

Il s’agit d’estimations et de relectures contrefactuelles de traces, pas de mesures d’une politique de conservation déployée. Les traces couvrent quatre charges de travail Microsoft M365, et la relecture ne mesure pas l’effet des copies de cache en précision réduite sur les réponses, la latence ou les coûts de transfert.

Ce que montrent les preuves

  • La mémoire mobilisée par les sessions

    Cette étude opérationnelle des systèmes cherche à déterminer comment les systèmes de service doivent gérer l’état du cache clé-valeur (KV) conservé entre les appels d’une session. Les appels suivants peuvent réutiliser les calculs effectués à partir du contexte précédent, mais garder cet état en mémoire GPU mobilise de la capacité pendant l’inactivité d’une session.

    Les auteurs analysent quatre charges de travail Microsoft M365 en production et relisent leurs séquences d’appels pour étudier la pression sur la mémoire et l’état local à chaque déploiement.

  • Estimer l’ampleur de la mémoire

    Les estimations en octets reposent sur la configuration publique du cache KV de Llama-2-70B, car celle des modèles en production est confidentielle. Selon cette hypothèse, l’état KV estimé d’une session Deep Research au 99e centile atteint 81,6 Gio, davantage que les 80 Go de mémoire d’un GPU H100.

    Dans une estimation distincte, conserver l’état maximal de chaque session Research admissible pendant toute sa durée de vie observée donne un plafond de 501,8 To pour l’ensemble du parc. Ces chiffres ne concernent que le cache KV estimé, pas l’allocation réelle des GPU.

  • Tester une limite d’inactivité

    Les auteurs relisent ensuite l’intégralité de la trace Research admissible en appliquant une limite d’inactivité : après une heure sans activité, l’état KV de taille maximale d’une session est évacué. L’occupation maximale estimée pour l’ensemble du parc passe de 501,8 To à 140,8 To, tandis que la part des appels nécessitant une reconstruction passe de 4,07 % à 4,53 %.

    Ces pourcentages portent sur les appels de cette trace. La comparaison indique que conserver l’état maximal pendant de longues périodes d’inactivité gonfle l’estimation où tout reste en mémoire, alors que la hausse des reconstructions dans cette relecture reste modeste avec ce réglage.

  • Des copies récupérables réduisent les reconstructions

    Une autre relecture teste des règles de gestion mémoire sur les 176 007 appels de l’heure la plus chargée de Research, répartis entre 9 486 sessions, avec un budget commun de 4,7 To. Les appels nécessitant une reconstruction représentent 62,9 % sous la règle LRU, qui évacue l’état utilisé le moins récemment, et 31,1 % sous FNU, qui évacue celui dont le prochain accès est le plus éloigné en s’appuyant sur une connaissance du futur.

    Conserver l’état évacué sous forme d’une copie int4 plus compacte ramène ce taux à 13,6 %. Comme MRR évacue dans le même ordre que LRU, son avantage par rapport à LRU montre l’effet de garder une copie compacte et récupérable au lieu de détruire l’état.

    Son avantage sur FNU avec ce budget vient du fait qu’elle peut faire tenir davantage d’état, et non de sa connaissance du futur ; avec le budget le plus serré testé, FNU affiche un taux de reconstruction inférieur. Ce résultat vaut pour cette relecture et ce budget ; il ne tient compte ni de la qualité des réponses ni du coût de restauration des copies.

  • Le placement crée un seuil distinct

    Enfin, une relecture avec mémoire illimitée modifie la façon d’identifier les objets du cache. Lorsque l’état reste local à un déploiement, identifier les objets par la session et le déploiement fait passer la proportion minimale de reconstructions au premier accès de 5,4 % à 20,2 % des appels pendant la même heure de Research.

    Les auteurs interprètent ce résultat comme un problème de placement distinct de la pression sur la mémoire : une capacité accrue ne peut pas éliminer les reconstructions dues à l’indisponibilité de l’état sur un autre déploiement.

Détails

Article suivantPourquoi un cache partagé pour les invites a accru la latence de queue