Linux offre aux développeurs et aux ingénieurs un moyen de « régler » son fonctionnement, en fournissant des milliers de paramètres individuels qui peuvent ajuster la façon dont le noyau open source gère les ressources. Ce type de réglage peut améliorer les performances plus rapidement sans recompiler le noyau, mais cela reste une tâche difficile, même pour les programmeurs FOSS les plus expérimentés.
Le réglage du noyau est une tâche extrêmement difficile, c'est pourquoi des tentatives sont faites pour utiliser l'intelligence artificielle pour gérer ce travail à la place des développeurs humains. La société technologique chinoise ByteDance a récemment annoncé les résultats des tests de réglage automatique du noyau Linux, une solution basée sur l'intelligence artificielle qui permet aux ingénieurs humains de prendre de meilleures décisions de réglage en analysant les données historiques - une tâche que les humains trouveraient généralement difficile.
Atteindre des performances Linux optimales grâce au réglage est un processus long qui nécessite une expérimentation approfondie de la part d'experts Linux. Différentes charges de travail nécessitent différentes méthodes de réglage pour différents ensembles de paramètres du noyau. Le développeur de ByteDance, Cong Wang, a mentionné qu'il est presque impossible de régler manuellement le noyau Linux pour des « centaines » de charges de travail différentes dans les centres de données à grande échelle tels que ceux utilisés par l'entreprise.
Bien qu'il existe des outils conçus pour simplifier le réglage du noyau, ils fournissent un type spécifique d'optimisation. L'approche de ByteDance vise à lancer la première solution automatisée dans l'espace de réglage du noyau - une technologie capable de couvrir tous les paramètres de réglage de Linux avec un investissement d'ingénierie minimal.
L'équipe de Wang accorde une attention particulière à l'optimisation du système de gestion de la mémoire de Linux. En employant des algorithmes d'apprentissage automatique tels que l'optimisation bayésienne, la société a découvert que le réglage automatisé des paramètres peut obtenir de meilleurs résultats que ceux obtenus généralement par la plupart des ingénieurs du noyau Linux.
L'outil de réglage automatique de ByteDance est conçu pour ajuster automatiquement les paramètres internes de Linux en fonction de charges de travail et de configurations matérielles spécifiques. Les cœurs sont réglés dynamiquement pour garantir des performances optimales dans chaque situation, résolvant ainsi le besoin de longue date de régler manuellement les cœurs pour chaque instance de calcul.
Dans la plupart des cas, les ajustements automatiques basés sur l'intelligence artificielle de Wang et de ses collègues ont semblé efficaces. Selon ByteDance, les algorithmes d'apprentissage automatique peuvent optimiser dynamiquement le système en surveillant les performances de base en temps réel et améliorer l'efficacité en optimisant l'utilisation des ressources. Le système d'IA dispose également d'une interface conviviale, permettant aux utilisateurs ayant des connaissances techniques limitées de bénéficier d'un noyau plus utilisable. Dans le même temps, les utilisateurs avancés peuvent personnaliser les paramètres de réglage automatique.
ByteDance affirme que les algorithmes d'apprentissage automatique peuvent réduire l'utilisation de la mémoire d'une application de 30 % ou optimiser la latence du réseau HTTP sur les serveurs NGINX, entraînant une amélioration de 12 % des performances du réseau par rapport aux ajustements manuels. Dans les scénarios de cloud computing et de centre de données, ces améliorations peuvent conduire à des économies significatives et à des performances optimisées. Les développeurs admettent que le réglage automatique du noyau via l'apprentissage automatique ne fonctionnera pas dans tous les cas, mais s'attendent à ce qu'il devienne de plus en plus nécessaire.
Consultez la documentation pour en savoir plus :
https://lpc.events/event/17/contributions/1520/attachments/1152/2582/Linux%20Kernel%20Autotuning.pdf