Noyau Linux 6.19 corrige régression slab due aux changements NUMA

Les développeurs ont résolu une régression de performance dans l'allocateur Slab du noyau Linux 6.19, qui ralentissait le chargement des modules en raison de modifications des politiques NUMA. Le problème, identifié par des benchmarks, affectait l'efficacité de la gestion mémoire sur les systèmes à haut nombre de cœurs. La correction restaure un comportement d'allocation approprié et a été fusionné dans le noyau principal.

L'allocateur Slab du noyau Linux, chargé de gérer les petites allocations mémoire, a rencontré une régression lors des préparatifs pour la version 6.19. Des changements visant à optimiser les grandes allocations ont perturbé involontairement les politiques d'Accès Mémoire Non Uniforme (NUMA), entraînant des sélections de nœuds sous-optimales et des opérations plus lentes.

Les tests du noyau ont révélé des impacts significatifs, les temps de chargement des modules augmentant jusqu'à 60 % dans certains cas. Cela était particulièrement visible sur des processeurs à haut nombre de cœurs comme l'AMD Ryzen Threadripper, où les benchmarks montraient des temps de compilation du noyau 3-5 % plus lents et des retards en multitâche. Michael Larabel de Phoronix a effectué des bisects pour identifier le problème, le reliant à des problèmes liés à l'ordonnanceur aggravant les inefficacités de Slab.

La régression provenait d'un commit priorisant les nœuds locaux sur les politiques spécifiques aux tâches dans le code Slab. Un patch, documenté dans les Archives du Noyau Linux, rétablit le support NUMA original pour les opérations kmalloc importantes sans introduire de nouvelles vulnérabilités. Le contributeur du noyau Linus Torvalds a insisté sur l'importance de corrections rapides pendant la fenêtre de fusion pour maintenir la stabilité.

La réponse de la communauté a été rapide, avec des pull requests soumis à la liste de diffusion du noyau. La correction, rédigée par des développeurs du noyau, cible les chemins d'allocation pour respecter les politiques prévues et a été intégrée dans le mainline pour la version stable 6.19. Cela s'aligne sur les efforts continus pour équilibrer performance et fiabilité face aux exigences des charges de travail cloud et IA.

Les noyaux précédents, comme 6.18, offraient des optimisations comme une meilleure gestion E/S de Btrfs et XFS, avec des gains jusqu'à 20 % sur les opérations de système de fichiers. La correction Slab assure que ces avantages ne sont pas compromis, surtout dans des environnements intensifs en mémoire comme les serveurs de bases de données et les conteneurs. Des backports vers les branches de support à long terme, y compris 6.18, assurent la stabilité des systèmes de production.

Articles connexes

Illustration depicting Linux 7.0 kernel enhancements to AppArmor, AMDGPU, Ceph, and eCryptfs, featuring Tux at a coding workstation.
Image générée par IA

Linux 7.0 kernel merges several enhancements

Rapporté par l'IA Image générée par IA

The Linux 7.0 kernel development has incorporated updates to AppArmor, AMDGPU, Ceph, and eCryptfs. These changes include security and hardware support improvements. The merges signal ongoing progress toward the kernel's release.

Developers have released Linux kernel 7.0, featuring improvements for Intel and AMD hardware, enhanced storage handling, and the removal of the experimental label from Rust support. Linus Torvalds announced the update, which is not a long-term support version. The release includes preparations for upcoming CPUs and GPUs, alongside self-healing filesystem capabilities.

Rapporté par l'IA

Phoronix reports a minor performance tweak in the Linux kernel 7.0, released on February 28, 2026, showing gains particularly on AMD Zen 2 processors amid broader enhancements like Zen 6 support.

Ce site utilise des cookies

Nous utilisons des cookies pour l'analyse afin d'améliorer notre site. Lisez notre politique de confidentialité pour plus d'informations.
Refuser