L'augmentation de la fréquence du minuteur Linux aura des avantages en termes de performances et d'optimisation

À un moment donné, beaucoup d’entre nous Nous avons osé jouer avec les gouverneurs Dans notre système, cela est fait afin d'obtenir des améliorations de performances ou pour un objectif particulier, comme la charge de travail, les applications, les jeux, etc.

Ce type de modifications, Ils ne sont généralement pas inclus dans les distributions générales Et on comprend pourquoi, puisque cela se traduit par une augmentation ou une diminution (selon le cas) des ressources de notre équipe.

Je mentionne cela, car récemment un Un ingénieur de Google a proposé de modifier la réglage par défaut de Minuterie du noyau Linux, augmentant son taux d’interruption de 250 Hz à 1000 Hz.

Ce changement impliquerait une fréquence plus élevée de changement de tâche et une réduction du quantum de temps dans le planificateur de tâches, ce quiet l’efficacité pourrait être améliorée dans certains scénarios. Actuellement, 250 Hz est considéré comme un équilibre entre les performances, la latence et la consommation d’énergie.

Motivation de la proposition

uno des principaux arguments en faveur de ce changement est le Optimisation des performances sur les appareils dotés d'écrans 120 Hz, de plus en plus courant sur les PC et les appareils mobiles. Avec le réglage actuel de 250 Hz, l’imprécision de la quantification temporelle représente environ la moitié du temps d’image, ce qui a un impact sur l’efficacité de l’allocation des ressources.

Par ailleurs, il a été observé que le mécanisme de mise à l'échelle dynamique de la tension et de la fréquence (DVFS) a tendance à adopter des stratégies de sélection de fréquence agressives pour éviter les ralentissements. Cela peut entraîner une consommation d’énergie inutile lorsqu’une tâche a déjà terminé son traitement, mais que le processeur continue de fonctionner à une fréquence plus élevée car son quantum de temps n’a pas encore expiré.

L'augmentation de la fréquence de changement de tâche permettrait :

  • Efficacité améliorée dans la gestion dynamique des fréquences (DVFS).
  • Répartition plus précise des temps du planificateur de tâches.
  • Augmentation de la fréquence de mise à jour des statistiques de charge du processeur.
  • Temps d'attente réduit pour les tâches en attente.
  • Arguments contre l’amendement

Pour sa part, Un autre ingénieur de Google a exprimé son désaccord avec le changement, en faisant valoir que Maintenir la fréquence de la minuterie à 250 Hz est particulièrement avantageux pour les appareils à faible consommation, tels que les cartes IoT et les appareils mobiles.

Selon son évaluation, L’augmentation de la fréquence à 1000 Hz pourrait entraîner une augmentation de la consommation d’énergie. Sur les appareils Android, par exemple, une augmentation allant jusqu’à 7 % de la consommation du processeur a été observée dans certaines situations.

En outre, Une fréquence de minuterie plus élevée impliquerait une réactivation plus fréquente du processeur. À 250 Hz, les temporisateurs programmés à t+1 ms, t+2 ms, t+3 ms et t+4 ms sont regroupés en un seul réveil, tandis qu'à 1000 XNUMX Hz, il y aurait quatre réveils individuels, ce qui pourrait augmenter la consommation d'énergie.

Résultats des tests de performance

À propos de l'affaire, le portail Phoronix a effectué une série de tests sur un PC avec un CPU AMD Ryzen 9 9950X pour évaluer l'impact du changement de fréquence. Les résultats ont été mitigés :

  • MMeilleures performances avec 1000 Hz en :
    Lama.cpp
    nginx
    SuperTuxKart
    Sélénium
    Temps de compilation du noyau
  • Meilleures performances à 250 Hz sur :
    Darktable
    PostgreSQL
    Non vaincu
    Xonotique
    Mixeur
    SVT-AV1
    RawTherapee

Quant à consommation d'énergie, les résultats ont été les suivants:

  • Réglage à 1000 Hz :
    Consommation moyenne : 144,2 W
    Consommation minimale : 0,18 W
    Consommation maximale : 202,13 W
  • Réglage à 250 Hz :
    Consommation moyenne : 144,37 W
    Consommation minimale : 0,07 W
    Consommation maximale : 202 W

Enfin, il convient de mentionner que l’augmentation du taux d’interruption du minuteur du noyau à 1000 XNUMX Hz offre des avantages dans certains cas d’utilisation, en particulier dans les applications qui nécessitent des changements de tâches plus fréquents et sur les appareils dotés d’écrans à taux de rafraîchissement élevé. Cependant, cette technologie présente également des inconvénients en termes de consommation d’énergie, notamment dans les appareils à faible consommation et dans les environnements où l’efficacité énergétique est une priorité.

Pour le moment, La proposition est toujours en débat au sein de la communauté et son adoption dépendra d’une analyse plus approfondie des impacts dans différents scénarios d’utilisation.