Il y a peut être des trucs a désactiver car le PC est censé être plus performant :
Pour optimiser la latence de ton PC sous LinuxCNC, il y a plusieurs réglages à faire, notamment dans le BIOS/UEFI et le système Linux. Voici une liste des principales optimisations :
- Désactiver certaines options dans le BIOS/UEFI
Désactiver l’Hyper-Threading (HT)
L’Hyper-Threading peut provoquer des pics de latence.
Désactive-le dans le BIOS si ton processeur le supporte.
Désactiver l’Intel Turbo Boost
Turbo Boost change dynamiquement la fréquence du CPU, ce qui peut causer de la latence.
Désactive-le pour garder une fréquence stable.
Désactiver les économies d’énergie CPU
Les modes d’économie d’énergie (C-States, SpeedStep) ralentissent la réactivité du CPU.
Désactive les C-States et SpeedStep dans le BIOS.
Activer « Max Performance »
Certaines cartes mères ont une option « Max Performance » ou « High Performance » dans les paramètres CPU.
Désactiver les périphériques inutiles
Si tu n’utilises pas certaines fonctionnalités, désactive-les pour réduire les interruptions système :
Carte son
Wi-Fi / Bluetooth
Ports USB inutilisés
- Optimisations sous Linux
Utiliser un noyau temps réel (PREEMPT-RT)
LinuxCNC fonctionne mieux avec un noyau en temps réel.
Si tu utilises la version officielle de LinuxCNC Debian, elle intègre déjà ce noyau.
Fixer la fréquence du CPU au maximum
Empêcher le processeur de changer dynamiquement de fréquence améliore la latence.
Vérifie les fréquences avec :
cat /sys/devices/system/cpu/cpu*/cpufreq/scaling_governor
Si tu vois ondemand ou powersave, change-le en performance :
echo performance | sudo tee /sys/devices/system/cpu/cpu*/cpufreq/scaling_governor
Pour rendre le changement permanent, ajoute cette ligne dans /etc/rc.local :
for cpu in /sys/devices/system/cpu/cpu*/cpufreq/scaling_governor; do
echo performance > $cpu
done
Désactiver les services inutiles
Certains services ne sont pas nécessaires pour LinuxCNC et peuvent être désactivés :
sudo systemctl disable --now cups
sudo systemctl disable --now avahi-daemon
sudo systemctl disable --now bluetooth
sudo systemctl disable --now ModemManager
Vérifier la latence du système
L’outil latency-test permet de mesurer la latence en temps réel.
latency-test
Astuce : bouge la souris et ouvre des fenêtres pendant le test pour voir si ça génère des pics de latence.
Utiliser l’IRQ Affinity
Linux gère les interruptions matérielles (IRQ) qui peuvent impacter la latence.
Vérifie quelles IRQ sont utilisées par ta carte parallèle :
cat /proc/interrupts
Pour assigner une IRQ à un seul cœur du CPU (exemple : CPU 3) :
echo 8 | sudo tee /proc/irq/XX/smp_affinity
(Remplace XX par le numéro d’IRQ de ta carte parallèle)