Une régression a été détectée dans le noyau Linux 7.0, réduisant de moitié les performances de PostgreSQL

Un ingénieur d'Amazon a découvert une régression spécifique au noyau Linux 7.0, dont la sortie est prévue pour le 13 avril. La modification des paramètres du planificateur de tâches a entraîné une diminution significative de la bande passante et de la réactivité lors de l'utilisation de la base de données PostgreSQL sur des systèmes ARM64. Avec le noyau 7.0, les performances lors du test pgbench « simple-update » ont chuté de près de moitié — passant de 98565 à 50751.

Le ralentissement est dû à un changement du mode de préemption dans le planificateur par défaut, passant de PREEMPT_NONE à PREEMPT_LAZY sur les architectures qui supportent ce mode, ce qui a conduit PostgreSQL à passer 55 % de son temps CPU à appeler s_lock(). Pour remédier à ce problème, il a été proposé de revenir au mode PREEMPT_NONE par défaut et de lever son lien avec le paramètre ARCH_NO_PREEMPT.

Peter Zijlstra, l'auteur des modifications qui ont causé la régression et mainteneur du planificateur de tâches ainsi que des sous-systèmes de verrouillage du noyau, a déclaré qu'un correctif devait être apporté au code de PostgreSQL. Pour atténuer la chute de performance, il a recommandé d'utiliser dans PostgreSQL l'extension récemment ajoutée au noyau « rseq slice » (Séquences redémarrables) pour limiter la probabilité de préemption du détenteur de verrou.

Il n'est pas encore clair quelle solution adoptera Linus Torvalds, qui suit la règle selon laquelle le noyau ne doit pas dégrader les performances et casser la compatibilité avec l'espace utilisateur. D'une part, le noyau 7.0 est en phase finale de test avant sa sortie, et revenir sur les réglages du planificateur pourrait entraîner d'autres régressions. D'autre part, les utilisateurs pourraient faire face à une baisse de performance par deux fois pour l'une des bases de données les plus populaires.

Source : opennet.ru

Acheter un hébergement fiable pour les sites avec protection DDoS, serveurs VPS VDS 🔥 Acheter un hébergement fiable pour les sites avec protection DDoS, serveurs VPS VDS | ProHoster