Aller au contenu

Partie 8 · Les megakernels

Le focus de ce document. Dix chapitres sur l'idée qui structure la recherche en systèmes d'inférence depuis 2025 : compiler un modèle entier en un seul lancement de noyau.


L'idée en une phrase

Au lieu d'exécuter une centaine de noyaux qui s'attendent les uns les autres, lancer un seul noyau persistant qui exécute tout le modèle, en remplaçant les frontières de noyau par des dépendances fines exprimées par des compteurs en mémoire globale.


Pourquoi c'est arrivé maintenant

Trois évolutions ont convergé.

1. Le régime a changé. L'inférence à petit lot est devenue le cas d'usage dominant (agents, code, chat interactif). Ce régime est limité par la mémoire, et c'est celui où le surcoût de lancement compte.

2. Le matériel a rendu le surcoût visible. Chaque génération accélère le calcul plus vite que la mémoire et que la synchronisation. La part relative des frontières de noyau augmente.

3. Les mécanismes existent. Noyaux persistants (2012), copies asynchrones (2020), TMA et clusters (2022), tensor memory (2024). Les briques nécessaires étaient enfin toutes disponibles.


Ce que vous allez apprendre

  • Le décompte précis de ce que coûte une frontière de noyau — et pourquoi CUDA Graphs ne suffit pas.
  • La généalogie du concept, depuis les persistent threads de 2012.
  • Les quatre architectures publiées : interpréteur sur GPU (Stanford), compilateur de graphe de tâches (CMU), abstraction dynamique (Event Tensor), hiérarchie de chiplets (Fleet).
  • L'approche AMD, structurellement différente.
  • Comment en écrire un, étape par étape.
  • Quand ne pas le faire — le chapitre 9 est aussi important que les autres.
  • L'état de l'art complet en août 2026, et les questions ouvertes.

Ordre de lecture

Séquentiel. Les chapitres 1 et 2 posent le problème, 3 à 7 présentent les solutions, 8 à 10 concluent.

1 · Le problème des frontières de noyau

Le décompte complet : lancement, barrière globale implicite, bulle mémoire. Pourquoi CUDA Graphs et PDL ne suffisent pas.

2 · Définition et généalogie

Ce qu'est exactement un megakernel, ce qu'il n'est pas, et d'où vient l'idée — des persistent threads de 2012 à aujourd'hui.

3 · L'interpréteur sur GPU

L'approche de Hazy Research : instructions, allocateur de pages, compteurs. Les deux megakernels — latence sur Llama-1B, débit sur Llama-70B en tensor-parallèle.

4 · Mirage Persistent Kernel

L'approche compilateur de CMU : graphe de tâches au niveau SM, événements, ordonnanceurs embarqués. Plus Ada-MK, déployé en production chez Baidu.

5 · Event Tensor et le dynamisme

Le problème des formes variables et des dépendances aux données, et l'abstraction qui l'attaque.

6 · Fleet et les chiplets

Les megakernels sur GPU multi-puces, et l'abstraction de tâche liée au chiplet.

7 · AMD et le monokernel

L'approche de Kog sur MI300X : sentinelles NaN, duplication par XCD, streaming continu des poids.

8 · Écrire son megakernel

Le guide pratique : structure, allocateur, compteurs, ordonnanceur, débogage.

9 · Quand ne pas le faire

Les six situations où un megakernel est le mauvais choix, et le coût réel de l'approche.

10 · État de l'art et perspectives

Le panorama complet d'août 2026, le tableau comparatif, les questions ouvertes.


Le tableau de comparaison

Travail Origine Date Approche Résultat annoncé
Look Ma, No Bubbles Stanford (Hazy Research) mai 2025 interpréteur sur GPU, écrit à la main Llama-1B < 1 ms sur H100 ; 78 % de la bande passante ; 2,5× vLLM, 1,5× SGLang
Megakernel TP Stanford sept. 2025 idem, orienté débit, 8 GPU Llama-70B : 23 468 j/s contre 19 170 pour SGLang (+22 %)
Mirage MPK CMU, UW, Berkeley, NVIDIA, Tsinghua déc. 2025 compilateur, graphe de tâches au niveau SM 1,0-1,7× contre SGLang/vLLM ; Qwen3-8B/A100 : 14,5 → 12,5 ms
Kog monokernel Kog 2025 monokernel AMD MI300X > 3 000 j/s par requête (2 B, FP16) ; sync 7,6 → 0,9 µs
Event Tensor CMU, NVIDIA, et al. avr. 2026 abstraction pour megakernel dynamique latence SOTA, warmup fortement réduit
Fleet AMD avr. 2026 tâches liées aux chiplets 1,3-1,5× vLLM (lots 1-8) ; L2 12 % → 54 %
Ada-MK Baidu mai 2026 recherche DAG hors ligne, GPU contraints +23,6 % vs TensorRT-LLM, +50,2 % vs vLLM ; déployé en production
AutoMegaKernel indépendant juin 2026 synthèse par agent, validée statiquement 7 160 ordonnancements adverses validés ; 1,25-1,72×

Avertissement sur ces chiffres

Tous les chiffres ci-dessus sont des revendications des auteurs, dans leurs configurations, contre leurs lignes de base. Aucun n'a été reproduit dans cet environnement.

Les accélérations de systèmes d'inférence sont particulièrement sensibles au choix de la version de la ligne de base, à la configuration matérielle, à la longueur de contexte et à la taille de lot. Un même travail peut annoncer « 1,0× » et « 6,7× » selon le point de comparaison — c'est le cas de MPK, dont la fourchette publiée va de 1,0 à 1,7× contre SGLang/vLLM et jusqu'à 10× contre PyTorch avec CUDA Graphs.

Lisez les fourchettes, pas les maxima.