Helix Parallelism : La Clé pour des Modèles AI à Millions de Tokens sans Compromettre l’Interactivité
Comment rendre le monde plus intelligent grâce aux modèles multi-millions de tokens Les applications d'IA modernes s'appuient de plus en plus sur des modèles combinant des nombres colossaux de paramètres et des fenêtres de contexte de plusieurs millions de tokens. Que ce soit des assistants virtuels qui suivent des conversations sur plusieurs mois, des assistants juridiques raisonnant avec des gigaoctets de jurisprudence équivalents à un ensemble complet d'encyclopédies, ou des copilotes de codage naviguant dans des dépôts vastes, la préservation d'un contexte à long terme est essentielle pour garantir la pertinence et la cohérence des interactions. De plus, les utilisateurs s'attendent à des réponses rapides et interactives. Pour répondre à cette demande croissante de décoder des données massives et permettre aux GPUs multiples de communiquer rapidement entre eux, il est crucial d'utiliser des systèmes basés sur un calcul en FP4 et une architecture NVLink à bande passante élevée, comme ceux fournis par les systèmes NVIDIA Blackwell. Helix Parallelism, introduit récemment dans ce blog, est conçu spécialement pour travailler avec Blackwell. Il permet jusqu'à une augmentation de 32 fois du nombre d'utilisateurs simultanés pour une latence donnée, surpassant ainsi toutes les méthodes de parallélisme connues précédemment pour la décodage temps réel avec un contexte ultra-long. Goulots d'étranglement : le cache KV et la lecture des poids FFN Pour décodage en temps réel à grande échelle, un système doit surmonter deux goulots d'étranglement majeurs durant la phase de décodage : Diffusion du cache KV : Le cache KV stocke les représentations intermédiaires des clés et des valeurs, qui sont consultées à chaque étape de décodage. Avec des contextes de plusieurs millions de tokens, cette diffusion peut saturer la bande passante de la mémoire DRAM. Chargement des poids FFN : La lecture des poids du réseau neuronal avant la propagation (Feed-Forward Network) doit être optimisée. Sans optimisation, les délais de traitement peuvent devenir prohibitifs. Ces deux goulots d'étranglement sont difficiles à optimiser simultanément avec des stratégies de parallélisme traditionnelles. Par exemple, le Parallélisme Tensoriel (TP) peut réduire les arrêts de lecture des poids FFN en distribuant cette charge sur plusieurs GPUs, mais seulement dans une certaine mesure. Pour les schémas d'attention tels que Grouped Query Attention (GQA) utilisé dans les modèles Llama, ou Multi-Latent Attention (MLA) trouvé dans les modèles DeepSeek, le nombre de têtes de requête partage un nombre limité de têtes de cache KV. Si le TP dépasse le nombre de têtes de cache KV, le cache KV multi-millions de tokens doit être dupliqué sur chaque GPU, ce qui augmente la consommation de mémoire et la saturation de la bande passante. Dans le cas de MLA, le plafond de TP pour éviter cette duplication est de 1. Flux d'exécution Helix Helix est une stratégie hybride de sharding qui dissocie les méthodes de parallélisme de l'attention et des FFN en un pipeline temporel. Cela permet de surmonter à la fois le goulot d'étranglement du cache KV et celui de la lecture des poids FFN lors du décodage multi-millions de tokens. Phase d'attention Helix utilise KV Parallelism (KVP) pour partager le cache KV de plusieurs millions de tokens selon la dimension de la séquence sur KVP GPUs. Parallèlement, il applique Tensor Parallelism across attention heads (TPA), où TPA désigne le nombre de GPUs utilisés pour projeter chaque requête, clé et valeur (QKV), sans excéder le nombre de têtes de cache KV pour éviter la duplication. Cette stratégie de partage implique une collaboration totale de N = KVP x TPA GPUs sur les calculs d'attention. Helix évite également le pre-attention all-gather en garantissant que chaque GPU KVP détient toutes les têtes de requête associées à sa têtes de cache KV locale, permettant une attention Flash entièrement locale sur chaque shard de cache KV. Après l'attention locale, une communication all-to-all est utilisée pour échanger les sorties partielles d'attention et les scalaires log-sum-exp. Cette communication est indépendante de la longueur du cache KV, ce qui la rend efficace même pour des contextes très longs. L'all-to-all déclenche également la redistribution des GPUs KVP en un groupe TP (TP = N = KVP x TPA) pour calculer la sortie linéaire de l'attention. Cette étape bénéficie de la connectivité à haut débit NVLink/NVL72, optimisant ainsi les communications collectives entre grands nombres de GPUs. Technique HOP-B Pour réduire davantage les délais de traitement (TTL), Helix introduit HOP-B (Helix Overlap Pipeline-Batch-wise), une technique de pipelining fine qui superpose les communications et le calcul au sein d'une mini-lot (batch), comme illustré dans la Figure 3. Dès que la sortie d'attention d'un token est calculée, HOP-B démarre l'échange all-to-all pour ce token tout en calculant simultanément l'attention du suivant. Cela cache la latence de communication derrière du travail utile, maximisant l'utilisation des GPUs et accélérant encore plus le décodage en temps réel. Phase FFN Suite à la phase d'attention, le même pool de N = KVP x TPA GPUs est réutilisé sans temps d'inactivité pour exécuter le bloc FFN. Les sorties de l'étape all-to-all sont déjà partitionnées par dimension cachée sur N GPUs, permettant au calcul de la projection linéaire post-attention de s'exécuter immédiatement en mode TP (TP = N). Chaque GPU effectue une multiplication matricielle locale à l'aide de son shard de poids, puis participe à une réduction collective (all-reduce) sur TP = N GPUs pour construire la sortie correcte. Par la suite, Helix reconfigure le même pool de N GPUs pour le calcul FFN, en utilisant soit une disposition TP 1D (N = TPF) dans les modèles denses, soit una grilles TP x Parallélisme Expert (N = TPF x EP) dans les modèles MoE (Mixture of Experts). Concaténation KV distribuée Durant le décodage, chaque nouveau token est diffusé à tous les GPUs KVP pour le calcul de la requête. Pour prévenir les points chauds de la mémoire DRAM, Helix répartit les mises à jour du cache KV en rotative, par rang KVP. Par exemple, les tokens 1 à 16 vont au GPU KVP 0, les tokens 17 à 32 au GPU KVP 1, et ainsi de suite. Cette technique garantit une croissance uniforme du cache KV, une utilisation équilibrée de la mémoire et un débit constant, indépendamment de la longueur de la séquence ou de la taille des lots. Résultats simulés sur Blackwell Helix établit un nouveau référentiel de performance pour le décodage de modèles de langage à long contexte (LLMs). La Figure 4 montre le Pareto frontalier normalisé du décodage de DeepSeek-R1 671B avec un contexte hypothétique de 1 million de tokens. Ce frontalier est obtenu par une simulation exhaustive couvrant des milliers de configurations, variant les stratégies de partitionnement du modèle (TP, EP, PP et KVP) et les tailles de lots pour trouver les meilleurs compromis entre débit et latence. En particulier : - Débits améliorés : Les débits de traitement ont été significativement augmentés, permettant une meilleure utilisation des ressources. - Latence réduite : La latence a été considérablement diminuée, même pour des contextes très longs. - Efficiency in DRAM : La pression sur la mémoire DRAM a été réduite, grâce au partage du cache KV et des poids FFN sur tous les dispositifs disponibles. - Compute efficiency : L'efficacité du calcul a été nettement améliorée, permettant un décodage plus fluide et interactif. Ces gains ont été rendus possibles par le partage simultané du cache KV et des poids FFN sur tous les dispositifs, ce qui réduit drastiquement la pression sur la mémoire DRAM et améliore l'efficacité du calcul. Helix déplace la frontière Pareto du débit-latence, permettant d'atteindre un débit plus élevé avec une latence moindre. Évaluations de l'industrie Des experts de l'industrie louent Helix Parallelism pour son capacité à optimiser le décodage temps réel de modèles avec des contextes ultra-locaux, en garantissant une interaction continue et une pertinence accrue. NVIDIA, connu pour sa recherche avancée en IA, voit en Helix un outil essentiel pour l’avenir des applications d'IA à grande échelle. L'équipe de développement continue de peaufiner cette technologie et prévoit de l’intégrer dans divers frameworks de décodage. Profil de l'entreprise NVIDIA, leader mondial en solutions d'intelligence artificielle et en puissance de calcul, a conçu Blackwell pour répondre aux défis croissants de l'IA. Avec une architecture NVLink offrant une bande passante élevé, Blackwell est parfaitement adapté à des tâches de décodage à grande échelle, notamment grâce à ses capacités en FP4. En co-concevant Helix avec Blackwell, NVIDIA apporte une réponse innovante et efficace aux besoins de l'industrie en matière de modèles LLM multi-millions de tokens. Restez à l'écoute, car l'optimisation Helix sera bientôt intégrée à des frameworks d'inférence, offrant aux développeurs une solution robuste pour servir des modèles d'IA interactifs et à grande échelle.