L'ordonnancement par grappes existe dans Linux depuis 2021, et sur les puces hybrides d'Intel il place le travail au mauvais endroit depuis le premier jour. L'ingénieur Intel Ricardo Neri a des correctifs en attente dans la branche ordonnanceur de l'arbre tip, visant la fenêtre de fusion de Linux 7.3 qui ouvre le lundi 17 août 2026. Le défaut est précis et réel : sur une machine partiellement chargée, le noyau déplace correctement les tâches exigeantes vers les cœurs P, puis échoue à répartir le reste entre les grappes de cœurs E. Alder Lake, Lunar Lake et Panther Lake ont servi aux tests. Si vous exploitez du Core Ultra sous Linux, c'est le cycle à surveiller.
The short answer
L'ingénieur Intel Ricardo Neri a des correctifs en attente dans la branche ordonnanceur de l'arbre tip, visant la fenêtre de fusion de Linux 7.3 qui ouvre le lundi 17 août 2026. Ils portent sur l'équilibrage de charge par grappes des processeurs hybrides Intel, où les tâches exigeantes atteignent bien les cœurs P mais où le reste du travail ne se répartit pas entre les grappes de cœurs E. Les tests ont couvert Alder Lake avec SMT activé et désactivé, plus Lunar Lake et Panther Lake, dont une grappe de cœurs E n'est pas reliée au cache L3. Aucun chiffre de débit n'a été publié.
Il existe une catégorie de défauts qui survit des années parce que rien ne plante et que personne ne voit d'erreur. Votre machine est simplement un peu plus lente qu'elle ne devrait, d'une façon que vous n'auriez jamais pensé à mesurer. En voici un.
Ce que l'ordonnanceur rate
L'ordonnancement par grappes est arrivé dans le noyau en 2021, derrière CONFIG_SCHED_CLUSTER. L'idée est simple : les cœurs sont physiquement regroupés, ces groupes partagent des caches et des domaines d'alimentation, et l'équilibreur de charge devrait le savoir au lieu de traiter chaque CPU logique comme un emplacement anonyme.
Le mécanisme a été bâti pour du silicium serveur uniforme, où tous les cœurs ont à peu près la même capacité. Les puces hybrides d'Intel, de bureau comme de portable, cassent cette hypothèse, et Ricardo Neri a passé des mois à documenter exactement comment.
Le défaut se manifeste sur une machine partiellement chargée, c'est-à-dire l'état dans lequel elle se trouve presque tout le temps. D'abord, la logique de capacité asymétrique fonctionne : les tâches trop lourdes pour un petit cœur, appelées tâches inadaptées dans l'ordonnanceur, partent bien vers les cœurs P. Devrait suivre une répartition équilibrée des tâches restantes entre les grappes de cœurs E. Cette partie ne se produit pas. Certaines grappes se retrouvent chargées pendant que d'autres restent relativement inactives.
Rien n'échoue. Vous n'obtenez simplement ni le parallélisme ni la marge thermique qu'une bonne répartition vous aurait donnés.
Les puces testées
Neri a testé sur Alder Lake, avec SMT désactivé puis activé, parce que cette puce associe des cœurs P compatibles SMT à des grappes de cœurs E et sollicite donc les deux formes de regroupement à la fois.
Il a également testé sur Lunar Lake et Panther Lake, qui portent un détail de topologie compliquant le problème : une grappe de cœurs E non reliée au cache L3. Migrer une tâche vers une grappe qui partage le cache de dernier niveau avec le reste de la machine coûte peu. La migrer vers une grappe qui ne le partage pas relève d'un tout autre calcul, et l'ordonnanceur doit savoir dans quel cas il se trouve.
C'est le même thème que l'ordonnancement conscient du cache, arrivé dans Linux 7.2 pour les gros processeurs serveur. Dans les deux cas, le noyau apprend qu'un processeur est une carte, pas une liste.
Vérifier ce que votre machine déclare
Avant de décider si tout cela vous concerne, il vaut la peine de regarder ce que votre noyau sait aujourd'hui de votre topologie.
Si CONFIG_SCHED_CLUSTER n'est pas positionné, rien de tout cela ne concerne votre noyau. S'il l'est et que lscpu -e affiche plus d'une grappe de cœurs efficaces, vous êtes exactement dans la configuration visée par ces correctifs.
Ce qui attend aussi dans 7.3
Le correctif d'ordonnancement n'est qu'une ligne d'une longue liste. Également alignés pour la fenêtre de fusion : AMD P-State gagne un EPP dynamique avec granularité par cœur pour Zen 6, la prise en charge graphique d'Intel Nova Lake S passe en stable, le support initial des Apple M3 Pro, Max et Ultra arrive en mode console uniquement, et un travail vise un goulet d'étranglement ancien sur les petites entrées-sorties des SSD NVMe PCIe Gen5. La préparation d'Intel Starfire, un SoC dérivé de Panther Lake, figure aussi dans la file, tout comme la prise en charge d'AMDGPU DCN 6.0.
La ligne Apple M3 mérite une mise au point : console uniquement signifie que la machine démarre et vous donne une console texte, pas un bureau utilisable. C'est la première étape d'un long chemin, pas l'arrivée.
Ce que nous ferions
Si vous administrez des parcs de portables Core Ultra ou de mini-machines, mettez 7.3 sur la liste de test au lieu d'attendre que votre distribution le reprenne l'an prochain. Les charges les plus susceptibles de bouger sont celles qui comportent plusieurs tâches exécutables sans être individuellement lourdes : une compilation avec un nombre modéré de tâches, des constructions de conteneurs, des suites de tests, tout ce qui remplit les cœurs E sans saturer la machine.
Mesurez avant et après sur votre charge réelle, puisqu'aucun chiffre n'est publié et qu'un banc générique ne représentera pas votre disposition de grappes. Si vous obtenez une comparaison propre, la liste de diffusion du noyau est un meilleur endroit qu'un forum pour la publier.
Et si vous soupçonniez votre portable hybride d'être inégal sous charge modérée, vous aviez peut-être raison, et le correctif porte désormais un numéro de version.
Sources et pour aller plus loin
- Features Coming For Linux 7.3 From Optimizing Intel Hybrid CPUs To Old AMD Athlon XPs, Phoronix, 14 août 2026
- Linux 7.3 To Better Handle Cluster Load Balancing On Intel Hybrid CPUs, Phoronix
- Intel says Linux cluster scheduling fails on its hybrid CPUs, the fix is queued for 7.3, Hardware Busters, août 2026
- Intel moves to fix hybrid CPU load balancing ahead of Linux 7.3, PBX Science, août 2026
Questions fréquentes
Qu est-ce que l ordonnancement par grappes, en un paragraphe ?
Un processeur moderne ne présente pas une liste plate de cœurs identiques. Les cœurs sont regroupés en grappes qui partagent un niveau de cache ou un domaine d'alimentation, et l'endroit où une tâche atterrit dans cette structure change sa vitesse d'exécution. L'ordonnancement par grappes, conditionné par CONFIG_SCHED_CLUSTER et présent depuis 2021, apprend ce regroupement à l'équilibreur de charge pour qu'il regroupe ou disperse les tâches délibérément au lieu de traiter chaque CPU comme interchangeable. Il a été conçu pour du silicium serveur uniforme, où l'hypothèse d'une capacité identique pour tous les cœurs tient. C'est exactement cette hypothèse que casse une puce hybride de bureau ou de portable.
Qu est-ce qui ne va pas aujourd hui ?
Selon la description du problème par Ricardo Neri, la défaillance apparaît sur un système partiellement chargé. La logique de capacité asymétrique fait d'abord son travail : les tâches trop exigeantes pour un petit cœur, que l'ordonnanceur appelle tâches inadaptées, sont bien routées vers les cœurs P. Ce qui devrait suivre, c'est une répartition équilibrée des tâches restantes entre les grappes de petits cœurs. Cette répartition n'a pas lieu. Le travail s'accumule sur certaines grappes pendant que d'autres restent relativement inactives, ce qui gaspille à la fois le parallélisme que vous avez payé et la marge thermique qu'une bonne répartition aurait dégagée.
Quels processeurs sont concernés ?
Toute puce Intel qui mélange des cœurs performance et des cœurs efficaces organisés en grappes, ce qui couvre les architectures hybrides depuis Alder Lake jusqu'à la génération Core Ultra actuelle. Neri a testé sur Alder Lake avec SMT désactivé puis activé, puisque cette puce combine des cœurs P compatibles SMT et des grappes de cœurs E, ainsi que sur Lunar Lake et Panther Lake, qui ajoutent une subtilité : une grappe de cœurs E qui n'est pas reliée au cache L3. Cette dernière topologie est la plus intéressante, car une grappe hors du cache partagé impose des coûts de placement très différents d'une grappe qui y est rattachée.
Existe-t-il des chiffres de gain ?
Aucun chiffre publié, et il vaut mieux le dire clairement que combler le vide par une estimation. Les articles décrivent les correctifs, les topologies testées et le fait qu'ils attendent dans la branche ordonnanceur de l'arbre tip. Aucune mesure de débit avant et après n'accompagnait la couverture de la soumission. Par nature, un correctif de placement résiste d'ailleurs au chiffre unique, car le gain dépend entièrement du nombre de tâches exécutables et de leur correspondance avec votre disposition de grappes. Une machine partiellement chargée avec plusieurs tâches parallèles a le plus à gagner, une machine inactive ou saturée n'a presque rien à gagner.
Quand pourra-t-on réellement l utiliser ?
La fenêtre de fusion de Linux 7.3 ouvre le lundi 17 août 2026. Du code présent dans la branche ordonnanceur de l'arbre tip au moment de l'ouverture est très bien placé pour être intégré, même si en attente n'est pas synonyme de fusionné tant que Torvalds n'a pas tiré la branche. Ensuite, le rythme habituel s'applique : environ sept versions candidates, puis une 7.3 stable vers la fin de l'année, puis le délai que votre distribution ajoute. Pour l'avoir plus tôt, la série rc est la bonne porte, sur une machine de test et non sur quelque chose d'important.