Dans quelques jours arrivera ce moment que de nombreux amateurs du système d’exploitation open source attendent depuis longtemps. Plus précisément, nous faisons référence au lancement officiel du noyau Linux 7.0 dont nous avons parlé ces dernières semaines.
Concrètement, nous vous avons montré l'évolution des versions préliminaires qui ont été mises à notre disposition pour découvrir toutes les nouveautés. De plus, il faut prendre en considération que le nouveau Linux 7.0 devrait être une version qui restera dans l'histoire comme l'une des plus importantes en matière de noyau du système d'exploitation.
A priori, les experts de ces environnements n'attendaient pas grand chose de cette nouvelle version que nous évoquions, mais au final elle sera bien plus importante qu'on ne le pensait. Et à ce moment nous pouvons confirmer que Linux 7.0 Elle peut désormais être considérée comme une mise à jour pleine de changements, d'améliorations et de corrections en tout genre.
Bref, nous allons retrouver un cycle de développement de base plus mouvementé et intéressant que celui auquel nous sommes habitués. Comme nous vous l'avons dit, cela se produira dans quelques jours seulement afin que nous puissions disposer de la version finale après avoir examiné, ces dernières semaines, les versions préliminaires que nous vous avons présentées.
À l'heure actuelle, nous pouvons confirmer que le lancement final devrait avoir lieu ce week-end à l'approche de nous. Cela signifie que la période de test du nouveau noyau Linux devrait être pratiquement terminée. Mais avec tout et avec ça, maintenant nous allons te retrouver avec un erreur grave détectée sur le point de lancer et cela devrait être corrigé.
C'est l'échec important de Linux 7.0
Et on vient de détecter que le nouveau noyau du système qui est sur le point de voir le jour, Linux 7.0, réduit les performances de PostgreSQL la moitié de celle actuelle. C'est quelque chose qu'un ingénieur AWS a remarqué, signalant que les performances de PostgreSQL ont été réduites de moitié dans cette nouvelle version du noyau, le tout suite à un changement récent.
Et le pire n'est pas ça, puisqu'en ce moment il n'y a pas de solution prévue pour cela, avant la sortie de la version stable dans quelques jours seulement. Cette erreur est due à la suppression de l'option de planification PREEMPT_NONE. Apparemment, la nouvelle version de Linux dont nous vous parlons limite le Architectures CPU les plus récents, ce qui affecte la gestion des tampons PostgreSQL.
En fait, à quatre jours de la sortie, les développeurs du noyau demandent à PostgreSQL d'adopter un intervalle de temps rseq au lieu d'annuler la modification, sans aucune garantie de résolution avant la sortie de la version stable. Nous devons garder à l’esprit que nous faisons ici référence à un composant important pour plusieurs entreprises et utilisateurs finaux. Et c'est un système de gestion de base de données Objet relationnel open source, largement utilisé pour tous types d'applications sous Linux.
Eh bien, les dernières analyses révèlent qu'environ 55 % du temps passé par le processeur à attendre les verrous PostgreSQL sous le nouveau modèle est perdu. Cela amène la base de données à consommer plus de la moitié de la processeur informatique à contenir de tels verrous, plutôt qu'à exécuter des requêtes de base de données. Et pour l’instant, aucune solution définitive n’est en vue.
Comment tester la dernière version RC du noyau Linux
Il est vrai que revenir sur le nouveau noyau serait le plus simple, mais cela annulerait le travail de conception le plus récent à cet égard. De plus, cela laisserait la gestion des tampons de PostgreSQL non résolue et de futures modifications apportées au planificateur pourraient à nouveau exposer la même vulnérabilité.
Nous devons prendre en considération le moyen le plus simple de tester la dernière version de test du noyau système, Linux 7.0-rc7, via Mainline. Il s'agit d'un outil utile qui nous permet de télécharger et d'installer n'importe quelle version du noyau Linux, le tout en utilisant une interface graphique qui nous facilite les choses. Il ne nous reste plus qu'à le télécharger depuis son référentiel et à l'installer avec cette commande :
sudo add-apt-repository ppa:cappelikan/ppa && sudo apt update && sudo apt install mainline
Nous pouvons maintenant exécuter l'application en tant que telle et une fois mise à jour la liste qui apparaît à l'écran, nous verrons la nouvelle version du noyau Linux afin de pouvoir la tester sur notre PC.
Foire aux questions sur le bug dans Linux 7.0 Le bug implique la suppression de l'option de planification PREEMPT_NONE, qui affecte la gestion du tampon PostgreSQL sur les architectures CPU modernes. Cela entraîne une perte d'environ 55 % du temps CPU en conflits de verrouillage au lieu d'exécuter des requêtes.
Selon les tests effectués par un ingénieur AWS, PostgreSQL peut perdre jusqu'à 50 % de ses performances sous le nouveau noyau Linux 7.0 en raison de modifications apportées au planificateur système.
Pour le moment, il n’existe pas de solution définitive. Les développeurs du noyau suggèrent que PostgreSQL adopte un intervalle de temps rseq comme alternative, mais rien ne garantit que ce problème sera résolu avant la sortie de la version stable.
Quel est exactement le bug détecté dans Linux 7.0 ?
Quel pourcentage de performances PostgreSQL perd-il avec Linux 7.0 ?
Existe-t-il une solution disponible pour ce problème ?