Profils optimisés pour l'optimisation de la charge de travail des serveurs Linux
16 min de lecture - 9 juin 2026

Comment choisir, appliquer et personnaliser les profils accordés pour les GPU, les bases de données et les serveurs Linux à large bande passante, avec des exemples et des conseils de déploiement Ansible.
Profils optimisés pour l'optimisation de la charge de travail des serveurs
Les paramètres par défaut de Linux sont optimisés pour la compatibilité, et non pour les performances. Le démon tuned fournit des profils prédéfinis qui ajustent les régulateurs de CPU, les planificateurs d'E/S, les paramètres du noyau et les tampons réseau afin de s'adapter à une charge de travail spécifique. Cet article explique le fonctionnement des profils, lequel choisir pour les rôles de serveur courants, et comment créer et déployer des profils personnalisés sur un parc de serveurs.
Fonctionnement des profils optimisés
Un profil est un répertoire situé sous /usr/lib/tuned/profiles/ (système) ou /etc/tuned/profiles/ (custom) contenant un tuned.conf fichier. Le fichier de configuration regroupe les paramètres par plugin : [cpu], [disk], [sysctl], [vm], [bootloader], et ainsi de suite. Activez un profil et le démon tuned applique tous les paramètres en une seule fois, plutôt que d'exécuter des dizaines de sysctl et sysfs commandes manuellement.
Les profils peuvent hériter les uns des autres grâce à la include . Le throughput-performance profil, par exemple, peut servir de base à un profil de base de données personnalisé qui ne remplace que vm.swappiness le paramètre Transparent Huge Pages.
tuned fonctionne selon deux modes. L'optimisation statique applique le profil une seule fois lors de l'activation et n'intervient plus sur le système, ce qui est souhaitable sur les serveurs de production où la cohérence prime sur les économies d'énergie. L'optimisation dynamique surveille l'utilisation du disque, du réseau et de la charge en temps réel et ajuste les paramètres à la volée. Les profils de performances désactivent l'optimisation dynamique par défaut afin d'éviter la surcharge liée à la surveillance.
Choisir le profil adapté à votre charge de travail
tuned propose une douzaine de profils couvrant les charges de travail les plus courantes. Choisissez celui qui correspond à ce que fait réellement le serveur, plutôt que de laisser le balanced en place.
| Charge de travail | Profil | Fonction |
|---|---|---|
| Entraînement et inférence GPU | accelerator-performance | Verrouille le CPU dans des états C bas, maintenant la latence CPU-GPU sous 100 µs |
| Bases de données (Postgres, MySQL, Redis) | throughput-performance | Désactive les économies d'énergie, optimise les E/S disque et réseau, désactive les Transparent Huge Pages |
| Réseaux à haut débit (CDN, réplication, pipelines de données) | network-throughput | Augmente la taille des tampons réseau du noyau pour des transferts à haut débit soutenus |
| Services sensibles à la latence | network-latency ou latency-performance | Fixe le régulateur du processeur sur performance, désactive les états C profonds |
| Clusters HPC et de calcul | hpc-compute | Améliore les performances en termes de latence grâce à NUMA et à l'optimisation de la mémoire |
| Instances VPS (système d'exploitation invité) | virtual-guest | Réduit le niveau de swappiness, augmente la lecture anticipée du disque pour les E/S paravirtualisées |
| Hôtes d'hyperviseur KVM | virtual-host | Optimise la réécriture des pages sales pour les charges de travail des machines virtuelles |
| Mixte ou inconnu | balanced | Par défaut. Privilégie l'efficacité énergétique au détriment des performances |
Pour certains moteurs de base de données, tuned est également fourni postgresql, mssql, ainsi que oracle des profils qui vont plus loin que throughput-performance en ajustant les paramètres de la mémoire partagée et du planificateur du noyau pour ces moteurs.
Sur les serveurs à plusieurs sockets, la topologie NUMA est importante. L'accès à la mémoire d'un nœud distant peut être deux à trois fois plus lent que l'accès local. Pour les charges de travail où la latence est critique sur des machines à deux sockets, désactivez l'équilibrage NUMA automatique dans le profil et affectez manuellement les processus à des nœuds spécifiques.
Installation et application des profils
Installez tuned sur RHEL, Rocky, AlmaLinux ou Fedora :
dnf install tuned
systemctl enable --now tunedSur Debian et Ubuntu, le paquet s'appelle également tuned et s'installe via apt. Si power-profiles-daemon est déjà en cours d'exécution, masquez-le pour éviter les conflits :
systemctl mask --now power-profiles-daemonRépertoriez les profils disponibles, demandez à tuned ce qu'il recommande pour le matériel, appliquez un profil et vérifiez-le :
tuned-adm list
tuned-adm recommend
tuned-adm profile throughput-performance
tuned-adm verifyLe profil actif est stocké dans /etc/tuned/active_profile et persiste après les redémarrages. Pour supprimer entièrement le réglage et mesurer la valeur de référence, exécutez tuned-adm off.
Création d'un profil personnalisé pour l'IA, le ML et les charges de travail à haut débit
Lorsque les profils par défaut vous permettent d'atteindre 90 % de votre objectif, créez un profil personnalisé qui hérite du profil le plus proche et remplace les paramètres restants. Commencez par un répertoire et un fichier de configuration :
mkdir -p /etc/tuned/ai-gpu
cat > /etc/tuned/ai-gpu/tuned.conf <<'EOF'
[main]
summary=Custom profile for GPU training with high-bandwidth networking
include=accelerator-performance
[cpu]
governor=performance
[sysctl]
kernel.numa_balancing=0
net.core.rmem_max=268435456
net.core.wmem_max=268435456
net.ipv4.tcp_rmem=4096 87380 268435456
net.ipv4.tcp_wmem=4096 65536 268435456
[vm]
transparent_hugepages=never
[bootloader]
cmdline=hugepagesz=2M hugepages=16384 <a target="_blank" rel="noopener noreferrer" href="https://en.wikipedia.org/wiki/Input%E2%80%93output_memory_management_unit">iommu</a>=pt
EOF
tuned-adm profile ai-gpuLes choix clés ici :
numa_balancing=0empêche le noyau de migrer la mémoire entre les sockets pendant les sessions d'entraînement, une source courante de ralentissement sur les machines GPU à double socket.- Le
rmem_maxettcp_rmemaugmentent la limite maximale du tampon de socket à 256 Mo. Sur des interconnexions 25G, 40G ou 100G entre les nœuds d'entraînement, les tailles de tampon par défaut limitent le débit bien en dessous du débit de ligne. transparent_hugepages=neversupprime la gigue de latence causée par le THP pour les frameworks tels que PyTorch et TensorFlow qui allouent de grands tenseurs.iommu=ptmet l'IOMMU en mode passthrough, nécessaire pour le passthrough GPU et NIC, et réduit la surcharge sur le DMA bare-metal.
Toute valeur inférieure à [bootloader] nécessite un redémarrage. Après avoir activé le profil, exécutez tuned-adm verify pour confirmer que les paramètres d'exécution ont été appliqués, et vérifiez journalctl -u tuned s'il y a des erreurs. Effectuez un benchmark avant et après avec iostat -xz, numastatet l'outil de charge de travail pertinent (iperf3, fioou l'exécution réelle de l'entraînement).
Un compromis qu’il convient de préciser : la désactivation des mesures de sécurité du CPU permet de gagner environ 3 à 8 % sur les charges de travail GPU, mais coûte 15 à 30 % sur les charges de travail présentant des schémas d’appels système intensifs. Prenez votre décision en fonction du modèle de menace pour la machine. Au sein d’un cluster de formation dédié derrière un pare-feu, le calcul mathématique penche généralement en faveur de leur désactivation. Sur un hôte multi-locataires, laissez-les activées.
Gestion des profils sur un parc de serveurs
L'application manuelle de tuned n'est plus viable au-delà d'une poignée de serveurs. Ansible gère cela de manière efficace. Un seul playbook installe tuned, place les répertoires de profils personnalisés sous /etc/tuned/ via le template module, et applique le profil approprié à chaque groupe d'inventaire.
Mapper les profils aux rôles dans l'inventaire :
- Nœuds GPU et IA :
accelerator-performance, ou un profil personnalisé qui en hérite - Serveurs de base de données :
throughput-performanceou le profil spécifique au moteur - Nœuds CDN et périphériques générant un trafic à haut débit :
network-throughput - Serveurs API et Web derrière un équilibreur de charge :
network-latency - VPS et invités KVM :
virtual-guest - Hôtes d'hyperviseurs :
virtual-host
La dérive est le véritable problème opérationnel. Les modifications manuelles sysctl , les mises à jour de paquets qui introduisent de nouvelles valeurs par défaut, ou un autre outil de gestion de configuration qui interfère avec Tuned entraîneront tous des divergences entre les paramètres et ce que spécifie le profil. Planifiez une tâche Ansible pour exécuter tuned-adm active et tuned-adm verify sur cron et déclenchez une alerte en cas d'échec. Surveillez /var/log/tuned/tuned.log les lignes « Échec de la vérification ».
Conclusion
tuned élimine la plupart des approximations liées au réglage du noyau et de sysctl. Les paramètres par défaut sont suffisants pour une utilisation générale, et les profils spécifiques à la charge de travail, tels que accelerator-performance, throughput-performance, et network-throughput vous permettent d’atteindre un niveau d’optimisation quasi total sans avoir à écrire un seul fichier de configuration.
- Choisissez le profil par défaut le plus proche, exécutez
tuned-adm verify, puis effectuez un benchmark - Créez des profils personnalisés en héritant d'un profil standard et en ne modifiant que ce dont vous avez besoin
- Réfléchissez bien à l'équilibrage NUMA, aux pages géantes et à la taille des tampons réseau sur les machines équipées de GPU et à large bande passante
- Déployez avec Ansible et effectuez des audits réguliers pour détecter les dérives
Vous avez besoin d'une capacité bare-metal avec une marge de bande passante suffisante pour utiliser réellement ces paramètres ? Contactez FDC pour discuter de serveurs dédiés conçus pour les charges de travail à haut débit et les charges de travail GPU.

Profils optimisés pour l'optimisation de la charge de travail des serveurs Linux
Comment choisir, appliquer et personnaliser les profils accordés pour les GPU, les bases de données et les serveurs Linux à large bande passante, avec des exemples et des conseils de déploiement Ansible.
16 min de lecture - 9 juin 2026
Linux OOM Killer Tuning for VPS : A Practical Guide (en anglais)
12 min de lecture - 8 juin 2026