Linux

Ubuntu va ralentir certaines Radeon jusqu’à 42 fois

De quoi s'agit-il ?

Canonical publie un avertissement inhabituel concernant sa prochaine mise à jour du noyau Linux destinée à la distribution Ubuntu. La version 7.0.0-28.28 contient une “régression” du pilote AMDGPU. En clair se retour en arrière est susceptible de provoquer une chute spectaculaire des performances avec certaines cartes graphiques Radeon.

Le problème concerne les charges de calcul exploitant ROCm, notamment la génération locale d’images avec Stable Diffusion XL et ComfyUI. Le cas documenté le plus sévère évoque une opération habituellement exécutée en neuf secondes demandant désormais 388 secondes, soit un ralentissement supérieur à 42 fois.

Ubuntu 26.04 et Ubuntu 24.04 HWE sont concernés

L’alerte vise les utilisateurs d’Ubuntu 26.04 ainsi que ceux d’Ubuntu 24.04 utilisant la pile d’activation matérielle HWE. Cette dernière doit prochainement passer du noyau Linux 6.17 au noyau 7.0. La mise à jour 7.0.0-28.28 prévue par Canonical embarque malheureusement le code responsable de cette régression.

Tous les utilisateurs d’une carte graphique AMD ne subiront pas nécessairement ce problème. Canonical indique que la portée n’est pas encore connue. Les cas confirmés concernent surtout les systèmes utilisant AMDGPU et ROCm pour des calculs intensifs.

La bonne nouvelle est que pour le gaming, l’éditeur ne signale pas de baisse généralisée des images par seconde dans les jeux. L’alerte porte sur les tâches de calcul GPU et en particulier sur le chargement ou la préparation de modèles d’IA

Le cas ayant permis d’identifier le problème repose sur une configuration équipée d’une Radeon RX 6950 XT est fonctionnant sous la distribution Fedora 44 avec ROCm, PyTorch et ComfyUI. Avec le noyau Linux 7.0.11, l’opération a nécessité environ 9,14 secondes contre 388,25 secondes après le passage au noyau 7.0.12. Le retour au noyau précédent a immédiatement rétabli les performances normales.

Un second rapport publié dans le dépôt de ComfyUI décrit un comportement comparable avec des Radeon RX 9070 XT et une Radeon RX 7900 XTX. Le chargement d’un modèle peut alors prendre jusqu’à dix minutes et les tentatives suivantes peuvent échouer. Là encore, le retour au noyau 7.0.11 résout le problème. (GitHub)

 AMDGPU consomme trop de temps CPU

L’origine de la régression se trouve dans la gestion de la mémoire hétérogène, ou HMM, du pilote AMDGPU. Cette technologie permet au processeur et au GPU de travailler avec des espaces mémoire coordonnés. Elle joue un rôle important dans les charges de calcul utilisant ROCm.

Une modification du noyau a déplacé la lecture d’une séquence de notification en dehors d’une boucle. Du coup en cas de modification de la séquence, le pilote continue de relancer une opération qui ne peut plus réussir dans le même appel.

Tout ce charabia technique veut dire que le problème ne correspond donc pas à une Radeon devenue soudainement 42 fois moins puissante. Il s’agit seulement d’une accumulation de délais logiciels introduits dans le chemin de gestion de la mémoire.

Enfin la bonne nouvelle est que cette “régression” a déjà été corrigée en amont dans Linux 7.0.13. Malheureusement le calendrier des mises à jour d’Ubuntu pose  problème. La version 7.0.0-28.28 a été préparée avant l’intégration de ce correctif et sera tout de même distribuée. Canonical justifie ce choix par la présence d’autres corrections de sécurité jugées importantes.

Le patch AMDGPU sera intégré dans la mise à jour suivante du noyau Ubuntu.

Jérôme Gianoli

Aime l'innovation, le hardware, la High Tech et le développement durable. Soucieux du respect de la vie privée.

Articles similaires

Bouton retour en haut de la page