Récemment, la version 6.2 du noyau Linux a été publiée, qui vient avec une série de fonctionnalités assez bonnes, en plus d’ajouter des améliorations de compatibilité matérielle et surtout qu’il continue avec les améliorations de “Rust For Linux”, sans aucun doute une version temporaire qui ouvre de nombreuses fenêtres à diverses améliorations pour Linux 6.3 (Si vous voulez en savoir plus sur la sortie du noyau 6.2, vous pouvez consulter les détails dans cet article).
Pour ce qui sera la prochaine version du noyau Linux, diverses fonctionnalités sont en cours d’ajustement qui s’effectuent par le biais de confirmations et dont l’une des les caractéristiques importantes qui a été ajouté à Linux 6.3 est le nouvel outil rtla hwnoise.
rtla hwnoise (bruit matériel d’analyse Linux en temps réel) est un outil pour détecter et quantifier le bruit lié au matériel. Récupère le résumé périodique du tracker osnoise en cours d’exécution avec les interruptions désactivées.
En désactivant les interruptions et la planification des threads, seul le matériel non masquable et le bruit lié aux interruptions sont autorisés.
Selon la description faite par les mainteneurs de l’outil, ce dernier tpermet également des configurations de traceur de bruit et collecter la sortie du traceur. En résumé, rtla hwnoise offre des fonctionnalités similaires à osnoise (bruit du système d’exploitation) tout en affichant uniquement les interruptions non masquables (NMI) et le bruit lié au matériel.
En principe, le bruit matériel devrait être nul Linux. Cependant, Il s’avère que ce n’est pas toujours le cas. Dans le fonctionnement du système d’exploitation, on peut faire face à deux principales sources de bruit.
Bruit provenant des opérations du système d’exploitation et bruit lié au matériel. Dans le contexte du calcul haute performance (HPC), par exemple, le bruit du système d’exploitation (osnoise) fait référence aux interférences subies par une application en raison d’activités au sein du système d’exploitation. Dans le contexte de Linux, NMI, IRQ, SoftIRQ et tout autre thread système peuvent provoquer du bruit système. Dans quel cas,
Sous Linux, Bien qu’il puisse y en avoir d’autres Quatre principaux contextes d’exécution peuvent interférer avec une charge de travail : les interruptions non masquables (NMI), les interruptions masquables (IRQ), les softirqs (activités IRQ différées) et les threads. En plus de ces bruits liés au système, des charges liées au matériel peuvent également provoquer du bruit, par exemple via SMI.
C’est dans ce dernier cas que l’outil rtla hwnoise a été conçu. Pour mieux comprendre le fonctionnement de l’outil de mesure et de surveillance du bruit lié au matériel, il est recommandé de se tourner vers l’outil Linux osnoise, puisqu’il en est dérivé.
Sous Linux, il existe deux types d’outils pour mesurer le bruit du système d’exploitation : une basée sur la charge de travail et une basée sur le suivi. Les outils basés sur la charge de travail exécutent généralement des microbenchmarks avec une durée connue et mesurent la différence entre la durée prévue du microbenchmark et le temps réel nécessaire pour le traiter. Bien qu’ils soient efficaces pour définir la quantité de bruit du système d’exploitation qu’une charge de travail peut subir, les outils basés sur la charge de travail ne peuvent pas identifier les causes profondes du bruit du système d’exploitation.
Les méthodes basées sur la trace tirent parti des capacités de trace du noyau Linux pour identifier la cause du bruit du système d’exploitation. Cependant, ces méthodes basées sur les traces ne tiennent pas compte de la façon dont le bruit est perçu par les charges de travail. Et c’est pourquoi l’outil osnoise a été conçu. Il tire pleinement parti des méthodes basées sur la charge de travail et sur la trace, en montrant les causes profondes du bruit du système d’exploitation et en tenant compte de la façon dont le bruit est perçu par la charge de travail.
À côté d’osnoise, nous avons l’outil rtla osnoise, qui est une interface avec le traceur osnoise. le traqueur osnoise exécute une boucle dans le noyau mesurant le temps disponible. Il le fait avec préférence, softirq et IRQ activés, autorisant toutes les sources de bruit pendant l’exécution.
Avec rtla hwnoise, les utilisateurs et les développeurs qui se soucient de chaque microseconde volée par de fausses instructions envoyées par le matériel pourront mesurer avec précision ces bruits et prendre des décisions en conséquence, sachant que pour les opérations en temps réel, chaque microseconde gagnée par le processeur a de la valeur. .
Source : https://git.kernel.org