La génération de kernels GPU par l’IA est déjà une réalité dans un cadre expérimental précis. NVIDIA a utilisé DeepSeek-R1 pour produire des kernels d’attention, puis les a soumis à un vérificateur dans une boucle d’amélioration itérative. Le système a obtenu une justesse numérique de 100 % au niveau 1 de KernelBench et de 96 % au niveau 2. Shengyu Liu, ingénieur spécialisé dans les systèmes de machine learning et les kernels chez DeepSeek, estime de son côté que l’IA pourrait égaler ou dépasser son propre travail dans un délai de six à douze mois.

DeepSeek : l’IA optimise déjà les kernels GPU, mais le remplacement des ingénieurs reste une prévision

Ce que Shengyu Liu anticipe pour les kernels GPU

Un kernel GPU est une petite opération de calcul exécutée de façon répétée par un modèle d’IA. Il peut s’occuper d’une multiplication de matrices, de l’attention, de la quantification ou du routage entre experts. Sa stratégie d’accès à la mémoire, son découpage du calcul et la précision utilisée influencent directement le temps de calcul et le débit global.

Liu décrit une progression rapide : l’IA serait passée, en environ un an, de l’aide à la documentation, à la lecture de code et au débogage à l’analyse de CUDA, PTX et SASS, ainsi qu’à l’optimisation d’opérateurs. Il prévoit que les kernels écrits par l’IA pourraient atteindre son niveau ou le dépasser dans les six à douze prochains mois. Il s’agit de sa projection personnelle sur l’évolution du métier.

Son scénario ne signifie pas que les ingénieurs disparaissent déjà. Il pointe plutôt vers un changement de rôle : moins de saisie manuelle de code, davantage de définition des objectifs, de pilotage des agents et de validation des résultats.

Pourquoi les kernels influencent directement la vitesse d’une IA

Une analyse technique explique les choix de DeepSeek en matière d’optimisation GPU, d’ordonnancement des communications et de routage MoE.

Les modèles exécutent leurs opérations les unes après les autres pendant l’entraînement et l’inférence. Une optimisation limitée à un opérateur très fréquent, comme l’attention, peut donc modifier le temps nécessaire pour commencer à produire une réponse et la quantité de requêtes traitées par une infrastructure.

Cette optimisation ne se limite pas au code CUDA. Elle touche aussi l’ordonnancement des communications entre GPU, la gestion de la mémoire, la précision numérique et la répartition du travail dans les architectures Mixture of Experts, ou MoE. Une analyse technique de DeepSeek décrit ainsi le recours à des mécanismes d’ordonnancement adaptés au matériel plutôt qu’à des bibliothèques standard dans certains scénarios.

La boucle de génération déjà démontrée

L’expérience de NVIDIA ne demande pas simplement à un modèle d’écrire du code puis de l’accepter tel quel. Elle organise une boucle en plusieurs étapes :

ÉtapeFonctionDétail mesuré ou utilisé
Instruction initialeDécrire le kernel à produireDeepSeek-R1 génère une première proposition en CUDA C++
VérificationContrôler le comportement du codeUn vérificateur évalue la correction numérique du kernel
RaffinementModifier la demande et relancer la générationLa boucle peut répéter cette étape lorsque les critères ne sont pas remplis
ÉvaluationMesurer le résultat sur le benchmarkLa boucle d’optimisation présentée a fonctionné pendant 15 minutes

Dans les conditions de cette expérience, les kernels générés ont atteint 100 % de justesse numérique sur les problèmes KernelBench de niveau 1 et 96 % sur ceux de niveau 2. Ces chiffres mesurent la correction dans ce benchmark et cette procédure ; ils ne constituent pas une mesure générale de la capacité de l’IA à optimiser tous les kernels de production.

La différence est importante : produire un code numériquement correct n’équivaut pas automatiquement à obtenir le meilleur débit sur chaque GPU, chaque modèle et chaque charge de travail. Le choix des objectifs, du matériel et des critères de validation reste donc central.

De l’écriture directe au pilotage d’agents

Le changement le plus concret concerne la répartition du travail. Un ingénieur peut laisser un modèle proposer plusieurs variantes, les faire tester par des outils, puis retenir celles qui respectent les contraintes numériques et matérielles. La compétence se déplace alors vers la formulation du problème, la lecture des résultats et le choix des compromis entre vitesse, mémoire et précision.

DeepSeek a déjà publié des briques logicielles qui illustrent l’ampleur de ce terrain. Son dépôt officiel TileKernels contient des kernels écrits avec TileLang pour le gating, le routage MoE, la quantification, la transposition, Engram et les opérations de manifold hyper-connection. Le projet cible les GPU NVIDIA SM90 ou SM100 et demande notamment Python 3.10 ou une version ultérieure, PyTorch 2.10 ou une version ultérieure, TileLang 0.1.9 ou une version ultérieure et CUDA Toolkit 13.1 ou une version ultérieure.

Un écosystème d’optimisation plus large

Les kernels d’attention générés avec DeepSeek-R1 ne représentent qu’un élément de cette approche. DeepGEMM est associé à des travaux d’optimisation de multiplications de matrices en FP8, tandis que TileKernels couvre plusieurs opérations utilisées par les modèles modernes. Ces composants s’inscrivent dans une recherche plus large sur l’utilisation du matériel, la mémoire et les communications entre accélérateurs.

L’automatisation est donc déjà suffisamment concrète pour générer, vérifier et améliorer des kernels dans une boucle instrumentée. La prédiction de Shengyu Liu porte sur l’étape suivante : la possibilité que cette méthode égale ou dépasse le travail d’un ingénieur expérimenté dans un délai de six à douze mois.